From eba83eddd4f5352dd721bb8f046714ee937a3aab Mon Sep 17 00:00:00 2001 From: Pierre Paridans Date: Thu, 2 Jul 2020 14:11:54 +0000 Subject: [PATCH] [FIX] web: extract date picker's input setter This commit extracts the DatePicker widget's input setter to allow overriding it and preventing from calling the `datetimepicker` lib when not initialized (like on mobile). Note: this change will be used on enterprise. opw-2242880 X-original-commit: c0413868a8728500c52b7e1dd9a0035f90b654fd --- addons/web/static/src/js/widgets/date_picker.js | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/addons/web/static/src/js/widgets/date_picker.js b/addons/web/static/src/js/widgets/date_picker.js index 9ebd68813ee..0b19f0c4506 100644 --- a/addons/web/static/src/js/widgets/date_picker.js +++ b/addons/web/static/src/js/widgets/date_picker.js @@ -183,9 +183,7 @@ var DateWidget = Widget.extend({ this.set({'value': value}); var formatted_value = value ? this._formatClient(value) : null; this.$input.val(formatted_value); - this.__libInput++; - this.$el.datetimepicker('date', value || null); - this.__libInput--; + this._setLibInputValue(value); }, //-------------------------------------------------------------------------- @@ -231,6 +229,15 @@ var DateWidget = Widget.extend({ _parseClient: function (v) { return field_utils.parse[this.type_of_date](v, null, {timezone: false}); }, + /** + * @private + * @param {Moment|false} value + */ + _setLibInputValue: function (value) { + this.__libInput++; + this.$el.datetimepicker('date', value || null); + this.__libInput--; + }, /** * @private * @param {boolean} readonly