diff options
| author | Aaron Bohy <aab@odoo.com> | 2019-08-16 07:51:22 +0000 |
|---|---|---|
| committer | Aaron Bohy <aab@odoo.com> | 2019-08-23 06:28:34 +0000 |
| commit | 43ad74798fd971e2c514b67a0f706b8e65165843 (patch) | |
| tree | 918f37963ba8784f99d6d61c2e18883d9a49e742 | |
| parent | 192a230d8ec408559293221ed61ca68694a12aca (diff) | |
[REF] web: list renderers: lint code
| -rw-r--r-- | addons/web/static/src/js/views/list/list_editable_renderer.js | 44 | ||||
| -rw-r--r-- | addons/web/static/src/js/views/list/list_renderer.js | 50 |
2 files changed, 50 insertions, 44 deletions
diff --git a/addons/web/static/src/js/views/list/list_editable_renderer.js b/addons/web/static/src/js/views/list/list_editable_renderer.js index e4dd682ed51..65f5b433c27 100644 --- a/addons/web/static/src/js/views/list/list_editable_renderer.js +++ b/addons/web/static/src/js/views/list/list_editable_renderer.js @@ -217,7 +217,10 @@ ListRenderer.include({ // store the selection range to restore it once the table will // be re-rendered, and the current cell re-selected - var currentRowID, currentWidget, focusedElement, selectionRange; + var currentRowID; + var currentWidget; + var focusedElement; + var selectionRange; if (self.currentRow !== null) { currentRowID = self._getRecordID(self.currentRow); currentWidget = self.allFieldWidgets[currentRowID][self.currentFieldIndex]; @@ -436,8 +439,14 @@ ListRenderer.include({ } var recordID = this._getRecordID(this.currentRow); var recordWidgets = this.allFieldWidgets[recordID]; - toggleWidgets(true); + function toggleWidgets(disabled) { + _.each(recordWidgets, function (widget) { + var $el = widget.getFocusableElement(); + $el.prop('disabled', disabled); + }); + } + toggleWidgets(true); return new Promise((resolve, reject) => { this.trigger_up('save_line', { recordID: recordID, @@ -452,13 +461,6 @@ ListRenderer.include({ }).guardedCatch(() => { toggleWidgets(false); }); - - function toggleWidgets(disabled) { - _.each(recordWidgets, function (widget) { - var $el = widget.getFocusableElement(); - $el.prop('disabled', disabled); - }); - } }, /** * @override @@ -876,8 +878,8 @@ ListRenderer.include({ var $row = this._super.apply(this, arguments); if (this.addTrashIcon) { var $icon = this.isMany2Many ? - $('<button>', {class: 'fa fa-times', name: 'unlink', 'aria-label': _t('Unlink row ') + (index+1)}) : - $('<button>', {class: 'fa fa-trash-o', name: 'delete', 'aria-label': _t('Delete row ') + (index+1)}); + $('<button>', {'class': 'fa fa-times', 'name': 'unlink', 'aria-label': _t('Unlink row ') + (index + 1)}) : + $('<button>', {'class': 'fa fa-trash-o', 'name': 'delete', 'aria-label': _t('Delete row ') + (index + 1)}); var $td = $('<td>', {class: 'o_list_record_remove'}).append($icon); $row.append($td); } @@ -1031,15 +1033,6 @@ ListRenderer.include({ //-------------------------------------------------------------------------- /** - * Unselect the row before adding the optional column to the listview - * - * @override - * @private - */ - _onToggleOptionalColumnDropdown: function (ev) { - this.unselectRow().then(this._super.bind(this, ev)); - }, - /** * This method is called when we click on the 'Add a line' button in a groupby * list view. * @@ -1150,7 +1143,7 @@ ListRenderer.include({ * @param {KeyDownEvent} e */ _onKeyDownAddRecord: function (e) { - switch(e.keyCode) { + switch (e.keyCode) { case $.ui.keyCode.ENTER: e.stopPropagation(); e.preventDefault(); @@ -1267,6 +1260,15 @@ ListRenderer.include({ } }, /** + * Unselect the row before adding the optional column to the listview + * + * @override + * @private + */ + _onToggleOptionalColumnDropdown: function (ev) { + this.unselectRow().then(this._super.bind(this, ev)); + }, + /** * When a click happens outside the list view, or outside a currently * selected row, we want to unselect it. * diff --git a/addons/web/static/src/js/views/list/list_renderer.js b/addons/web/static/src/js/views/list/list_renderer.js index 5e54b626573..fda8d12f9e4 100644 --- a/addons/web/static/src/js/views/list/list_renderer.js +++ b/addons/web/static/src/js/views/list/list_renderer.js @@ -77,7 +77,7 @@ var ListRenderer = BasicRenderer.extend({ * * @override */ - willStart: function() { + willStart: function () { this._processColumns(this.columnInvisibleFields || {}); return this._super.apply(this, arguments); }, @@ -158,7 +158,12 @@ var ListRenderer = BasicRenderer.extend({ (attrs.max && 'max') || (attrs.min && 'min'); if (func) { var count = 0; - var aggregateValue = (func === 'max') ? -Infinity : (func === 'min') ? Infinity : 0; + var aggregateValue = 0; + if (func === 'max') { + aggregateValue = -Infinity; + } else if (func === 'min') { + aggregateValue = Infinity; + } _.each(data, function (d) { count += 1; var value = (d.type === 'record') ? d.data[attrs.name] : d.aggregateValues[attrs.name]; @@ -256,7 +261,7 @@ var ListRenderer = BasicRenderer.extend({ fields: _.map(this.state.fieldsInfo[this.viewType], function (_, fieldName) { return {name: fieldName, type: self.state.fields[fieldName].type}; }), - } + }; }, /** * Removes the columns which should be invisible. @@ -272,7 +277,7 @@ var ListRenderer = BasicRenderer.extend({ var storedOptionalColumns; this.trigger_up('load_optional_fields', { keyParts: this._getOptionalColumnsStorageKeyParts(), - callback: function(res) { + callback: function (res) { storedOptionalColumns = res; }, }); @@ -296,7 +301,7 @@ var ListRenderer = BasicRenderer.extend({ self.optionalColumns.push(c); var enabled; if (storedOptionalColumns === undefined) { - enabled = c.attrs.optional === 'show' + enabled = c.attrs.optional === 'show'; } else { enabled = _.contains(storedOptionalColumns, c.attrs.name); } @@ -591,7 +596,7 @@ var ListRenderer = BasicRenderer.extend({ var $th = $('<th>') .addClass('o_group_name') .attr('tabindex', -1) - .text(name + ' (' + group.count + ')') + .text(name + ' (' + group.count + ')'); var $arrow = $('<span>') .css('padding-left', (groupLevel * 20) + 'px') .css('padding-right', '5px') @@ -813,20 +818,20 @@ var ListRenderer = BasicRenderer.extend({ return this.state.data.map(this._renderRow.bind(this)); }, /** - * Render a single <th> with dropdown menu to display optional columns of view. - * - * @private - * @returns {jQueryElement} a <th> element - */ + * Render a single <th> with dropdown menu to display optional columns of view. + * + * @private + * @returns {jQueryElement} a <th> element + */ _renderOptionalColumnsDropdown: function () { var self = this; var $optionalColumnsDropdown = $('<div>', { class: 'o_optional_columns text-center dropdown', }); var $a = $("<a>", { - class: "dropdown-toggle text-dark o-no-caret", - href: "#", - role: "button", + 'class': "dropdown-toggle text-dark o-no-caret", + 'href': "#", + 'role': "button", 'data-toggle': "dropdown", 'aria-expanded': false, }); @@ -844,7 +849,7 @@ var ListRenderer = BasicRenderer.extend({ name: col.attrs.name, checked: _.contains(self.optionalColumnsEnabled, col.attrs.name), } - }) + }); $dropdown.append($("<div>", { class: "dropdown-item", }).append($checkbox)); @@ -930,7 +935,7 @@ var ListRenderer = BasicRenderer.extend({ })); if (self.optionalColumns.length) { - self.$el.addClass('o_list_optional_columns') + self.$el.addClass('o_list_optional_columns'); self.$('table').append($('<i class="o_optional_columns_dropdown_toggle fa fa-ellipsis-v"/>')); self.$el.append(self._renderOptionalColumnsDropdown()); } @@ -1049,10 +1054,10 @@ var ListRenderer = BasicRenderer.extend({ keyParts: this._getOptionalColumnsStorageKeyParts(), optionalColumnsEnabled: this.optionalColumnsEnabled, }); - this._processColumns(this.columnInvisibleFields || {}); - this._renderView().then(function() { + this._processColumns(this.columnInvisibleFields || {}); + this._renderView().then(function () { self._onToggleOptionalColumnDropdown(ev); - }) + }); }, /** * When the user clicks on the three dots (ellipsis), toggle the optional @@ -1145,10 +1150,9 @@ var ListRenderer = BasicRenderer.extend({ } }, /** - * - * @param {MouseEvent} ev + * @private */ - _onMouseDown: function(ev) { + _onMouseDown: function () { $('.o_keyboard_navigation').removeClass('o_keyboard_navigation'); }, /** @@ -1195,7 +1199,7 @@ var ListRenderer = BasicRenderer.extend({ if (group.count) { this.trigger_up('toggle_group', { group: group, - onSuccess: function() { + onSuccess: function () { // Refocus the header after re-render unless the user // already focused something else by now if (document.activeElement.tagName === 'BODY') { |
