diff options
| author | Christophe Simonis <chs@odoo.com> | 2018-04-24 16:35:06 +0200 |
|---|---|---|
| committer | Christophe Simonis <chs@odoo.com> | 2018-04-24 16:35:06 +0200 |
| commit | ec5e27bb7cc7808d7128eae4e7e67910f40492c0 (patch) | |
| tree | dd750032f3dd0f1d4e443b44f5b0fcf0d8a5ba11 /addons/web/static/src/js | |
| parent | 3b3f6cc0694b95cfbb0300cbff9aa6d9a3a6fe7e (diff) | |
| parent | 7fd9dbdd9f8f30424cfb977b83a3c463889bb710 (diff) | |
[MERGE] forward port branch saas-11.2 up to 7fd9dbdd9f8
Diffstat (limited to 'addons/web/static/src/js')
| -rw-r--r-- | addons/web/static/src/js/views/kanban/kanban_controller.js | 18 |
1 files changed, 15 insertions, 3 deletions
diff --git a/addons/web/static/src/js/views/kanban/kanban_controller.js b/addons/web/static/src/js/views/kanban/kanban_controller.js index 5e8bcbf963f..986fff3a53e 100644 --- a/addons/web/static/src/js/views/kanban/kanban_controller.js +++ b/addons/web/static/src/js/views/kanban/kanban_controller.js @@ -79,6 +79,16 @@ var KanbanController = BasicController.extend({ return this.renderer.updateRecord(this.model.get(id)); }, /** + * @param {number[]} ids + * @private + * @returns {Deferred} + */ + _resequenceColumns: function (ids) { + var state = this.model.get(this.handle, {raw: true}); + var model = state.fields[state.groupedBy[0]].relation; + return this.model.resequence(model, ids, this.handle); + }, + /** * This method calls the server to ask for a resequence. Note that this * does not rerender the user interface, because in most case, the * resequencing operation has already been displayed by the renderer. @@ -134,6 +144,10 @@ var KanbanController = BasicController.extend({ _onAddColumn: function (event) { var self = this; this.model.createGroup(event.data.value, this.handle).then(function () { + var state = self.model.get(self.handle, {raw: true}); + var ids = _.pluck(state.data, 'res_id').filter(_.isNumber); + return self._resequenceColumns(ids); + }).then(function () { return self.update({}, {reload: false}); }).then(function () { self._updateButtons(); @@ -396,9 +410,7 @@ var KanbanController = BasicController.extend({ */ _onResequenceColumn: function (event) { var self = this; - var state = this.model.get(this.handle, {raw: true}); - var model = state.fields[state.groupedBy[0]].relation; - this.model.resequence(model, event.data.ids, this.handle).then(function () { + this._resequenceColumns(event.data.ids).then(function () { self._updateEnv(); }); }, |
