From 01d25e87c358f0afbe76301c64db5ce21c59c806 Mon Sep 17 00:00:00 2001 From: wan Date: Fri, 4 Sep 2020 14:00:50 +0000 Subject: [IMP] web: add the raw value of selection fields Task 2327599 It is used in the selector of a tour to know the type of a document. --- addons/web/static/src/js/fields/relational_fields.js | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) (limited to 'addons/web/static/src/js/fields') diff --git a/addons/web/static/src/js/fields/relational_fields.js b/addons/web/static/src/js/fields/relational_fields.js index f4677ac7190..432961bc0bf 100644 --- a/addons/web/static/src/js/fields/relational_fields.js +++ b/addons/web/static/src/js/fields/relational_fields.js @@ -2959,11 +2959,7 @@ var FieldSelection = AbstractField.extend({ style: disabled ? "display: none" : "", })); } - var value = this.value; - if (this.field.type === 'many2one' && value) { - value = value.data.id; - } - this.$el.val(JSON.stringify(value)); + this.$el.val(JSON.stringify(this._getRawValue())); }, /** * @override @@ -2971,6 +2967,14 @@ var FieldSelection = AbstractField.extend({ */ _renderReadonly: function () { this.$el.empty().text(this._formatValue(this.value)); + this.$el.attr('raw-value', this._getRawValue()); + }, + _getRawValue: function() { + var raw_value = this.value; + if (this.field.type === 'many2one' && raw_value) { + raw_value = raw_value.data.id; + } + return raw_value; }, /** * @override -- cgit v1.2.3