diff options
| author | Mathieu Duckerts-Antoine <dam@odoo.com> | 2020-08-11 08:34:42 +0000 |
|---|---|---|
| committer | Mathieu Duckerts-Antoine <dam@odoo.com> | 2020-08-12 08:52:20 +0000 |
| commit | ae0d79f5c292b92c4f1a7e1c4c8d71168e3a0400 (patch) | |
| tree | 8a5bdeb70649839144a0ac46bd3ede768bd26b83 /addons/web/static/src | |
| parent | e219aac56ad9687687187ffe099af2d797b6922c (diff) | |
[IMP] web: sample data in dashboard view
A previous commit has paved the way for displaying sample data in the
reporting views. The present commit brings the required changes in
community to have sample data in dashboard views.
Task ID: 2282196
Co-authored-by: Aaron Bohy <aab@odoo.com>
Co-authored-by: Mathieu Duckerts-Antoine <dam@odoo.com>
Diffstat (limited to 'addons/web/static/src')
4 files changed, 16 insertions, 5 deletions
diff --git a/addons/web/static/src/js/views/abstract_renderer.js b/addons/web/static/src/js/views/abstract_renderer.js index e1ae3fe5370..b1e30ca29bd 100644 --- a/addons/web/static/src/js/views/abstract_renderer.js +++ b/addons/web/static/src/js/views/abstract_renderer.js @@ -161,7 +161,7 @@ return mvc.Renderer.extend({ * @see sampleDataTargets */ _suppressFocusableElements() { - if (!this.state.isSample) { + if (!this.state.isSample || this.isEmbedded) { return; } const rootEls = []; diff --git a/addons/web/static/src/js/views/abstract_renderer_owl.js b/addons/web/static/src/js/views/abstract_renderer_owl.js index 78e0c097854..0c97159e294 100644 --- a/addons/web/static/src/js/views/abstract_renderer_owl.js +++ b/addons/web/static/src/js/views/abstract_renderer_owl.js @@ -41,7 +41,7 @@ odoo.define('web.AbstractRendererOwl', function () { * @see sampleDataTargets */ _suppressFocusableElements() { - if (!this.props.isSample) { + if (!this.props.isSample || this.props.isEmbedded) { const disabledEls = this.el.querySelectorAll(`.o_sample_data_disabled`); disabledEls.forEach(el => el.classList.remove('o_sample_data_disabled')); return; diff --git a/addons/web/static/src/js/views/abstract_view.js b/addons/web/static/src/js/views/abstract_view.js index 96767858f79..ae572739c4e 100644 --- a/addons/web/static/src/js/views/abstract_view.js +++ b/addons/web/static/src/js/views/abstract_view.js @@ -95,6 +95,7 @@ var AbstractView = Factory.extend({ * @param {Array[]} [params.searchQuery.domain=[]] * @param {string[]} [params.searchQuery.groupBy=[]] * @param {Object} [params.userContext={}] + * @param {boolean} [params.useSampleModel] * @param {boolean} [params.withControlPanel=AbstractView.prototype.withControlPanel] * @param {boolean} [params.withSearchPanel=AbstractView.prototype.withSearchPanel] */ @@ -159,12 +160,16 @@ var AbstractView = Factory.extend({ res_ids: controllerState.resIds || params.ids || (currentId ? [currentId] : undefined), }; + const useSampleModel = 'useSampleModel' in params ? + params.useSampleModel : + !!(this.arch.attrs.sample && JSON.parse(this.arch.attrs.sample)); + this.modelParams = { fields: this.fields, modelName: params.modelName, - useSampleModel: !!(this.arch.attrs.sample && JSON.parse(this.arch.attrs.sample)) + useSampleModel, }; - if (this.modelParams.useSampleModel) { + if (useSampleModel) { this.modelParams.SampleModel = this.config.Model; } @@ -354,13 +359,14 @@ var AbstractView = Factory.extend({ * @param {string} [action.name] * @param {string} [action.res_model] * @param {string} [action.target] + * @param {boolean} [action.useSampleModel] * @returns {Object} */ _extractParamsFromAction: function (action) { action = action || {}; var context = action.context || {}; var inline = action.target === 'inline'; - return { + const params = { actionId: action.id || false, actionViews: action.views || [], activateDefaultFavorite: !context.active_id && !context.active_ids, @@ -378,6 +384,10 @@ var AbstractView = Factory.extend({ withSearchBar: inline ? false : this.withSearchBar, withSearchPanel: this.withSearchPanel, }; + if ('useSampleModel' in action) { + params.useSampleModel = action.useSampleModel; + } + return params; }, /** * Processes a fieldsView. In particular, parses its arch. diff --git a/addons/web/static/src/js/widgets/pie_chart.js b/addons/web/static/src/js/widgets/pie_chart.js index 7cfc3fdacce..f4254ff3501 100644 --- a/addons/web/static/src/js/widgets/pie_chart.js +++ b/addons/web/static/src/js/widgets/pie_chart.js @@ -45,6 +45,7 @@ var PieChart = Widget.extend({ withControlPanel: false, withSearchPanel: false, isEmbedded: true, + useSampleModel: record.isSample, mode: 'pie', }; this.subViewParams.searchQuery = { |
