From c9719b467e28cfcaa585890c574e8c93833d5aeb Mon Sep 17 00:00:00 2001 From: vancouver Date: Mon, 14 Sep 2026 17:38:16 +0200 Subject: [PATCH] [18.0][IMP] web_responsive: add opt-in setting for automatic PDF invoice preview opening --- web_responsive/README.rst | 51 ++++--- web_responsive/__manifest__.py | 2 +- web_responsive/i18n/de.po | 131 ++++-------------- web_responsive/i18n/web_responsive.pot | 19 +++ web_responsive/models/ir_http.py | 1 + web_responsive/models/res_users.py | 7 + web_responsive/readme/CONTRIBUTORS.md | 2 + web_responsive/readme/DESCRIPTION.md | 7 + web_responsive/readme/USAGE.md | 10 ++ web_responsive/static/description/index.html | 74 ++++++---- .../static/img/auto_open_invoice_preview.png | Bin 0 -> 85631 bytes .../components/file_viewer/auto_open.esm.js | 77 ++++++++++ web_responsive/views/res_users_views.xml | 21 +++ 13 files changed, 251 insertions(+), 151 deletions(-) create mode 100644 web_responsive/static/img/auto_open_invoice_preview.png create mode 100644 web_responsive/static/src/components/file_viewer/auto_open.esm.js diff --git a/web_responsive/README.rst b/web_responsive/README.rst index 69dc22b93f86..452194172d88 100644 --- a/web_responsive/README.rst +++ b/web_responsive/README.rst @@ -1,7 +1,3 @@ -.. image:: https://odoo-community.org/readme-banner-image - :target: https://odoo-community.org/get-involved?utm_source=readme - :alt: Odoo Community Association - ============== Web Responsive ============== @@ -17,7 +13,7 @@ Web Responsive .. |badge1| image:: https://img.shields.io/badge/maturity-Production%2FStable-green.png :target: https://odoo-community.org/page/development-status :alt: Production/Stable -.. |badge2| image:: https://img.shields.io/badge/license-LGPL--3-blue.png +.. |badge2| image:: https://img.shields.io/badge/licence-LGPL--3-blue.png :target: http://www.gnu.org/licenses/lgpl-3.0-standalone.html :alt: License: LGPL-3 .. |badge3| image:: https://img.shields.io/badge/github-OCA%2Fweb-lightgray.png?logo=github @@ -62,16 +58,24 @@ This module adds responsiveness to web backend. |image5| +- Optionally, when opening an invoice (account.move), its most recent + PDF attachment is automatically displayed in the side document viewer. + Enable \*\* File Viewer / Auto-open Invoice Preview*\* on the user's + *Preferences* tab (*Settings -> Users -> Companies -> Users*), per + user. + + |image6| + **Features for mobile**: \* View type picker dropdown displays comfortably - Control panel buttons use icons to save space. - |image6| + |image7| - Followers and send button is displayed on mobile. Avatar is hidden. - |image7| + |image8| - Big inputs on form in edit mode @@ -83,23 +87,23 @@ comfortably be more intuitive or accessible by fingers of one hand. F.x. Alt + S for Save - |image8| + |image9| - Autofocus on search menu box when opening the app menu - |image9| + |image10| - When the chatter is on the side part, the document viewer fills that part for side-by-side reading instead of full screen. You can still put it on full width preview clicking on the new maximize button. - |image10| + |image11| - When the user chooses to send a public message the color of the composer is different from the one when the message is an internal log. - |image11| + |image12| .. |image| image:: https://raw.githubusercontent.com/OCA/web/18.0/web_responsive/static/img/redirecthome.gif .. |image1| image:: https://raw.githubusercontent.com/OCA/web/18.0/web_responsive/static/img/appmenu.gif @@ -107,12 +111,13 @@ comfortably .. |image3| image:: https://raw.githubusercontent.com/OCA/web/18.0/web_responsive/static/img/listview.gif .. |image4| image:: https://raw.githubusercontent.com/OCA/web/18.0/web_responsive/static/img/formview.gif .. |image5| image:: https://raw.githubusercontent.com/OCA/web/18.0/web_responsive/static/img/listview.gif -.. |image6| image:: https://raw.githubusercontent.com/OCA/web/18.0/web_responsive/static/img/form_buttons.gif -.. |image7| image:: https://raw.githubusercontent.com/OCA/web/18.0/web_responsive/static/img/chatter.png -.. |image8| image:: https://raw.githubusercontent.com/OCA/web/18.0/web_responsive/static/img/shortcuts.gif -.. |image9| image:: https://raw.githubusercontent.com/OCA/web/18.0/web_responsive/static/img/appsearch.gif -.. |image10| image:: https://raw.githubusercontent.com/OCA/web/18.0/web_responsive/static/img/document_viewer.gif -.. |image11| image:: https://raw.githubusercontent.com/OCA/web/18.0/web_responsive/static/img/chatter-colors.png +.. |image6| image:: https://raw.githubusercontent.com/OCA/web/18.0/web_responsive/static/img/auto_open_invoice_preview.png +.. |image7| image:: https://raw.githubusercontent.com/OCA/web/18.0/web_responsive/static/img/form_buttons.gif +.. |image8| image:: https://raw.githubusercontent.com/OCA/web/18.0/web_responsive/static/img/chatter.png +.. |image9| image:: https://raw.githubusercontent.com/OCA/web/18.0/web_responsive/static/img/shortcuts.gif +.. |image10| image:: https://raw.githubusercontent.com/OCA/web/18.0/web_responsive/static/img/appsearch.gif +.. |image11| image:: https://raw.githubusercontent.com/OCA/web/18.0/web_responsive/static/img/document_viewer.gif +.. |image12| image:: https://raw.githubusercontent.com/OCA/web/18.0/web_responsive/static/img/chatter-colors.png **Table of contents** @@ -128,6 +133,16 @@ The following keyboard shortcuts are implemented: - Choose app result - ``Enter`` - ``Esc`` to close app drawer +Auto-open invoice preview +------------------------- + +Enable *Auto-open Invoice Preview* in your user preferences (*Your +Profile → Preferences*). When enabled, opening an invoice +(``account.move``) automatically shows its most recent PDF attachment in +the file viewer on the side of the form. The setting is per user and +takes effect on the next invoice you open. If an invoice has several PDF +attachments, the viewer navigation cycles through all of them. + Known issues / Roadmap ====================== @@ -185,6 +200,8 @@ Contributors - Mohamed Alkobrosli +- Khanh Bui + Maintainers ----------- diff --git a/web_responsive/__manifest__.py b/web_responsive/__manifest__.py index b7860572a48a..7eb73306d951 100644 --- a/web_responsive/__manifest__.py +++ b/web_responsive/__manifest__.py @@ -44,8 +44,8 @@ "/web_responsive/static/src/components/menu_fuse_searchbar/*", "/web_responsive/static/src/components/menu_searchbar/*", "/web_responsive/static/src/components/hotkey/*", - "/web_responsive/static/src/components/file_viewer/*", "/web_responsive/static/src/components/chatter/*", + "/web_responsive/static/src/components/file_viewer/*", "/web_responsive/static/src/components/control_panel/*", "/web_responsive/static/src/components/command_palette/*", "/web_responsive/static/src/views/form/*", diff --git a/web_responsive/i18n/de.po b/web_responsive/i18n/de.po index 481e708f052e..14e5bdc669d4 100644 --- a/web_responsive/i18n/de.po +++ b/web_responsive/i18n/de.po @@ -1,35 +1,23 @@ # Translation of Odoo Server. # This file contains the translation of the following modules: -# * web_responsive +# * web_responsive # -# Translators: -# Niki Waibel , 2017 msgid "" msgstr "" -"Project-Id-Version: Odoo Server 10.0\n" +"Project-Id-Version: Odoo Server 18.0\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2017-02-03 01:37+0000\n" -"PO-Revision-Date: 2023-06-20 11:09+0000\n" -"Last-Translator: Nils Coenen \n" -"Language-Team: German (https://www.transifex.com/oca/teams/23907/de/)\n" -"Language: de\n" +"POT-Creation-Date: 2026-09-15 08:54+0000\n" +"PO-Revision-Date: 2026-09-15 08:54+0000\n" +"Last-Translator: \n" +"Language-Team: \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: \n" -"Plural-Forms: nplurals=2; plural=n != 1;\n" -"X-Generator: Weblate 4.17\n" - -#. module: web_responsive -#. odoo-javascript -#: code:addons/web_responsive/static/src/views/form/status_bar_buttons.xml:0 -#, python-format -msgid "Action" -msgstr "" +"Plural-Forms: \n" #. module: web_responsive #. odoo-javascript #: code:addons/web_responsive/static/src/components/menu_canonical_searchbar/searchbar.xml:0 -#, python-format msgid "App Icon" msgstr "" @@ -50,6 +38,20 @@ msgstr "" msgid "Apps Menu Theme" msgstr "" +#. module: web_responsive +#: model:ir.model.fields,field_description:web_responsive.field_res_users__is_auto_open_invoice_preview +msgid "Auto-open Invoice Preview" +msgstr "Rechnungsvorschau automatisch öffnen" + +#. module: web_responsive +#: model:ir.model.fields,help:web_responsive.field_res_users__is_auto_open_invoice_preview +msgid "" +"Automatically open the PDF preview of the invoice attachment when the " +"invoice is opened." +msgstr "" +"Die PDF-Vorschau des Rechnungsanhangs automatisch öffnen, wenn die " +"Rechnung geöffnet wird." + #. module: web_responsive #: model:ir.model.fields.selection,name:web_responsive.selection__res_users__apps_menu_search_type__canonical #: model_terms:ir.ui.view,arch_db:web_responsive.res_users_view_form_apps_menu_preferences @@ -70,17 +72,20 @@ msgstr "" #. module: web_responsive #. odoo-javascript #: code:addons/web_responsive/static/src/legacy/xml/form_buttons.xml:0 -#, python-format msgid "Discard" msgstr "Verwerfen" #. module: web_responsive #. odoo-javascript #: code:addons/web_responsive/static/src/components/command_palette/main.xml:0 -#, python-format msgid "Exit" msgstr "" +#. module: web_responsive +#: model_terms:ir.ui.view,arch_db:web_responsive.view_users_form_web_responsive +msgid "File Viewer" +msgstr "Datei-Viewer" + #. module: web_responsive #: model:ir.model.fields.selection,name:web_responsive.selection__res_users__apps_menu_search_type__fuse #: model_terms:ir.ui.view,arch_db:web_responsive.res_users_view_form_apps_menu_preferences @@ -90,26 +95,23 @@ msgstr "" #. module: web_responsive #: model:ir.model,name:web_responsive.model_ir_http msgid "HTTP Routing" -msgstr "" +msgstr "HTTP-Routing" #. module: web_responsive #. odoo-javascript #: code:addons/web_responsive/static/src/components/apps_menu/apps_menu.xml:0 -#, python-format msgid "Home Menu" msgstr "Home-Menü" #. module: web_responsive #. odoo-javascript #: code:addons/web_responsive/static/src/components/chatter/chatter.xml:0 -#, python-format msgid "Log note" msgstr "Protokollnotiz" #. module: web_responsive #. odoo-javascript #: code:addons/web_responsive/static/src/components/file_viewer/file_viewer.xml:0 -#, python-format msgid "Maximize" msgstr "maximieren" @@ -121,21 +123,18 @@ msgstr "" #. module: web_responsive #. odoo-javascript #: code:addons/web_responsive/static/src/components/file_viewer/file_viewer.xml:0 -#, python-format msgid "Minimize" msgstr "minimieren" #. module: web_responsive #. odoo-javascript #: code:addons/web_responsive/static/src/legacy/xml/form_buttons.xml:0 -#, python-format msgid "New" msgstr "Neu" #. module: web_responsive #. odoo-javascript #: code:addons/web_responsive/static/src/components/menu_canonical_searchbar/searchbar.xml:0 -#, python-format msgid "Nothing to show" msgstr "" @@ -152,7 +151,6 @@ msgstr "" #. module: web_responsive #. odoo-javascript #: code:addons/web_responsive/static/src/legacy/xml/form_buttons.xml:0 -#, python-format msgid "Save" msgstr "Speichern" @@ -170,14 +168,12 @@ msgstr "" #. odoo-javascript #: code:addons/web_responsive/static/src/components/menu_canonical_searchbar/searchbar.xml:0 #: code:addons/web_responsive/static/src/components/menu_odoo_searchbar/searchbar.xml:0 -#, python-format msgid "Search menus..." msgstr "Such-Menüs..." #. module: web_responsive #. odoo-javascript #: code:addons/web_responsive/static/src/components/chatter/chatter.xml:0 -#, python-format msgid "Send message" msgstr "Nachricht senden" @@ -189,7 +185,7 @@ msgstr "" #. module: web_responsive #: model:ir.model,name:web_responsive.model_res_users msgid "User" -msgstr "" +msgstr "Benutzer" #. module: web_responsive #: model_terms:ir.ui.view,arch_db:web_responsive.res_users_view_form_apps_menu_preferences @@ -205,74 +201,3 @@ msgstr "" #: model_terms:ir.ui.view,arch_db:web_responsive.res_users_view_form_apps_menu_preferences msgid "uses a standard algorithm" msgstr "" - -#, python-format -#~ msgid "Activities" -#~ msgstr "Aktivitäten" - -#, python-format -#~ msgid "All" -#~ msgstr "Alles" - -#, python-format -#~ msgid "Attachment counter loading..." -#~ msgstr "Anhangszähler wird geladen..." - -#, python-format -#~ msgid "Attachments" -#~ msgstr "Anhänge" - -#, python-format -#~ msgid "CLEAR" -#~ msgstr "LÖSCHEN" - -#, python-format -#~ msgid "SEE RESULT" -#~ msgstr "SIEHE ERGEBNIS" - -#, python-format -#~ msgid "Search..." -#~ msgstr "Suche..." - -#, python-format -#~ msgid "View switcher" -#~ msgstr "Ansichtsumschalter" - -#, python-format -#~ msgid "Create" -#~ msgstr "Erstellen" - -#~ msgid "Chatter Position" -#~ msgstr "Chatter-Position" - -#, python-format -#~ msgid "Edit" -#~ msgstr "Ändern" - -#~ msgid "Normal" -#~ msgstr "normal" - -#, python-format -#~ msgid "Quick actions" -#~ msgstr "Schnell-Aktion" - -#~ msgid "Sided" -#~ msgstr "Seitlich" - -#~ msgid "Users" -#~ msgstr "Benutzer" - -#~ msgid "Close" -#~ msgstr "Schließen" - -#~ msgid "Toggle App Drawer" -#~ msgstr "App Ordner umschalten" - -#~ msgid "Toggle Navigation" -#~ msgstr "Navigation umschalten" - -#~ msgid "Apps" -#~ msgstr "Apps" - -#~ msgid "More " -#~ msgstr "Mehr " diff --git a/web_responsive/i18n/web_responsive.pot b/web_responsive/i18n/web_responsive.pot index 4c41af9905a1..234946b70e57 100644 --- a/web_responsive/i18n/web_responsive.pot +++ b/web_responsive/i18n/web_responsive.pot @@ -6,6 +6,8 @@ msgid "" msgstr "" "Project-Id-Version: Odoo Server 18.0\n" "Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2026-09-15 08:52+0000\n" +"PO-Revision-Date: 2026-09-15 08:52+0000\n" "Last-Translator: \n" "Language-Team: \n" "MIME-Version: 1.0\n" @@ -36,6 +38,18 @@ msgstr "" msgid "Apps Menu Theme" msgstr "" +#. module: web_responsive +#: model:ir.model.fields,field_description:web_responsive.field_res_users__is_auto_open_invoice_preview +msgid "Auto-open Invoice Preview" +msgstr "" + +#. module: web_responsive +#: model:ir.model.fields,help:web_responsive.field_res_users__is_auto_open_invoice_preview +msgid "" +"Automatically open the PDF preview of the invoice attachment when the " +"invoice is opened." +msgstr "" + #. module: web_responsive #: model:ir.model.fields.selection,name:web_responsive.selection__res_users__apps_menu_search_type__canonical #: model_terms:ir.ui.view,arch_db:web_responsive.res_users_view_form_apps_menu_preferences @@ -65,6 +79,11 @@ msgstr "" msgid "Exit" msgstr "" +#. module: web_responsive +#: model_terms:ir.ui.view,arch_db:web_responsive.view_users_form_web_responsive +msgid "File Viewer" +msgstr "" + #. module: web_responsive #: model:ir.model.fields.selection,name:web_responsive.selection__res_users__apps_menu_search_type__fuse #: model_terms:ir.ui.view,arch_db:web_responsive.res_users_view_form_apps_menu_preferences diff --git a/web_responsive/models/ir_http.py b/web_responsive/models/ir_http.py index 98fff28ac8d9..ac1c88697ee5 100644 --- a/web_responsive/models/ir_http.py +++ b/web_responsive/models/ir_http.py @@ -16,4 +16,5 @@ def session_info(self): "search_type": user.apps_menu_search_type, "theme": user.apps_menu_theme, }, + "auto_open_invoice_preview": user.is_auto_open_invoice_preview, } diff --git a/web_responsive/models/res_users.py b/web_responsive/models/res_users.py index 725eb98d3ad3..584eae7ab672 100644 --- a/web_responsive/models/res_users.py +++ b/web_responsive/models/res_users.py @@ -32,6 +32,13 @@ class ResUsers(models.Model): readonly=False, ) + is_auto_open_invoice_preview = fields.Boolean( + string="Auto-open Invoice Preview", + help="Automatically open the PDF preview of the invoice attachment " + "when the invoice is opened.", + default=True, + ) + @api.depends("action_id") def _compute_redirect_home(self): """ diff --git a/web_responsive/readme/CONTRIBUTORS.md b/web_responsive/readme/CONTRIBUTORS.md index 11b1e7dc59a2..e01060157528 100644 --- a/web_responsive/readme/CONTRIBUTORS.md +++ b/web_responsive/readme/CONTRIBUTORS.md @@ -23,3 +23,5 @@ - Angel Patel \<\> - Mohamed Alkobrosli \<\> + +- Khanh Bui \<\> diff --git a/web_responsive/readme/DESCRIPTION.md b/web_responsive/readme/DESCRIPTION.md index 9e2714aad6a8..14f26e3edcfd 100644 --- a/web_responsive/readme/DESCRIPTION.md +++ b/web_responsive/readme/DESCRIPTION.md @@ -29,6 +29,13 @@ their profile settings. ![image](../static/img/listview.gif) +- Optionally, when opening an invoice (account.move), its most recent + PDF attachment is automatically displayed in the side document + viewer. Enable ** File Viewer / Auto-open Invoice Preview** on the user's + *Preferences* tab (*Settings -> Users -> Companies -> Users*), per user. + + ![image](../static/img/auto_open_invoice_preview.png) + **Features for mobile**: \* View type picker dropdown displays comfortably diff --git a/web_responsive/readme/USAGE.md b/web_responsive/readme/USAGE.md index 4b2b6b3cc4df..92c69b67b42c 100644 --- a/web_responsive/readme/USAGE.md +++ b/web_responsive/readme/USAGE.md @@ -3,3 +3,13 @@ The following keyboard shortcuts are implemented: - Navigate app search results - Arrow keys - Choose app result - `Enter` - `Esc` to close app drawer + +## Auto-open invoice preview + +Enable *Auto-open Invoice Preview* in your user preferences +(*Your Profile → Preferences*). When enabled, opening an invoice +(`account.move`) automatically shows its most recent PDF attachment +in the file viewer on the side of the form. The setting is per user +and takes effect on the next invoice you open. If an invoice has +several PDF attachments, the viewer navigation cycles through all of +them. diff --git a/web_responsive/static/description/index.html b/web_responsive/static/description/index.html index 837fef2d745a..26b9b7f56d56 100644 --- a/web_responsive/static/description/index.html +++ b/web_responsive/static/description/index.html @@ -3,7 +3,7 @@ -README.rst +Web Responsive -
+
+

Web Responsive

- - -Odoo Community Association - -
-

Web Responsive

-

Production/Stable License: LGPL-3 OCA/web Translate me on Weblate Try me on Runboat

+

Production/Stable License: LGPL-3 OCA/web Translate me on Weblate Try me on Runboat

This module adds responsiveness to web backend.

Features for all devices:

    @@ -398,15 +393,22 @@

    Web Responsive

  • Bigger checkboxes in list view

    image5

  • +
  • Optionally, when opening an invoice (account.move), its most recent +PDF attachment is automatically displayed in the side document viewer. +Enable ** File Viewer / Auto-open Invoice Preview** on the user’s +Preferences tab (Settings -> Users -> Companies -> Users), per +user.

    +

    image6

    +

Features for mobile: * View type picker dropdown displays comfortably

  • Control panel buttons use icons to save space.

    -

    image6

    +

    image7

  • Followers and send button is displayed on mobile. Avatar is hidden.

    -

    image7

    +

    image8

  • Big inputs on form in edit mode

  • @@ -418,54 +420,66 @@

    Web Responsive

    with Firefox Tab switching. Standard Odoo keyboard hotkeys changed to be more intuitive or accessible by fingers of one hand. F.x. Alt + S for Save

    -

    image8

    +

    image9

  • Autofocus on search menu box when opening the app menu

    -

    image9

    +

    image10

  • When the chatter is on the side part, the document viewer fills that part for side-by-side reading instead of full screen. You can still put it on full width preview clicking on the new maximize button.

    -

    image10

    +

    image11

  • When the user chooses to send a public message the color of the composer is different from the one when the message is an internal log.

    -

    image11

    +

    image12

Table of contents

-

Usage

+

Usage

The following keyboard shortcuts are implemented:

  • Navigate app search results - Arrow keys
  • Choose app result - Enter
  • Esc to close app drawer
+
+

Auto-open invoice preview

+

Enable Auto-open Invoice Preview in your user preferences (Your +Profile → Preferences). When enabled, opening an invoice +(account.move) automatically shows its most recent PDF attachment in +the file viewer on the side of the form. The setting is per user and +takes effect on the next invoice you open. If an invoice has several PDF +attachments, the viewer navigation cycles through all of them.

+
-

Known issues / Roadmap

+

Known issues / Roadmap

  • App navigation with keyboard.
  • Handle long titles on forms in a better way
-

Bug Tracker

+

Bug Tracker

Bugs are tracked on GitHub Issues. In case of trouble, please check there if your issue has already been reported. If you spotted it first, help us to smash it by providing a detailed and welcomed @@ -473,9 +487,9 @@

Bug Tracker

Do not contact contributors directly about support or help with technical issues.

-

Credits

+

Credits

-

Authors

+

Authors

  • LasLabs
  • Tecnativa
  • @@ -484,7 +498,7 @@

    Authors

-

Contributors

+

Contributors

-

Maintainers

+

Maintainers

This module is maintained by the OCA.

Odoo Community Association @@ -520,6 +535,5 @@

Maintainers

-
diff --git a/web_responsive/static/img/auto_open_invoice_preview.png b/web_responsive/static/img/auto_open_invoice_preview.png new file mode 100644 index 0000000000000000000000000000000000000000..c2720904b7c0623fe6bac6ca8b95f0bfb7c48051 GIT binary patch literal 85631 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≦11@hCY>> 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 literal 0 HcmV?d00001 diff --git a/web_responsive/static/src/components/file_viewer/auto_open.esm.js b/web_responsive/static/src/components/file_viewer/auto_open.esm.js new file mode 100644 index 000000000000..d6d94edb3c6a --- /dev/null +++ b/web_responsive/static/src/components/file_viewer/auto_open.esm.js @@ -0,0 +1,77 @@ +/* License LGPL-3.0 or later (http://www.gnu.org/licenses/lgpl.html). */ + +import {onMounted, onWillUpdateProps} from "@odoo/owl"; +import {patch} from "@web/core/utils/patch"; +import {useService} from "@web/core/utils/hooks"; +import {Chatter} from "@mail/chatter/web_portal/chatter"; +import {useFileViewer} from "@web/core/file_viewer/file_viewer_hook"; +import {registry} from "@web/core/registry"; +import {user} from "@web/core/user"; + +patch(Chatter.prototype, { + setup() { + super.setup(); + this.fileViewer = useFileViewer(); + this.orm = useService("orm"); + onMounted(() => this.autoOpenPreview()); + onWillUpdateProps((nextProps) => this.autoOpenPreview(nextProps)); + }, + + async autoOpenPreview(props = this.props) { + this.forceClosePreviewer(); + + const resId = props.threadId; + const resModel = props.threadModel; + + if (resModel !== "account.move" || !resId || !user.userId) { + return; + } + + const [userData] = await this.orm + .read("res.users", [user.userId], ["is_auto_open_invoice_preview"]) + .catch(() => [{}]); + + if (!userData || !userData.is_auto_open_invoice_preview) { + return; + } + + const attachments = await this.orm.searchRead( + "ir.attachment", + [ + ["res_model", "=", "account.move"], + ["res_id", "=", resId], + ["mimetype", "=", "application/pdf"], + ], + ["id", "name", "mimetype"], + {order: "id desc"} + ); + if (!attachments.length) { + return; + } + + // Create all as store records (as in the working example) + const files = attachments.map((att) => + this.store.Attachment.insert({ + id: att.id, + name: att.name, + filename: att.name, + mimetype: att.mimetype, + }) + ); + + // Display the first file; pass ALL to navigation + this.fileViewer.open(files[0], files); + }, + + forceClosePreviewer() { + // Remove ALL open FileViewer instances from the main components + // registry. This is language-independent (no DOM, no title text) + // and closes every viewer, including "zombie" instances left + // behind by previous Chatter mounts. + for (const [key] of registry.category("main_components").getEntries()) { + if (key.startsWith("web.file_viewer")) { + registry.category("main_components").remove(key); + } + } + }, +}); diff --git a/web_responsive/views/res_users_views.xml b/web_responsive/views/res_users_views.xml index e835770ca144..29275062ea7a 100644 --- a/web_responsive/views/res_users_views.xml +++ b/web_responsive/views/res_users_views.xml @@ -71,6 +71,27 @@ + + + + + + + + + + + + res.users.form.simple.modif.web.responsive + res.users + + + + + + + +