From 234d92c4f0c092dca9f10d194ddcff998fc3a886 Mon Sep 17 00:00:00 2001 From: Ravi Gadhia Date: Wed, 6 Jun 2018 13:41:44 +0000 Subject: [IMP] web: list: editable grouped list views This rev. enables the editable feature in grouped list views. Part of task 1915702 Co-authored-by: Aaron Bohy Co-authored-by: Martin Geubelle --- addons/web/static/src/js/views/basic/basic_renderer.js | 16 ++++++++++++++-- 1 file changed, 14 insertions(+), 2 deletions(-) (limited to 'addons/web/static/src/js/views/basic/basic_renderer.js') diff --git a/addons/web/static/src/js/views/basic/basic_renderer.js b/addons/web/static/src/js/views/basic/basic_renderer.js index 6f5fa263ba8..f741e11b789 100644 --- a/addons/web/static/src/js/views/basic/basic_renderer.js +++ b/addons/web/static/src/js/views/basic/basic_renderer.js @@ -91,8 +91,7 @@ var BasicRenderer = AbstractRenderer.extend({ */ confirmChange: function (state, id, fields, ev) { this.state = state; - - var record = state.id === id ? state : _.findWhere(state.data, {id: id}); + var record = this._getRecord(id); if (!record) { return this._render().then(_.constant([])); } @@ -350,6 +349,19 @@ var BasicRenderer = AbstractRenderer.extend({ _getModifiersData: function (node) { return _.findWhere(this.allModifiersData, {node: node}); }, + /** + * This function is meant to be overriden in renderers. It takes a dataPoint + * id (for a dataPoint of type record), and should return the corresponding + * dataPoint. + * + * @abstract + * @private + * @param {string} [recordId] + * @returns {Object|null} + */ + _getRecord: function (recordId) { + return null; + }, /** * @private * @param {jQueryElement} $el -- cgit v1.2.3