diff --git a/addons/web_calendar/static/src/js/calendar.js b/addons/web_calendar/static/src/js/calendar.js index 93e798ba804..c24b2d75ca2 100644 --- a/addons/web_calendar/static/src/js/calendar.js +++ b/addons/web_calendar/static/src/js/calendar.js @@ -245,16 +245,23 @@ openerp.web_calendar.CalendarView = openerp.web.View.extend({ do_create_event: function(event_id, event_obj) { var self = this, data = this.get_event_data(event_obj); - this.dataset.create(data, function(r) { - var id = parseInt(r.result, 10); - self.dataset.ids.push(id); - scheduler.changeEventId(event_id, id); - self.refresh_minical(); - }, function(r, event) { - self.creating_event_id = event_id; - self.form_dialog.form.on_record_loaded(data); - self.form_dialog.open(); - event.preventDefault(); + this.dataset.call( 'fields_get', [], function(fields) { + self.dataset.default_get(_.keys(fields), function (default_value) { + _.each(default_value ,function(value, key){ + (!_.include(_.keys(data), key))?data[key] = value:false; + self.dataset.create(data, function(r) { + var id = parseInt(r.result, 10); + self.dataset.ids.push(id); + scheduler.changeEventId(event_id, id); + self.refresh_minical(); + }, function(r, event) { + self.creating_event_id = event_id; + self.form_dialog.form.on_record_loaded(data); + self.form_dialog.open(); + event.preventDefault(); + }); + }); + }); }); }, do_save_event: function(event_id, event_obj) {