diff options
| author | Christophe Matthieu <chm@odoo.com> | 2017-06-01 16:28:52 +0200 |
|---|---|---|
| committer | Christophe Matthieu <chm@odoo.com> | 2017-06-06 16:17:30 +0200 |
| commit | 1b07daf2ed94073e2db5ff0468c328a2a791687c (patch) | |
| tree | b9df0f0bb01eb728dde572fedf1f8d2998f07d2d /addons/web/static/src | |
| parent | ab0bd7be2523d562db9cd9f51ed377b05d96ab25 (diff) | |
[FIX] calendar: can create an event with start_date as readonly
Before this fix, if the start field is readonly, the user could not create
an event. With this commit, it is also ensured that the context sends the
right default values to the view
Diffstat (limited to 'addons/web/static/src')
3 files changed, 5 insertions, 4 deletions
diff --git a/addons/web/static/src/js/views/calendar/calendar_controller.js b/addons/web/static/src/js/views/calendar/calendar_controller.js index 7e668b79dc0..d4c96a15736 100644 --- a/addons/web/static/src/js/views/calendar/calendar_controller.js +++ b/addons/web/static/src/js/views/calendar/calendar_controller.js @@ -170,12 +170,12 @@ var CalendarController = AbstractController.extend({ var context = _.extend({}, this.context, event.options && event.options.context); context.default_name = data.name || null; - context['default_' + this.mapping.date_start] = data.start || null; + context['default_' + this.mapping.date_start] = data[this.mapping.date_start] || null; if (this.mapping.date_stop) { - context['default_' + this.mapping.date_stop] = data.stop || null; + context['default_' + this.mapping.date_stop] = data[this.mapping.date_stop] || null; } if (this.mapping.date_delay) { - context['default_' + this.mapping.date_delay] = data.duration || null; + context['default_' + this.mapping.date_delay] = data[this.mapping.date_delay] || null; } if (this.mapping.all_day) { context['default_' + this.mapping.all_day] = data[this.mapping.all_day] || null; diff --git a/addons/web/static/src/js/views/calendar/calendar_model.js b/addons/web/static/src/js/views/calendar/calendar_model.js index 939e44446a8..cb371bfe6f9 100644 --- a/addons/web/static/src/js/views/calendar/calendar_model.js +++ b/addons/web/static/src/js/views/calendar/calendar_model.js @@ -181,7 +181,7 @@ return AbstractModel.extend({ // Check whether the date field is editable (i.e. if the events can be // dragged and dropped) this.editable = params.editable; - this.creatable = this.editable; + this.creatable = params.creatable; // display more button when there are too much event on one day this.eventLimit = params.eventLimit; diff --git a/addons/web/static/src/js/views/calendar/calendar_view.js b/addons/web/static/src/js/views/calendar/calendar_view.js index daef6f4fbb0..135224fb0cc 100644 --- a/addons/web/static/src/js/views/calendar/calendar_view.js +++ b/addons/web/static/src/js/views/calendar/calendar_view.js @@ -125,6 +125,7 @@ var CalendarView = AbstractView.extend({ this.loadParams.fields = fields; this.loadParams.fieldsInfo = viewInfo.fieldsInfo; this.loadParams.editable = !fields[mapping.date_start].readonly; + this.loadParams.creatable = true; this.loadParams.eventLimit = eventLimit; this.loadParams.fieldColor = attrs.color; |
