summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGéry Debongnie <ged@odoo.com>2017-03-01 12:41:30 +0100
committerAaron Bohy <aab@odoo.com>2017-04-11 19:44:38 +0200
commite357e267351b5a4c702cccebf4858327712984e0 (patch)
tree8cc6f51f35980a412d4f6ed338acb0b19e18cc2a
parent60a518dcce6f70fb46ebe7ce3f7a14f951f3e6c5 (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.js5
-rw-r--r--addons/web/static/src/js/widgets/date_picker.js5
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');