diff --git a/export_attachments_from_list_view/README.rst b/export_attachments_from_list_view/README.rst new file mode 100644 index 000000000..d796ec020 --- /dev/null +++ b/export_attachments_from_list_view/README.rst @@ -0,0 +1,48 @@ +.. image:: https://img.shields.io/badge/license-AGPL--3-blue.svg + :target: https://www.gnu.org/licenses/agpl-3.0-standalone.html + :alt: License: AGPL-3 + +Export Attachments From List View +================================== +The module can be used to quickly download attachments from the selected records. + +Configuration +============= +* No additional configurations needed + +Company +------- +* `Cybrosys Techno Solutions `__ + +License +------- +Affero General Public License v3.0 (AGPL v3) +(https://www.gnu.org/licenses/agpl-3.0-standalone.html) + +Credits +------- +* Developer : (V18) Mufeeda Shirin , + (V17) Mohammed Dilshad Tk, +Contact : odoo@cybrosys.com + +Contacts +-------- +* Mail Contact : odoo@cybrosys.com +* Website : https://cybrosys.com + +Bug Tracker +----------- +Bugs are tracked on GitHub Issues. In case of trouble, please check there if your issue has already been reported. + +Maintainer +========== +.. image:: https://cybrosys.com/images/logo.png + :target: https://cybrosys.com + +This module is maintained by Cybrosys Technologies. + +For support and more information, please visit `Our Website `__ + +Further information +=================== +HTML Description: ``__ diff --git a/export_attachments_from_list_view/__init__.py b/export_attachments_from_list_view/__init__.py new file mode 100644 index 000000000..720e90925 --- /dev/null +++ b/export_attachments_from_list_view/__init__.py @@ -0,0 +1,24 @@ +# -*- coding: utf-8 -*- +############################################################################### +# +# Cybrosys Technologies Pvt. Ltd. +# +# Copyright (C) 2025-TODAY Cybrosys Technologies() +# Author: Cybrosys Techno Solutions() +# +# You can modify it under the terms of the GNU AFFERO +# GENERAL PUBLIC LICENSE (AGPL v3), Version 3. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU AFFERO GENERAL PUBLIC LICENSE (AGPL v3) for more details. +# +# You should have received a copy of the GNU AFFERO GENERAL PUBLIC LICENSE +# (AGPL v3) along with this program. +# If not, see . +# +############################################################################### +from . import controllers +from . import models +from . import wizard diff --git a/export_attachments_from_list_view/__manifest__.py b/export_attachments_from_list_view/__manifest__.py new file mode 100644 index 000000000..483089ee5 --- /dev/null +++ b/export_attachments_from_list_view/__manifest__.py @@ -0,0 +1,48 @@ +# -*- coding: utf-8 -*- +############################################################################### +# +# Cybrosys Technologies Pvt. Ltd. +# +# Copyright (C) 2025-TODAY Cybrosys Technologies() +# Author: Cybrosys Techno Solutions() +# +# You can modify it under the terms of the GNU AFFERO +# GENERAL PUBLIC LICENSE (AGPL v3), Version 3. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU AFFERO GENERAL PUBLIC LICENSE (AGPL v3) for more details. +# +# You should have received a copy of the GNU AFFERO GENERAL PUBLIC LICENSE +# (AGPL v3) along with this program. +# If not, see . +# +############################################################################### +{ + 'name': 'Export Attachments From List View', + 'version': '18.0.1.0.0', + 'category': 'Document Management', + 'summary': 'The module used to download multiple record attachment easily', + 'description': 'When using dynamic functionality in this model,' + 'the module can be used to quickly download the documents ' + 'in multiple records. Documents related to documents and' + ' other attachments are attached to the selected records ' + 'that downloaded quickly.', + 'author': 'Cybrosys Techno Solutions', + 'company': 'Cybrosys Techno Solutions', + 'maintainer': 'Cybrosys Techno Solutions', + 'website': 'https://www.cybrosys.com', + 'depends': ['base', 'base_setup'], + 'data': [ + 'security/ir.model.access.csv', + 'views/export_attachment_views.xml', + 'views/res_config_settings_views.xml', + 'wizard/attachment_download_confirmation_views.xml', + ], + 'images': ['static/description/banner.jpg'], + 'license': 'AGPL-3', + 'installable': True, + 'auto_install': False, + 'application': False, +} diff --git a/export_attachments_from_list_view/controllers/__init__.py b/export_attachments_from_list_view/controllers/__init__.py new file mode 100644 index 000000000..df5dc2f30 --- /dev/null +++ b/export_attachments_from_list_view/controllers/__init__.py @@ -0,0 +1,22 @@ +# -*- coding: utf-8 -*- +############################################################################### +# +# Cybrosys Technologies Pvt. Ltd. +# +# Copyright (C) 2025-TODAY Cybrosys Technologies() +# Author: Cybrosys Techno Solutions() +# +# You can modify it under the terms of the GNU AFFERO +# GENERAL PUBLIC LICENSE (AGPL v3), Version 3. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU AFFERO GENERAL PUBLIC LICENSE (AGPL v3) for more details. +# +# You should have received a copy of the GNU AFFERO GENERAL PUBLIC LICENSE +# (AGPL v3) along with this program. +# If not, see . +# +############################################################################### +from . import export_attachments_from_list_view diff --git a/export_attachments_from_list_view/controllers/export_attachments_from_list_view.py b/export_attachments_from_list_view/controllers/export_attachments_from_list_view.py new file mode 100644 index 000000000..88ec83f1d --- /dev/null +++ b/export_attachments_from_list_view/controllers/export_attachments_from_list_view.py @@ -0,0 +1,67 @@ +# -*- coding: utf-8 -*- +############################################################################### +# +# Cybrosys Technologies Pvt. Ltd. +# +# Copyright (C) 2025-TODAY Cybrosys Technologies() +# Author: Cybrosys Techno Solutions() +# +# You can modify it under the terms of the GNU AFFERO +# GENERAL PUBLIC LICENSE (AGPL v3), Version 3. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU AFFERO GENERAL PUBLIC LICENSE (AGPL v3) for more details. +# +# You should have received a copy of the GNU AFFERO GENERAL PUBLIC LICENSE +# (AGPL v3) along with this program. +# If not, see . +# +############################################################################### +import logging + +try: + from BytesIO import BytesIO +except ImportError: + from io import BytesIO +import zipfile +from datetime import datetime +from odoo import http +from odoo.http import request +from odoo.http import content_disposition +import ast + +_logger = logging.getLogger(__name__) + + +class Binary(http.Controller): + """Attachment downloading binary class""" + + @http.route('/web/binary/download_document', type='http', + auth="public") + def download_document(self, tab_id): + """Download attachment method""" + new_tab = ast.literal_eval(tab_id) + attachment_ids = request.env['ir.attachment'].browse(new_tab) + file_dict = {} + for attachment_id in attachment_ids: + file_store = attachment_id.store_fname + if file_store: + file_name = attachment_id.name + file_path = attachment_id._full_path(file_store) + file_dict["%s:%s" % (file_store, file_name)] = dict( + path=file_path, name=file_name) + zip_filename = datetime.now() + zip_filename = "%s.zip" % zip_filename + bitIO = BytesIO() + zip_file = zipfile.ZipFile(bitIO, "w", zipfile.ZIP_DEFLATED) + for file_info in file_dict.values(): + zip_file.write(file_info["path"], file_info["name"]) + zip_file.close() + return request.make_response(bitIO.getvalue(), + headers=[('Content-Type', + 'application/x-zip-compressed'), + ('Content-Disposition', + content_disposition(zip_filename))] + ) diff --git a/export_attachments_from_list_view/doc/RELEASE_NOTES.md b/export_attachments_from_list_view/doc/RELEASE_NOTES.md new file mode 100644 index 000000000..0a35c318c --- /dev/null +++ b/export_attachments_from_list_view/doc/RELEASE_NOTES.md @@ -0,0 +1,7 @@ +## Module + +#### 11.09.2025 +#### Version 18.0.1.0.0 +#### ADD + +- Initial Commit For Export Attachments From List View. diff --git a/export_attachments_from_list_view/models/__init__.py b/export_attachments_from_list_view/models/__init__.py new file mode 100644 index 000000000..e14f0f4b9 --- /dev/null +++ b/export_attachments_from_list_view/models/__init__.py @@ -0,0 +1,22 @@ +# -*- coding: utf-8 -*- +############################################################################### +# +# Cybrosys Technologies Pvt. Ltd. +# +# Copyright (C) 2025-TODAY Cybrosys Technologies() +# Author: Cybrosys Techno Solutions() +# +# You can modify it under the terms of the GNU AFFERO +# GENERAL PUBLIC LICENSE (AGPL v3), Version 3. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU AFFERO GENERAL PUBLIC LICENSE (AGPL v3) for more details. +# +# You should have received a copy of the GNU AFFERO GENERAL PUBLIC LICENSE +# (AGPL v3) along with this program. +# If not, see . +# +############################################################################### +from . import export_attachment diff --git a/export_attachments_from_list_view/models/export_attachment.py b/export_attachments_from_list_view/models/export_attachment.py new file mode 100644 index 000000000..b8e646841 --- /dev/null +++ b/export_attachments_from_list_view/models/export_attachment.py @@ -0,0 +1,93 @@ +# -*- coding: utf-8 -*- +############################################################################### +# +# Cybrosys Technologies Pvt. Ltd. +# +# Copyright (C) 2025-TODAY Cybrosys Technologies() +# Author: Cybrosys Techno Solutions() +# +# You can modify it under the terms of the GNU AFFERO +# GENERAL PUBLIC LICENSE (AGPL v3), Version 3. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU AFFERO GENERAL PUBLIC LICENSE (AGPL v3) for more details. +# +# You should have received a copy of the GNU AFFERO GENERAL PUBLIC LICENSE +# (AGPL v3) along with this program. +# If not, see . +# +############################################################################### +from odoo import api, fields, models + + +class ExportAttachment(models.Model): + """Create an export attachment dynamic action""" + _name = 'export.attachment' + _description = 'Export Attachment' + _rec_name = 'action_name' + + action_name = fields.Char(string='Action Name', + help='Add the document export action name.', + required=True) + applied_model_id = fields.Many2one('ir.model', + string="Applies To", + help='Select the model in which you ' + 'want to apply this action.', + ) + act_window_id = fields.Many2one('ir.actions.act_window', + string="Act Window", readonly="True", + help='Select the window action that has been created', + copy=False) + enabled_value = fields.Boolean(string="Create Action", + help="Enabling and hiding the" + "Create Action button", default=True, + copy=False) + states = fields.Selection([('draft', 'Draft'), + ('running', 'Running'), ('cancel', 'Cancelled')], + string='State', help='State of the action', + default="draft", copy=False) + created_action_names = fields.Char(string="Created Action Names", + compute="_compute_created_action_names", + help='If the name is visible to the line' + ' its created the action. If its ' + 'not its deleted the action',) + + @api.depends('action_name') + def _compute_created_action_names(self): + """Computation of adding the action names""" + for attachments in self: + actions = self.env['ir.actions.act_window'].search( + [('name', '=', attachments.action_name)]) + attachments.created_action_names = ', '.join(actions.mapped('name')) + + def action_create(self): + """When clicking the Add Action button to crete the action in + appropriate model""" + self.enabled_value = False + self.states = 'running' + act_window_id = self.env['ir.actions.act_window'].create([{ + 'name': self.action_name, + 'res_model': 'attachment.download.confirmation', + 'type': 'ir.actions.act_window', + 'view_mode': 'form', + 'binding_model_id': self.env['ir.model']._get( + self.applied_model_id.model).id, + 'target': 'new', + 'view_id': + self.env.ref('export_attachments_from_list_view.' + 'attachment_download_confirmation_view_form').id, + 'binding_view_types': 'list', + }]) + self.act_window_id = act_window_id.id + + def action_unlink(self): + """ Remove the contextual actions created for the server actions. """ + self.states = 'cancel' + self.act_window_id.unlink() + self.enabled_value = True + return { + 'type': 'ir.actions.client', + 'tag': 'reload', + } diff --git a/export_attachments_from_list_view/security/ir.model.access.csv b/export_attachments_from_list_view/security/ir.model.access.csv new file mode 100644 index 000000000..6c9bde309 --- /dev/null +++ b/export_attachments_from_list_view/security/ir.model.access.csv @@ -0,0 +1,3 @@ +id,name,model_id/id,group_id/id,perm_read,perm_write,perm_create,perm_unlink +access_export_attachment_user,access.export.attachment.user,model_export_attachment,base.group_user,1,1,1,1 +access_confirmation_popup_user,access.confirmation.popup.user,model_attachment_download_confirmation,base.group_user,1,1,1,1 diff --git a/export_attachments_from_list_view/static/description/assets/cybro-icon.png b/export_attachments_from_list_view/static/description/assets/cybro-icon.png new file mode 100644 index 000000000..06e73e11d Binary files /dev/null and b/export_attachments_from_list_view/static/description/assets/cybro-icon.png differ diff --git a/export_attachments_from_list_view/static/description/assets/cybro-odoo.png b/export_attachments_from_list_view/static/description/assets/cybro-odoo.png new file mode 100644 index 000000000..ed02e07a4 Binary files /dev/null and b/export_attachments_from_list_view/static/description/assets/cybro-odoo.png differ diff --git a/export_attachments_from_list_view/static/description/assets/h2.png b/export_attachments_from_list_view/static/description/assets/h2.png new file mode 100644 index 000000000..0bfc4707d Binary files /dev/null and b/export_attachments_from_list_view/static/description/assets/h2.png differ diff --git a/export_attachments_from_list_view/static/description/assets/icons/arrows-repeat.svg b/export_attachments_from_list_view/static/description/assets/icons/arrows-repeat.svg new file mode 100644 index 000000000..1d7efabc5 --- /dev/null +++ b/export_attachments_from_list_view/static/description/assets/icons/arrows-repeat.svg @@ -0,0 +1,10 @@ + + + + + + + + + + diff --git a/export_attachments_from_list_view/static/description/assets/icons/banner-1.png b/export_attachments_from_list_view/static/description/assets/icons/banner-1.png new file mode 100644 index 000000000..c180db172 Binary files /dev/null and b/export_attachments_from_list_view/static/description/assets/icons/banner-1.png differ diff --git a/export_attachments_from_list_view/static/description/assets/icons/banner-2.svg b/export_attachments_from_list_view/static/description/assets/icons/banner-2.svg new file mode 100644 index 000000000..e606d97d9 --- /dev/null +++ b/export_attachments_from_list_view/static/description/assets/icons/banner-2.svg @@ -0,0 +1,73 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/export_attachments_from_list_view/static/description/assets/icons/banner-bg.png b/export_attachments_from_list_view/static/description/assets/icons/banner-bg.png new file mode 100644 index 000000000..a8238d3c0 Binary files /dev/null and b/export_attachments_from_list_view/static/description/assets/icons/banner-bg.png differ diff --git a/export_attachments_from_list_view/static/description/assets/icons/banner-bg.svg b/export_attachments_from_list_view/static/description/assets/icons/banner-bg.svg new file mode 100644 index 000000000..b1378103e --- /dev/null +++ b/export_attachments_from_list_view/static/description/assets/icons/banner-bg.svg @@ -0,0 +1,9 @@ + + + + + + + + + diff --git a/export_attachments_from_list_view/static/description/assets/icons/banner-call.svg b/export_attachments_from_list_view/static/description/assets/icons/banner-call.svg new file mode 100644 index 000000000..96c687e81 --- /dev/null +++ b/export_attachments_from_list_view/static/description/assets/icons/banner-call.svg @@ -0,0 +1,5 @@ + + + + + diff --git a/export_attachments_from_list_view/static/description/assets/icons/banner-mail.svg b/export_attachments_from_list_view/static/description/assets/icons/banner-mail.svg new file mode 100644 index 000000000..cbf0d158d --- /dev/null +++ b/export_attachments_from_list_view/static/description/assets/icons/banner-mail.svg @@ -0,0 +1,5 @@ + + + + + diff --git a/export_attachments_from_list_view/static/description/assets/icons/banner-pattern.svg b/export_attachments_from_list_view/static/description/assets/icons/banner-pattern.svg new file mode 100644 index 000000000..9c1c7e101 --- /dev/null +++ b/export_attachments_from_list_view/static/description/assets/icons/banner-pattern.svg @@ -0,0 +1,343 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/export_attachments_from_list_view/static/description/assets/icons/banner-promo.svg b/export_attachments_from_list_view/static/description/assets/icons/banner-promo.svg new file mode 100644 index 000000000..d52791b11 --- /dev/null +++ b/export_attachments_from_list_view/static/description/assets/icons/banner-promo.svg @@ -0,0 +1,147 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/export_attachments_from_list_view/static/description/assets/icons/blog-icon.png b/export_attachments_from_list_view/static/description/assets/icons/blog-icon.png new file mode 100644 index 000000000..ba4c7c366 Binary files /dev/null and b/export_attachments_from_list_view/static/description/assets/icons/blog-icon.png differ diff --git a/export_attachments_from_list_view/static/description/assets/icons/brand-pair.svg b/export_attachments_from_list_view/static/description/assets/icons/brand-pair.svg new file mode 100644 index 000000000..d8db7fc1e --- /dev/null +++ b/export_attachments_from_list_view/static/description/assets/icons/brand-pair.svg @@ -0,0 +1,41 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/export_attachments_from_list_view/static/description/assets/icons/check.png b/export_attachments_from_list_view/static/description/assets/icons/check.png new file mode 100644 index 000000000..c8e85f51d Binary files /dev/null and b/export_attachments_from_list_view/static/description/assets/icons/check.png differ diff --git a/export_attachments_from_list_view/static/description/assets/icons/chevron.png b/export_attachments_from_list_view/static/description/assets/icons/chevron.png new file mode 100644 index 000000000..2089293d6 Binary files /dev/null and b/export_attachments_from_list_view/static/description/assets/icons/chevron.png differ diff --git a/export_attachments_from_list_view/static/description/assets/icons/close-icon.svg b/export_attachments_from_list_view/static/description/assets/icons/close-icon.svg new file mode 100644 index 000000000..df8cce37a --- /dev/null +++ b/export_attachments_from_list_view/static/description/assets/icons/close-icon.svg @@ -0,0 +1,5 @@ + + + + + diff --git a/export_attachments_from_list_view/static/description/assets/icons/cogs.png b/export_attachments_from_list_view/static/description/assets/icons/cogs.png new file mode 100644 index 000000000..95d0bad62 Binary files /dev/null and b/export_attachments_from_list_view/static/description/assets/icons/cogs.png differ diff --git a/export_attachments_from_list_view/static/description/assets/icons/collabarate-icon.svg b/export_attachments_from_list_view/static/description/assets/icons/collabarate-icon.svg new file mode 100644 index 000000000..dd4e10518 --- /dev/null +++ b/export_attachments_from_list_view/static/description/assets/icons/collabarate-icon.svg @@ -0,0 +1,3 @@ + + + diff --git a/export_attachments_from_list_view/static/description/assets/icons/consultation.png b/export_attachments_from_list_view/static/description/assets/icons/consultation.png new file mode 100644 index 000000000..8319d4baa Binary files /dev/null and b/export_attachments_from_list_view/static/description/assets/icons/consultation.png differ diff --git a/export_attachments_from_list_view/static/description/assets/icons/copylink.svg b/export_attachments_from_list_view/static/description/assets/icons/copylink.svg new file mode 100644 index 000000000..3b67f60e0 --- /dev/null +++ b/export_attachments_from_list_view/static/description/assets/icons/copylink.svg @@ -0,0 +1,37 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/export_attachments_from_list_view/static/description/assets/icons/cybro-logo.png b/export_attachments_from_list_view/static/description/assets/icons/cybro-logo.png new file mode 100644 index 000000000..ff4b78220 Binary files /dev/null and b/export_attachments_from_list_view/static/description/assets/icons/cybro-logo.png differ diff --git a/export_attachments_from_list_view/static/description/assets/icons/down.svg b/export_attachments_from_list_view/static/description/assets/icons/down.svg new file mode 100644 index 000000000..f21c36271 --- /dev/null +++ b/export_attachments_from_list_view/static/description/assets/icons/down.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/export_attachments_from_list_view/static/description/assets/icons/ecom-black.png b/export_attachments_from_list_view/static/description/assets/icons/ecom-black.png new file mode 100644 index 000000000..a9385ff13 Binary files /dev/null and b/export_attachments_from_list_view/static/description/assets/icons/ecom-black.png differ diff --git a/export_attachments_from_list_view/static/description/assets/icons/education-black.png b/export_attachments_from_list_view/static/description/assets/icons/education-black.png new file mode 100644 index 000000000..3eb09b27b Binary files /dev/null and b/export_attachments_from_list_view/static/description/assets/icons/education-black.png differ diff --git a/export_attachments_from_list_view/static/description/assets/icons/faq.png b/export_attachments_from_list_view/static/description/assets/icons/faq.png new file mode 100644 index 000000000..4250b5b81 Binary files /dev/null and b/export_attachments_from_list_view/static/description/assets/icons/faq.png differ diff --git a/export_attachments_from_list_view/static/description/assets/icons/feature-icon.svg b/export_attachments_from_list_view/static/description/assets/icons/feature-icon.svg new file mode 100644 index 000000000..fa0ea6850 --- /dev/null +++ b/export_attachments_from_list_view/static/description/assets/icons/feature-icon.svg @@ -0,0 +1,10 @@ + + + + + + + + + + diff --git a/export_attachments_from_list_view/static/description/assets/icons/feature.png b/export_attachments_from_list_view/static/description/assets/icons/feature.png new file mode 100644 index 000000000..ac7a785c0 Binary files /dev/null and b/export_attachments_from_list_view/static/description/assets/icons/feature.png differ diff --git a/export_attachments_from_list_view/static/description/assets/icons/gear.svg b/export_attachments_from_list_view/static/description/assets/icons/gear.svg new file mode 100644 index 000000000..0cc66b6ea --- /dev/null +++ b/export_attachments_from_list_view/static/description/assets/icons/gear.svg @@ -0,0 +1,10 @@ + + + + + + + + + + diff --git a/export_attachments_from_list_view/static/description/assets/icons/hero.gif b/export_attachments_from_list_view/static/description/assets/icons/hero.gif new file mode 100644 index 000000000..380654dfe Binary files /dev/null and b/export_attachments_from_list_view/static/description/assets/icons/hero.gif differ diff --git a/export_attachments_from_list_view/static/description/assets/icons/hire-odoo.svg b/export_attachments_from_list_view/static/description/assets/icons/hire-odoo.svg new file mode 100644 index 000000000..e1ac089b0 --- /dev/null +++ b/export_attachments_from_list_view/static/description/assets/icons/hire-odoo.svg @@ -0,0 +1,12 @@ + + + + + + + + + + + + diff --git a/export_attachments_from_list_view/static/description/assets/icons/hotel-black.png b/export_attachments_from_list_view/static/description/assets/icons/hotel-black.png new file mode 100644 index 000000000..130f613be Binary files /dev/null and b/export_attachments_from_list_view/static/description/assets/icons/hotel-black.png differ diff --git a/export_attachments_from_list_view/static/description/assets/icons/license.png b/export_attachments_from_list_view/static/description/assets/icons/license.png new file mode 100644 index 000000000..a5869797e Binary files /dev/null and b/export_attachments_from_list_view/static/description/assets/icons/license.png differ diff --git a/export_attachments_from_list_view/static/description/assets/icons/life-ring-icon.svg b/export_attachments_from_list_view/static/description/assets/icons/life-ring-icon.svg new file mode 100644 index 000000000..3ae6e1d89 --- /dev/null +++ b/export_attachments_from_list_view/static/description/assets/icons/life-ring-icon.svg @@ -0,0 +1,13 @@ + + + + + + + + + + + + + diff --git a/export_attachments_from_list_view/static/description/assets/icons/lifebuoy.png b/export_attachments_from_list_view/static/description/assets/icons/lifebuoy.png new file mode 100644 index 000000000..658d56ccc Binary files /dev/null and b/export_attachments_from_list_view/static/description/assets/icons/lifebuoy.png differ diff --git a/export_attachments_from_list_view/static/description/assets/icons/logo.png b/export_attachments_from_list_view/static/description/assets/icons/logo.png new file mode 100644 index 000000000..478462d3e Binary files /dev/null and b/export_attachments_from_list_view/static/description/assets/icons/logo.png differ diff --git a/export_attachments_from_list_view/static/description/assets/icons/mail.svg b/export_attachments_from_list_view/static/description/assets/icons/mail.svg new file mode 100644 index 000000000..1eedde695 --- /dev/null +++ b/export_attachments_from_list_view/static/description/assets/icons/mail.svg @@ -0,0 +1,3 @@ + + + diff --git a/export_attachments_from_list_view/static/description/assets/icons/manufacturing-black.png b/export_attachments_from_list_view/static/description/assets/icons/manufacturing-black.png new file mode 100644 index 000000000..697eb0e9f Binary files /dev/null and b/export_attachments_from_list_view/static/description/assets/icons/manufacturing-black.png differ diff --git a/export_attachments_from_list_view/static/description/assets/icons/notes.png b/export_attachments_from_list_view/static/description/assets/icons/notes.png new file mode 100644 index 000000000..ee5e95404 Binary files /dev/null and b/export_attachments_from_list_view/static/description/assets/icons/notes.png differ diff --git a/export_attachments_from_list_view/static/description/assets/icons/notification icon.svg b/export_attachments_from_list_view/static/description/assets/icons/notification icon.svg new file mode 100644 index 000000000..053189973 --- /dev/null +++ b/export_attachments_from_list_view/static/description/assets/icons/notification icon.svg @@ -0,0 +1,10 @@ + + + + + + + + + + diff --git a/export_attachments_from_list_view/static/description/assets/icons/odoo-consultancy.svg b/export_attachments_from_list_view/static/description/assets/icons/odoo-consultancy.svg new file mode 100644 index 000000000..e05f65bde --- /dev/null +++ b/export_attachments_from_list_view/static/description/assets/icons/odoo-consultancy.svg @@ -0,0 +1,4 @@ + + + + diff --git a/export_attachments_from_list_view/static/description/assets/icons/odoo-licencing.svg b/export_attachments_from_list_view/static/description/assets/icons/odoo-licencing.svg new file mode 100644 index 000000000..2606c88b0 --- /dev/null +++ b/export_attachments_from_list_view/static/description/assets/icons/odoo-licencing.svg @@ -0,0 +1,3 @@ + + + diff --git a/export_attachments_from_list_view/static/description/assets/icons/odoo-logo.png b/export_attachments_from_list_view/static/description/assets/icons/odoo-logo.png new file mode 100644 index 000000000..0e4d0eb5a Binary files /dev/null and b/export_attachments_from_list_view/static/description/assets/icons/odoo-logo.png differ diff --git a/export_attachments_from_list_view/static/description/assets/icons/patter.svg b/export_attachments_from_list_view/static/description/assets/icons/patter.svg new file mode 100644 index 000000000..25c9c0a8f --- /dev/null +++ b/export_attachments_from_list_view/static/description/assets/icons/patter.svg @@ -0,0 +1,9 @@ + + + + + + + + + diff --git a/export_attachments_from_list_view/static/description/assets/icons/pattern1.png b/export_attachments_from_list_view/static/description/assets/icons/pattern1.png new file mode 100644 index 000000000..09ab0fb2d Binary files /dev/null and b/export_attachments_from_list_view/static/description/assets/icons/pattern1.png differ diff --git a/export_attachments_from_list_view/static/description/assets/icons/pos-black.png b/export_attachments_from_list_view/static/description/assets/icons/pos-black.png new file mode 100644 index 000000000..97c0f90c1 Binary files /dev/null and b/export_attachments_from_list_view/static/description/assets/icons/pos-black.png differ diff --git a/export_attachments_from_list_view/static/description/assets/icons/puzzle-piece-icon.svg b/export_attachments_from_list_view/static/description/assets/icons/puzzle-piece-icon.svg new file mode 100644 index 000000000..3e9ad9373 --- /dev/null +++ b/export_attachments_from_list_view/static/description/assets/icons/puzzle-piece-icon.svg @@ -0,0 +1,10 @@ + + + + + + + + + + diff --git a/export_attachments_from_list_view/static/description/assets/icons/puzzle.png b/export_attachments_from_list_view/static/description/assets/icons/puzzle.png new file mode 100644 index 000000000..65cf854e7 Binary files /dev/null and b/export_attachments_from_list_view/static/description/assets/icons/puzzle.png differ diff --git a/export_attachments_from_list_view/static/description/assets/icons/replace-icon.svg b/export_attachments_from_list_view/static/description/assets/icons/replace-icon.svg new file mode 100644 index 000000000..d0e3a7af1 --- /dev/null +++ b/export_attachments_from_list_view/static/description/assets/icons/replace-icon.svg @@ -0,0 +1,10 @@ + + + + + + + + + + diff --git a/export_attachments_from_list_view/static/description/assets/icons/restaurant-black.png b/export_attachments_from_list_view/static/description/assets/icons/restaurant-black.png new file mode 100644 index 000000000..4a35eb939 Binary files /dev/null and b/export_attachments_from_list_view/static/description/assets/icons/restaurant-black.png differ diff --git a/export_attachments_from_list_view/static/description/assets/icons/screenshot-main.png b/export_attachments_from_list_view/static/description/assets/icons/screenshot-main.png new file mode 100644 index 000000000..575f8e676 Binary files /dev/null and b/export_attachments_from_list_view/static/description/assets/icons/screenshot-main.png differ diff --git a/export_attachments_from_list_view/static/description/assets/icons/screenshot.png b/export_attachments_from_list_view/static/description/assets/icons/screenshot.png new file mode 100644 index 000000000..cef272529 Binary files /dev/null and b/export_attachments_from_list_view/static/description/assets/icons/screenshot.png differ diff --git a/export_attachments_from_list_view/static/description/assets/icons/service-black.png b/export_attachments_from_list_view/static/description/assets/icons/service-black.png new file mode 100644 index 000000000..301ab51cb Binary files /dev/null and b/export_attachments_from_list_view/static/description/assets/icons/service-black.png differ diff --git a/export_attachments_from_list_view/static/description/assets/icons/skype-fill.svg b/export_attachments_from_list_view/static/description/assets/icons/skype-fill.svg new file mode 100644 index 000000000..c17423639 --- /dev/null +++ b/export_attachments_from_list_view/static/description/assets/icons/skype-fill.svg @@ -0,0 +1,10 @@ + + + + + + + + + + diff --git a/export_attachments_from_list_view/static/description/assets/icons/skype.png b/export_attachments_from_list_view/static/description/assets/icons/skype.png new file mode 100644 index 000000000..51b409fb3 Binary files /dev/null and b/export_attachments_from_list_view/static/description/assets/icons/skype.png differ diff --git a/export_attachments_from_list_view/static/description/assets/icons/skype.svg b/export_attachments_from_list_view/static/description/assets/icons/skype.svg new file mode 100644 index 000000000..df3dad39b --- /dev/null +++ b/export_attachments_from_list_view/static/description/assets/icons/skype.svg @@ -0,0 +1,3 @@ + + + diff --git a/export_attachments_from_list_view/static/description/assets/icons/star-1.svg b/export_attachments_from_list_view/static/description/assets/icons/star-1.svg new file mode 100644 index 000000000..7e55ab162 --- /dev/null +++ b/export_attachments_from_list_view/static/description/assets/icons/star-1.svg @@ -0,0 +1,53 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/export_attachments_from_list_view/static/description/assets/icons/star-2.svg b/export_attachments_from_list_view/static/description/assets/icons/star-2.svg new file mode 100644 index 000000000..5ae9f507a --- /dev/null +++ b/export_attachments_from_list_view/static/description/assets/icons/star-2.svg @@ -0,0 +1,9 @@ + + + + + + + + + diff --git a/export_attachments_from_list_view/static/description/assets/icons/support.png b/export_attachments_from_list_view/static/description/assets/icons/support.png new file mode 100644 index 000000000..4f18b8b82 Binary files /dev/null and b/export_attachments_from_list_view/static/description/assets/icons/support.png differ diff --git a/export_attachments_from_list_view/static/description/assets/icons/test-1 - Copy.png b/export_attachments_from_list_view/static/description/assets/icons/test-1 - Copy.png new file mode 100644 index 000000000..f6a902663 Binary files /dev/null and b/export_attachments_from_list_view/static/description/assets/icons/test-1 - Copy.png differ diff --git a/export_attachments_from_list_view/static/description/assets/icons/test-1.png b/export_attachments_from_list_view/static/description/assets/icons/test-1.png new file mode 100644 index 000000000..0908add2b Binary files /dev/null and b/export_attachments_from_list_view/static/description/assets/icons/test-1.png differ diff --git a/export_attachments_from_list_view/static/description/assets/icons/test-2.png b/export_attachments_from_list_view/static/description/assets/icons/test-2.png new file mode 100644 index 000000000..4671fe91e Binary files /dev/null and b/export_attachments_from_list_view/static/description/assets/icons/test-2.png differ diff --git a/export_attachments_from_list_view/static/description/assets/icons/trading-black.png b/export_attachments_from_list_view/static/description/assets/icons/trading-black.png new file mode 100644 index 000000000..9398ba2f1 Binary files /dev/null and b/export_attachments_from_list_view/static/description/assets/icons/trading-black.png differ diff --git a/export_attachments_from_list_view/static/description/assets/icons/training.png b/export_attachments_from_list_view/static/description/assets/icons/training.png new file mode 100644 index 000000000..884ca024d Binary files /dev/null and b/export_attachments_from_list_view/static/description/assets/icons/training.png differ diff --git a/export_attachments_from_list_view/static/description/assets/icons/translate.svg b/export_attachments_from_list_view/static/description/assets/icons/translate.svg new file mode 100644 index 000000000..af9c8a1aa --- /dev/null +++ b/export_attachments_from_list_view/static/description/assets/icons/translate.svg @@ -0,0 +1,10 @@ + + + + + + + + + + diff --git a/export_attachments_from_list_view/static/description/assets/icons/update.png b/export_attachments_from_list_view/static/description/assets/icons/update.png new file mode 100644 index 000000000..ecbc5a01a Binary files /dev/null and b/export_attachments_from_list_view/static/description/assets/icons/update.png differ diff --git a/export_attachments_from_list_view/static/description/assets/icons/user.png b/export_attachments_from_list_view/static/description/assets/icons/user.png new file mode 100644 index 000000000..6ffb23d9f Binary files /dev/null and b/export_attachments_from_list_view/static/description/assets/icons/user.png differ diff --git a/export_attachments_from_list_view/static/description/assets/icons/video.png b/export_attachments_from_list_view/static/description/assets/icons/video.png new file mode 100644 index 000000000..576705b17 Binary files /dev/null and b/export_attachments_from_list_view/static/description/assets/icons/video.png differ diff --git a/export_attachments_from_list_view/static/description/assets/icons/whatsapp.png b/export_attachments_from_list_view/static/description/assets/icons/whatsapp.png new file mode 100644 index 000000000..d513a5356 Binary files /dev/null and b/export_attachments_from_list_view/static/description/assets/icons/whatsapp.png differ diff --git a/export_attachments_from_list_view/static/description/assets/icons/whatsapp.svg b/export_attachments_from_list_view/static/description/assets/icons/whatsapp.svg new file mode 100644 index 000000000..bba9ca395 --- /dev/null +++ b/export_attachments_from_list_view/static/description/assets/icons/whatsapp.svg @@ -0,0 +1,14 @@ + + + + + + + + + + \ No newline at end of file diff --git a/export_attachments_from_list_view/static/description/assets/icons/wrench-icon.svg b/export_attachments_from_list_view/static/description/assets/icons/wrench-icon.svg new file mode 100644 index 000000000..174b5a465 --- /dev/null +++ b/export_attachments_from_list_view/static/description/assets/icons/wrench-icon.svg @@ -0,0 +1,10 @@ + + + + + + + + + + diff --git a/export_attachments_from_list_view/static/description/assets/icons/wrench.png b/export_attachments_from_list_view/static/description/assets/icons/wrench.png new file mode 100644 index 000000000..6c04dea0f Binary files /dev/null and b/export_attachments_from_list_view/static/description/assets/icons/wrench.png differ diff --git a/export_attachments_from_list_view/static/description/assets/icons/youtube-icon.png b/export_attachments_from_list_view/static/description/assets/icons/youtube-icon.png new file mode 100644 index 000000000..f206560dc Binary files /dev/null and b/export_attachments_from_list_view/static/description/assets/icons/youtube-icon.png differ diff --git a/export_attachments_from_list_view/static/description/assets/misc/categories.png b/export_attachments_from_list_view/static/description/assets/misc/categories.png new file mode 100644 index 000000000..bedf1e0b1 Binary files /dev/null and b/export_attachments_from_list_view/static/description/assets/misc/categories.png differ diff --git a/export_attachments_from_list_view/static/description/assets/misc/check-box.png b/export_attachments_from_list_view/static/description/assets/misc/check-box.png new file mode 100644 index 000000000..42caf24b9 Binary files /dev/null and b/export_attachments_from_list_view/static/description/assets/misc/check-box.png differ diff --git a/export_attachments_from_list_view/static/description/assets/misc/compass.png b/export_attachments_from_list_view/static/description/assets/misc/compass.png new file mode 100644 index 000000000..d5fed8faa Binary files /dev/null and b/export_attachments_from_list_view/static/description/assets/misc/compass.png differ diff --git a/export_attachments_from_list_view/static/description/assets/misc/corporate.png b/export_attachments_from_list_view/static/description/assets/misc/corporate.png new file mode 100644 index 000000000..2eb13edbf Binary files /dev/null and b/export_attachments_from_list_view/static/description/assets/misc/corporate.png differ diff --git a/export_attachments_from_list_view/static/description/assets/misc/customer-support.png b/export_attachments_from_list_view/static/description/assets/misc/customer-support.png new file mode 100644 index 000000000..79efc72ed Binary files /dev/null and b/export_attachments_from_list_view/static/description/assets/misc/customer-support.png differ diff --git a/export_attachments_from_list_view/static/description/assets/misc/cybrosys-logo.png b/export_attachments_from_list_view/static/description/assets/misc/cybrosys-logo.png new file mode 100644 index 000000000..cc3cc0ccf Binary files /dev/null and b/export_attachments_from_list_view/static/description/assets/misc/cybrosys-logo.png differ diff --git a/export_attachments_from_list_view/static/description/assets/misc/features.png b/export_attachments_from_list_view/static/description/assets/misc/features.png new file mode 100644 index 000000000..b41769f77 Binary files /dev/null and b/export_attachments_from_list_view/static/description/assets/misc/features.png differ diff --git a/export_attachments_from_list_view/static/description/assets/misc/logo.png b/export_attachments_from_list_view/static/description/assets/misc/logo.png new file mode 100644 index 000000000..478462d3e Binary files /dev/null and b/export_attachments_from_list_view/static/description/assets/misc/logo.png differ diff --git a/export_attachments_from_list_view/static/description/assets/misc/pictures.png b/export_attachments_from_list_view/static/description/assets/misc/pictures.png new file mode 100644 index 000000000..56d255fe9 Binary files /dev/null and b/export_attachments_from_list_view/static/description/assets/misc/pictures.png differ diff --git a/export_attachments_from_list_view/static/description/assets/misc/pie-chart.png b/export_attachments_from_list_view/static/description/assets/misc/pie-chart.png new file mode 100644 index 000000000..426e05244 Binary files /dev/null and b/export_attachments_from_list_view/static/description/assets/misc/pie-chart.png differ diff --git a/export_attachments_from_list_view/static/description/assets/misc/right-arrow.png b/export_attachments_from_list_view/static/description/assets/misc/right-arrow.png new file mode 100644 index 000000000..730984a06 Binary files /dev/null and b/export_attachments_from_list_view/static/description/assets/misc/right-arrow.png differ diff --git a/export_attachments_from_list_view/static/description/assets/misc/star.png b/export_attachments_from_list_view/static/description/assets/misc/star.png new file mode 100644 index 000000000..2eb9ab29f Binary files /dev/null and b/export_attachments_from_list_view/static/description/assets/misc/star.png differ diff --git a/export_attachments_from_list_view/static/description/assets/misc/support.png b/export_attachments_from_list_view/static/description/assets/misc/support.png new file mode 100644 index 000000000..4f18b8b82 Binary files /dev/null and b/export_attachments_from_list_view/static/description/assets/misc/support.png differ diff --git a/export_attachments_from_list_view/static/description/assets/misc/whatsapp.png b/export_attachments_from_list_view/static/description/assets/misc/whatsapp.png new file mode 100644 index 000000000..d513a5356 Binary files /dev/null and b/export_attachments_from_list_view/static/description/assets/misc/whatsapp.png differ diff --git a/export_attachments_from_list_view/static/description/assets/modules/1.png b/export_attachments_from_list_view/static/description/assets/modules/1.png new file mode 100644 index 000000000..e0b09a5a0 Binary files /dev/null and b/export_attachments_from_list_view/static/description/assets/modules/1.png differ diff --git a/export_attachments_from_list_view/static/description/assets/modules/2.png b/export_attachments_from_list_view/static/description/assets/modules/2.png new file mode 100644 index 000000000..ecea68d98 Binary files /dev/null and b/export_attachments_from_list_view/static/description/assets/modules/2.png differ diff --git a/export_attachments_from_list_view/static/description/assets/modules/3.jpg b/export_attachments_from_list_view/static/description/assets/modules/3.jpg new file mode 100644 index 000000000..a83c58aac Binary files /dev/null and b/export_attachments_from_list_view/static/description/assets/modules/3.jpg differ diff --git a/export_attachments_from_list_view/static/description/assets/modules/4.jpg b/export_attachments_from_list_view/static/description/assets/modules/4.jpg new file mode 100644 index 000000000..31a56b08c Binary files /dev/null and b/export_attachments_from_list_view/static/description/assets/modules/4.jpg differ diff --git a/export_attachments_from_list_view/static/description/assets/modules/5.jpg b/export_attachments_from_list_view/static/description/assets/modules/5.jpg new file mode 100644 index 000000000..3b40aa4e4 Binary files /dev/null and b/export_attachments_from_list_view/static/description/assets/modules/5.jpg differ diff --git a/export_attachments_from_list_view/static/description/assets/modules/6.jpg b/export_attachments_from_list_view/static/description/assets/modules/6.jpg new file mode 100644 index 000000000..5d071f8ae Binary files /dev/null and b/export_attachments_from_list_view/static/description/assets/modules/6.jpg differ diff --git a/export_attachments_from_list_view/static/description/assets/modules/budget_image.png b/export_attachments_from_list_view/static/description/assets/modules/budget_image.png new file mode 100644 index 000000000..b50130c7d Binary files /dev/null and b/export_attachments_from_list_view/static/description/assets/modules/budget_image.png differ diff --git a/export_attachments_from_list_view/static/description/assets/modules/credit_image.png b/export_attachments_from_list_view/static/description/assets/modules/credit_image.png new file mode 100644 index 000000000..3ad04ecfd Binary files /dev/null and b/export_attachments_from_list_view/static/description/assets/modules/credit_image.png differ diff --git a/export_attachments_from_list_view/static/description/assets/modules/employee_image.png b/export_attachments_from_list_view/static/description/assets/modules/employee_image.png new file mode 100644 index 000000000..30ad58232 Binary files /dev/null and b/export_attachments_from_list_view/static/description/assets/modules/employee_image.png differ diff --git a/export_attachments_from_list_view/static/description/assets/modules/export_image.png b/export_attachments_from_list_view/static/description/assets/modules/export_image.png new file mode 100644 index 000000000..492980ad0 Binary files /dev/null and b/export_attachments_from_list_view/static/description/assets/modules/export_image.png differ diff --git a/export_attachments_from_list_view/static/description/assets/modules/gantt_image.png b/export_attachments_from_list_view/static/description/assets/modules/gantt_image.png new file mode 100644 index 000000000..1ae7cfe3b Binary files /dev/null and b/export_attachments_from_list_view/static/description/assets/modules/gantt_image.png differ diff --git a/export_attachments_from_list_view/static/description/assets/modules/quotation_image.png b/export_attachments_from_list_view/static/description/assets/modules/quotation_image.png new file mode 100644 index 000000000..499b1a72f Binary files /dev/null and b/export_attachments_from_list_view/static/description/assets/modules/quotation_image.png differ diff --git a/export_attachments_from_list_view/static/description/assets/screenshots/1.png b/export_attachments_from_list_view/static/description/assets/screenshots/1.png new file mode 100644 index 000000000..b5fb84b6e Binary files /dev/null and b/export_attachments_from_list_view/static/description/assets/screenshots/1.png differ diff --git a/export_attachments_from_list_view/static/description/assets/screenshots/2.png b/export_attachments_from_list_view/static/description/assets/screenshots/2.png new file mode 100644 index 000000000..d2be8c326 Binary files /dev/null and b/export_attachments_from_list_view/static/description/assets/screenshots/2.png differ diff --git a/export_attachments_from_list_view/static/description/assets/screenshots/3.png b/export_attachments_from_list_view/static/description/assets/screenshots/3.png new file mode 100644 index 000000000..8f990a1cd Binary files /dev/null and b/export_attachments_from_list_view/static/description/assets/screenshots/3.png differ diff --git a/export_attachments_from_list_view/static/description/assets/screenshots/4.png b/export_attachments_from_list_view/static/description/assets/screenshots/4.png new file mode 100644 index 000000000..6178fbd3e Binary files /dev/null and b/export_attachments_from_list_view/static/description/assets/screenshots/4.png differ diff --git a/export_attachments_from_list_view/static/description/assets/screenshots/5.png b/export_attachments_from_list_view/static/description/assets/screenshots/5.png new file mode 100644 index 000000000..0f2640b1c Binary files /dev/null and b/export_attachments_from_list_view/static/description/assets/screenshots/5.png differ diff --git a/export_attachments_from_list_view/static/description/assets/screenshots/6.png b/export_attachments_from_list_view/static/description/assets/screenshots/6.png new file mode 100644 index 000000000..b8e5faf17 Binary files /dev/null and b/export_attachments_from_list_view/static/description/assets/screenshots/6.png differ diff --git a/export_attachments_from_list_view/static/description/assets/screenshots/7.png b/export_attachments_from_list_view/static/description/assets/screenshots/7.png new file mode 100644 index 000000000..f83b353ff Binary files /dev/null and b/export_attachments_from_list_view/static/description/assets/screenshots/7.png differ diff --git a/export_attachments_from_list_view/static/description/assets/screenshots/8.png b/export_attachments_from_list_view/static/description/assets/screenshots/8.png new file mode 100644 index 000000000..4e53b5b69 Binary files /dev/null and b/export_attachments_from_list_view/static/description/assets/screenshots/8.png differ diff --git a/export_attachments_from_list_view/static/description/assets/screenshots/9.png b/export_attachments_from_list_view/static/description/assets/screenshots/9.png new file mode 100644 index 000000000..32b492ffb Binary files /dev/null and b/export_attachments_from_list_view/static/description/assets/screenshots/9.png differ diff --git a/export_attachments_from_list_view/static/description/assets/y18.jpg b/export_attachments_from_list_view/static/description/assets/y18.jpg new file mode 100644 index 000000000..eea1714f2 Binary files /dev/null and b/export_attachments_from_list_view/static/description/assets/y18.jpg differ diff --git a/export_attachments_from_list_view/static/description/banner.jpg b/export_attachments_from_list_view/static/description/banner.jpg new file mode 100644 index 000000000..91cb7d81f Binary files /dev/null and b/export_attachments_from_list_view/static/description/banner.jpg differ diff --git a/export_attachments_from_list_view/static/description/hero.gif b/export_attachments_from_list_view/static/description/hero.gif new file mode 100644 index 000000000..f6d226da9 Binary files /dev/null and b/export_attachments_from_list_view/static/description/hero.gif differ diff --git a/export_attachments_from_list_view/static/description/icon.png b/export_attachments_from_list_view/static/description/icon.png new file mode 100644 index 000000000..b61958b97 Binary files /dev/null and b/export_attachments_from_list_view/static/description/icon.png differ diff --git a/export_attachments_from_list_view/static/description/index.html b/export_attachments_from_list_view/static/description/index.html new file mode 100644 index 000000000..30205f946 --- /dev/null +++ b/export_attachments_from_list_view/static/description/index.html @@ -0,0 +1,1248 @@ + + + + + + Export Attachments From List View + + + + + + + + + + +
+
+ + + +
+
+
+
+
+
+
+ Supports: +
+ Community +
+
+ Enterprise +
+
+ Odoo.sh +
+
+
+
+
+ Availability: +
+ On Premise +
+
+ Odoo.sh +
+
+ Odoo Online +
+
+
+
+
+
+
+ +
+
+
+
+

+ Can Export Attachment from List View in the Whole Odoo Model by Using Dynamic Actions +

+

Export Attachments From List View +

+
+
+ +
+ + + + + +
+ +
+
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+
+ Export Attachments From List View +

+ Are you ready to make your business more + organized? +
Improve now! +

+ +
+
+ +
+
+
+ + + + +
+
+
+

Key Highlights

+
+
+
+
+ +
+
+ Download the documents in a single click +
+

+ You can download the documents in multiple records in a single click. +

+
+
+
+
+
+ +
+
+ Dynamic Action +
+

+ You can apply Dynamic Action in the particular models +

+
+
+
+
+
+ +
+
+ ZIP Format +
+

+ You can download all Attachment in zip format +

+
+
+
+
+
+ +
+
+ Add Action in multiple models +
+

+ You can add this action in different models in odoo. +

+
+
+
+
+ + + +
+
+ +
+
+
+
+ acc_bg +
+ +
+
+
+
+

+ Configuration + Settings +

+
+
+

+ Go to Settings, Under the Companies session we can see the Dynamic Action Export Attachment From List View link to create the action. +

+
+
+
+ +
+
+
+
+
+
+
+
+
+

+ Action + Creation +

+
+
+

+ Add an action name and select the model in which you + want to apply. After that, press "Create Action" to + add this action to the model. +

+
+
+
+ +
+
+
+
+
+
+
+
+
+

+ After + Action Creation +

+
+
+

+ After Action creation, the state is changed to 'Running'. + If you want to remove the Action, just click the "Remove + Action" button to delete the Action. +

+
+
+
+ +
+
+
+
+
+
+
+
+
+

+ After + Deleting Action +

+
+
+

+ After clicking "Remove Action" button the action + removed and the state changed to the 'Cancelled'. +

+
+
+
+ +
+
+
+
+
+
+
+
+
+

+ Attachments + +

+
+
+

+ Add attachments. +

+
+
+
+ + +
+
+
+
+
+
+
+
+
+

+ Action + +

+
+
+

+ Select the records and clicking the action for downloading attachment. +

+
+
+
+ +
+
+
+
+
+
+
+
+
+

+ Confirmation Popup Wizard +

+
+
+

+ After clicking the action it show the popup message to confirm the download. +

+
+
+
+ +
+
+
+
+
+
+
+
+
+

+ Attachment + Downloaded +

+
+
+

+ Here we can see the downloaded attachments in zip format. +

+
+
+
+ +
+
+
+
+
+
+
+
+ +
+
+
+
+ +
+

+ Import CSV File Format.

+
+ +
+
+
+
+
+
+ +
+

+ Import XLSX File Format.

+
+ +
+
+
+
+
+
+ +
+

+ Import OFX File Format.

+
+ +
+
+
+
+
+
+ +
+

+ Import QIF File Format.

+
+ +
+
+
+
+ +
+
+
+
+
+ +
+ +
+ +
+

+ This module allows users to quickly download attachments related to multiple + records directly from the list view. Instead of downloading each record’s + attachment individually, you can select multiple records and export + all their attachments at once. +

+
+
+ +
+ +
+

+ The attachments are downloaded as a ZIP file, which contains all the + selected records’ attachments (PDF, images, documents, etc.) + bundled together for easy access. +

+
+
+
+ +
+
+
+
+
+ +
+
+

+ Latest Release 18.0.1.0.0 +

+ + 11th September, 2025 + +
+
+
+
+
+ Add +
+
+
+
    +
  • + Initial Commit +
  • + +
+
+
+
+
+
+
+
+ +
+
+
+ + + + + + +
+

+ Our Services

+ +
+ +
+
+ .... +
+
+ +
+ + +
+ + + + + + + diff --git a/export_attachments_from_list_view/views/export_attachment_views.xml b/export_attachments_from_list_view/views/export_attachment_views.xml new file mode 100644 index 000000000..84cfe36d7 --- /dev/null +++ b/export_attachments_from_list_view/views/export_attachment_views.xml @@ -0,0 +1,57 @@ + + + + + Export Attachment + ir.actions.act_window + export.attachment + list,form + +

+ Click to add the followers dynamic action +

+
+
+ + + export.attachment.view.form + export.attachment + +
+
+
+ + + + + + + + + + +
+
+
+ + + export.attachment.view.list + export.attachment + + + + + + + + +
diff --git a/export_attachments_from_list_view/views/res_config_settings_views.xml b/export_attachments_from_list_view/views/res_config_settings_views.xml new file mode 100644 index 000000000..eccc44f8e --- /dev/null +++ b/export_attachments_from_list_view/views/res_config_settings_views.xml @@ -0,0 +1,33 @@ + + + + + res.config.settings.view.form.inherit.export.attachments.from.list.view + res.config.settings + + + +
+
+
+
+
+ Create a Dynamic Action +
+
+
+
+
+
+ + + + diff --git a/export_attachments_from_list_view/wizard/__init__.py b/export_attachments_from_list_view/wizard/__init__.py new file mode 100644 index 000000000..df84cf611 --- /dev/null +++ b/export_attachments_from_list_view/wizard/__init__.py @@ -0,0 +1,22 @@ +# -*- coding: utf-8 -*- +############################################################################### +# +# Cybrosys Technologies Pvt. Ltd. +# +# Copyright (C) 2025-TODAY Cybrosys Technologies() +# Author: Cybrosys Techno Solutions() +# +# You can modify it under the terms of the GNU AFFERO +# GENERAL PUBLIC LICENSE (AGPL v3), Version 3. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU AFFERO GENERAL PUBLIC LICENSE (AGPL v3) for more details. +# +# You should have received a copy of the GNU AFFERO GENERAL PUBLIC LICENSE +# (AGPL v3) along with this program. +# If not, see . +# +############################################################################### +from . import attachment_download_confirmation diff --git a/export_attachments_from_list_view/wizard/attachment_download_confirmation.py b/export_attachments_from_list_view/wizard/attachment_download_confirmation.py new file mode 100644 index 000000000..2cf62105e --- /dev/null +++ b/export_attachments_from_list_view/wizard/attachment_download_confirmation.py @@ -0,0 +1,49 @@ +# -*- coding: utf-8 -*- +############################################################################### +# +# Cybrosys Technologies Pvt. Ltd. +# +# Copyright (C) 2025-TODAY Cybrosys Technologies() +# Author: Cybrosys Techno Solutions() +# +# You can modify it under the terms of the GNU AFFERO +# GENERAL PUBLIC LICENSE (AGPL v3), Version 3. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU AFFERO GENERAL PUBLIC LICENSE (AGPL v3) for more details. +# +# You should have received a copy of the GNU AFFERO GENERAL PUBLIC LICENSE +# (AGPL v3) along with this program. +# If not, see . +# +############################################################################### +from odoo import models +from odoo.exceptions import ValidationError + + +class AttachmentDownloadConfirmation(models.TransientModel): + """It displays a confirmation user input popup regardless of the attachment. + download or not.""" + _name = 'attachment.download.confirmation' + _description = 'Confirmation Popup' + + def action_download_attachment(self): + """Method to Download the attachment""" + record_ids = self.env.context.get('active_ids', []) + record_model = self.env.context.get('active_model') + attachments = self.env['ir.attachment'].search([ + ('res_model', '=', record_model), + ('res_id', '=', record_ids)]) + if not attachments: + raise ValidationError("No attachments found in the selected " + "records.") + else: + url = '/web/binary/download_document?tab_id=%s' % attachments.ids + return { + 'type': 'ir.actions.act_url', + 'url': url, + 'target': 'new', + 'close': True, + } diff --git a/export_attachments_from_list_view/wizard/attachment_download_confirmation_views.xml b/export_attachments_from_list_view/wizard/attachment_download_confirmation_views.xml new file mode 100644 index 000000000..febba4632 --- /dev/null +++ b/export_attachments_from_list_view/wizard/attachment_download_confirmation_views.xml @@ -0,0 +1,20 @@ + + + + + attachment.download.confirmation.view.form + attachment.download.confirmation + +
+

Are you sure you want to download all the attachments?

+ +
+
+
+