From 5da90dfc4e63b075621196c35946c9ad12a40d2c Mon Sep 17 00:00:00 2001 From: clesgow Date: Fri, 10 Feb 2023 12:54:12 +0000 Subject: [PATCH] [FIX] web,stock,mrp: check if `viewSwitcherEntries` exists When using the ControlPanel's bottom-right slot in another component, if `viewSwitcherEntries` wasn't defined in `env.config` it would raise a traceback, as the template would try to check an `undefined`'s length. Removed the workaround that added an empty `viewSwitcherEntries` in the forecast report and the bom overview report since it's no longer necessary. closes odoo/odoo#112415 Signed-off-by: Aaron Bohy (aab) --- .../mrp_bom_overview_control_panel.js | 2 -- .../src/stock_forecasted/stock_forecasted.js | 14 +----------- .../search/control_panel/control_panel.xml | 4 ++-- .../web/static/tests/search/control_panel.js | 22 ++++++++++++++++++- 4 files changed, 24 insertions(+), 18 deletions(-) diff --git a/addons/mrp/static/src/components/bom_overview_control_panel/mrp_bom_overview_control_panel.js b/addons/mrp/static/src/components/bom_overview_control_panel/mrp_bom_overview_control_panel.js index f375225274f..9471c42be04 100644 --- a/addons/mrp/static/src/components/bom_overview_control_panel/mrp_bom_overview_control_panel.js +++ b/addons/mrp/static/src/components/bom_overview_control_panel/mrp_bom_overview_control_panel.js @@ -10,8 +10,6 @@ const { Component } = owl; export class BomOverviewControlPanel extends Component { setup() { this.controlPanelDisplay = {}; - // Cannot use 'control-panel-bottom-right' slot without this, as viewSwitcherEntries doesn't exist in this.env.config here. - this.env.config.viewSwitcherEntries = []; } //---- Handlers ---- diff --git a/addons/stock/static/src/stock_forecasted/stock_forecasted.js b/addons/stock/static/src/stock_forecasted/stock_forecasted.js index 8c6bc428fc0..6a8d0b307b8 100644 --- a/addons/stock/static/src/stock_forecasted/stock_forecasted.js +++ b/addons/stock/static/src/stock_forecasted/stock_forecasted.js @@ -10,22 +10,10 @@ import { ForecastedDetails } from "./forecasted_details"; import { ForecastedHeader } from "./forecasted_header"; import { ForecastedWarehouseFilter } from "./forecasted_warehouse_filter"; -const { Component, onWillStart, useState, useSubEnv } = owl; +const { Component, onWillStart, useState } = owl; export class StockForecasted extends Component { setup() { - useSubEnv({ - ...this.env, - //ControlPanel trick : Allow the use of ControlPanel's bottom-right while disabling search to avoid errors - searchModel: { - searchMenuTypes: [], - }, - config: { - ...this.env.config, - viewSwitcherEntries: [], - } - }); - this.orm = useService("orm"); this.action = useService("action"); diff --git a/addons/web/static/src/search/control_panel/control_panel.xml b/addons/web/static/src/search/control_panel/control_panel.xml index 15484877575..84bad38df09 100644 --- a/addons/web/static/src/search/control_panel/control_panel.xml +++ b/addons/web/static/src/search/control_panel/control_panel.xml @@ -43,7 +43,7 @@ - +