# Copyright 2017-2019 Onestein () # License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl). from odoo import api, models class WizardModelMenuCreate(models.TransientModel): _inherit = "wizard.ir.model.menu.create" def menu_create(self): if self.env.context.get("active_model") == "bve.view": self.ensure_one() active_id = self.env.context.get("active_id") bve_view = self.env["bve.view"].browse(active_id) menu = self.env["ir.ui.menu"].create( { "name": self.name, "parent_id": self.menu_id.id, "action": "ir.actions.act_window,%d" % (bve_view.action_id,), } ) self.env["ir.model.data"].create( { "name": bve_view.name + ", id=" + str(menu.id), "noupdate": True, "module": "bi_view_editor", "model": "ir.ui.menu", "res_id": menu.id, } ) return {"type": "ir.actions.client", "tag": "reload"} return super().menu_create() @api.model def default_get(self, fields_list): defaults = super().default_get(fields_list) if self.env.context.get("active_model") == "bve.view": active_id = self.env.context.get("active_id") bve_view = self.env["bve.view"].browse(active_id) defaults.setdefault("name", bve_view.name) return defaults