From 12b8bf980afb5c3adde4f69b48221779c33d472e Mon Sep 17 00:00:00 2001 From: Fabien Meghazi Date: Thu, 12 Jan 2012 15:17:30 +0100 Subject: [PATCH] [FIX] Fix calendar date_start date_stop in new event form popup bzr revid: fme@openerp.com-20120112141730-kipnpmm6zi41nvq6 --- addons/web_calendar/static/src/js/calendar.js | 25 +++++++------------------ 1 file changed, 7 insertions(+), 18 deletions(-) diff --git a/addons/web_calendar/static/src/js/calendar.js b/addons/web_calendar/static/src/js/calendar.js index fe5799d..75fdddc 100644 --- a/addons/web_calendar/static/src/js/calendar.js +++ b/addons/web_calendar/static/src/js/calendar.js @@ -296,36 +296,25 @@ openerp.web_calendar.CalendarView = openerp.web.View.extend({ var self = this, data = this.get_event_data(event_obj), form = self.form_dialog.form, - fields_to_fetch = _(form.fields_view.fields).keys(), - set_values = [], - fields_names = []; + fields_to_fetch = _(form.fields_view.fields).keys(); this.dataset.index = null; self.creating_event_id = event_id; this.form_dialog.form.do_show().then(function() { form.show_invalid = false; - _.each(['date_start', 'date_stop', 'date_delay'], function(field) { + _.each(['date_start', 'date_delay', 'date_stop'], function(field) { var field_name = self[field]; if (field_name && form.fields[field_name]) { var ffield = form.fields[field_name]; ffield.reset(); - var result = ffield.set_value(data[field_name]); - set_values.push(result); - fields_names.push(field_name); - $.when(result).then(function() { + $.when(ffield.set_value(data[field_name])).then(function() { ffield.validate(); + ffield.dirty = true; + form.do_onchange(ffield); }); } }); - - $.when(set_values).then(function() { - _.each(fields_names, function(fn) { - var field = form.fields[fn]; - field.dirty = true; - form.do_onchange(field); - }); - form.show_invalid = true; - self.form_dialog.open(); - }); + form.show_invalid = true; + self.form_dialog.open(); }); }, do_save_event: function(event_id, event_obj) { -- 1.7.10.4