diff options
| author | Quentin Nicolay <qni@odoo.com> | 2019-10-15 09:15:32 +0000 |
|---|---|---|
| committer | fw-bot <otis@odoo.com> | 2019-10-16 08:26:10 +0000 |
| commit | d59b67a91587b4a968cbd9dd053ddfe8beaedd14 (patch) | |
| tree | 41adddca61d2bff17714b037e301853685b8786f /addons | |
| parent | 644663eb4a356b06f4a135bfaf60bce98aa7ee63 (diff) | |
[FIX] web: add 'no_edit_color' option to many2many_tags
This option, if set to True, prevents the user from modifying the
color of the tags.
Part of task 2070454
closes odoo/odoo#38848
X-original-commit: a62b65a8f9114493064d4efae92825814a880c04
Signed-off-by: Aaron Bohy (aab) <aab@odoo.com>
Diffstat (limited to 'addons')
| -rw-r--r-- | addons/web/static/src/js/fields/relational_fields.js | 4 | ||||
| -rw-r--r-- | addons/web/static/tests/fields/relational_fields_tests.js | 22 |
2 files changed, 26 insertions, 0 deletions
diff --git a/addons/web/static/src/js/fields/relational_fields.js b/addons/web/static/src/js/fields/relational_fields.js index f54f46e4ebf..2b6a0d44854 100644 --- a/addons/web/static/src/js/fields/relational_fields.js +++ b/addons/web/static/src/js/fields/relational_fields.js @@ -2440,6 +2440,10 @@ var FormFieldMany2ManyTags = FieldMany2ManyTags.extend({ */ _onOpenColorPicker: function (ev) { ev.preventDefault(); + if (this.nodeOptions.no_edit_color) { + ev.stopPropagation(); + return; + } var tagID = $(ev.currentTarget).parent().data('id'); var tagColor = $(ev.currentTarget).parent().data('color'); var tag = _.findWhere(this.value.data, { res_id: tagID }); diff --git a/addons/web/static/tests/fields/relational_fields_tests.js b/addons/web/static/tests/fields/relational_fields_tests.js index 751eb1cb137..d9e9b69e6c2 100644 --- a/addons/web/static/tests/fields/relational_fields_tests.js +++ b/addons/web/static/tests/fields/relational_fields_tests.js @@ -1545,6 +1545,28 @@ QUnit.module('relational_fields', { form.destroy(); }); + QUnit.test('fieldmany2many tags with no_edit_color option', async function (assert) { + assert.expect(1); + + this.data.partner.records[0].timmy = [12]; + + var form = await createView({ + View: FormView, + model: 'partner', + data: this.data, + arch:'<form string="Partners">' + + '<field name="timmy" widget="many2many_tags" options="{\'color_field\': \'color\', \'no_edit_color\': 1}"/>' + + '</form>', + res_id: 1, + }); + + // Click to try to open colorpicker + await testUtils.dom.click(form.$('.badge:first() .dropdown-toggle')); + assert.containsNone(document.body, '.o_colorpicker'); + + form.destroy(); + }); + QUnit.test('fieldmany2many tags in editable list', async function (assert) { assert.expect(7); |
