/* Xbus Common for Odoo Copyright © 2020, 2023, 2024 XCG Consulting <https://xcg-consulting.fr> This program is free software: you can redistribute it and/or modify it under the terms of the GNU Affero General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. 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 for more details. You should have received a copy of the GNU Affero General Public License along with this program. If not, see <http://www.gnu.org/licenses/>. */ /* Add an "Xbus messages" link to open related messages from the debug menu. * * Inspired by the code in Odoo: * addons/web/static/src/views/debug_items.js */ import {_t} from "@web/core/l10n/translation"; import {registry} from "@web/core/registry"; const debugRegistry = registry.category("debug"); function openXbusMessage({component, env}) { const resId = component.model.root.resId; if (!resId) { return null; // No record } return { type: "item", description: _t("Open Xbus Messages"), callback: async () => { const ids = await env.services.orm.search("xbus.message.link", [ ["res_id", "=", resId], ["res_model", "=", component.props.resModel], ]); env.services.action.doAction({ type: "ir.actions.act_window", domain: [["link_ids", "in", ids]], name: "Xbus Messages", res_model: "xbus.message", views: [ [false, "list"], [false, "form"], ], view_mode: "list", target: "current", }); }, // After Manage Attachments sequence: 335, }; } debugRegistry.category("form").add("openXbusMessage", openXbusMessage);