diff options
| author | Géry Debongnie <ged@odoo.com> | 2017-03-01 12:41:30 +0100 |
|---|---|---|
| committer | Aaron Bohy <aab@odoo.com> | 2017-04-11 19:44:38 +0200 |
| commit | e357e267351b5a4c702cccebf4858327712984e0 (patch) | |
| tree | 8cc6f51f35980a412d4f6ed338acb0b19e18cc2a | |
| parent | 60a518dcce6f70fb46ebe7ce3f7a14f951f3e6c5 (diff) | |
[FIX] web: fix FieldDate widget default value
The FieldDate widget did not properly select the correct default value
when opening the datepicker. We did not notice it, because the test
hardcoded the february month.
| -rw-r--r-- | addons/web/static/src/js/fields/basic_fields.js | 5 | ||||
| -rw-r--r-- | addons/web/static/src/js/widgets/date_picker.js | 5 |
2 files changed, 6 insertions, 4 deletions
diff --git a/addons/web/static/src/js/fields/basic_fields.js b/addons/web/static/src/js/fields/basic_fields.js index dcb65317edb..af2fdb50349 100644 --- a/addons/web/static/src/js/fields/basic_fields.js +++ b/addons/web/static/src/js/fields/basic_fields.js @@ -162,11 +162,12 @@ var FieldDate = InputField.extend({ //-------------------------------------------------------------------------- _makeDatePicker: function () { - return new datepicker.DateWidget(this); + return new datepicker.DateWidget(this, {defaultDate: this.value}); }, _renderEdit: function () { this.datewidget.set_value(this.value); }, + }); var FieldDateTime = FieldDate.extend({ @@ -177,7 +178,7 @@ var FieldDateTime = FieldDate.extend({ //-------------------------------------------------------------------------- _makeDatePicker: function () { - return new datepicker.DateTimeWidget(this); + return new datepicker.DateTimeWidget(this, {defaultDate: this.value}); }, }); diff --git a/addons/web/static/src/js/widgets/date_picker.js b/addons/web/static/src/js/widgets/date_picker.js index 1acccc61a5e..3e4a0f4382f 100644 --- a/addons/web/static/src/js/widgets/date_picker.js +++ b/addons/web/static/src/js/widgets/date_picker.js @@ -50,13 +50,14 @@ var DateWidget = Widget.extend({ this.picker = this.$input.data('DateTimePicker'); this.$input.click(this.picker.toggle.bind(this.picker)); this.set_readonly(false); - this.set_value(false); }, set_value: function(value) { this.set({'value': value}); var formatted_value = value ? this.format_client(value) : null; this.$input.val(formatted_value); - this.picker.date(formatted_value); + if (this.picker) { + this.picker.date(formatted_value); + } }, get_value: function() { return this.get('value'); |
