From 50849309d17db9a3d5fd0bcd9d546843aee7d3ea Mon Sep 17 00:00:00 2001 From: "jke@openerp.com" <> Date: Wed, 19 Feb 2014 17:31:34 +0100 Subject: [PATCH] [FIX] web_calendar: correct timezone handling when creating new events bzr revid: odo@openerp.com-20140219163134-dzmx34yffnithn30 --- addons/web/static/src/js/views.js | 7 ++++++- addons/web_calendar/static/src/js/web_calendar.js | 7 ++++--- 2 files changed, 10 insertions(+), 4 deletions(-) diff --git a/addons/web/static/src/js/views.js b/addons/web/static/src/js/views.js index cb0d130e305..689b4d947fb 100644 --- a/addons/web/static/src/js/views.js +++ b/addons/web/static/src/js/views.js @@ -600,6 +600,7 @@ instance.web.ViewManager = instance.web.Widget.extend({ action_views_ids : views_ids }, self.flags, self.flags[view.view_type] || {}, view.options || {}) }); + views_ids[view.view_type] = view.view_id; }); if (this.flags.views_switcher === false) { @@ -607,7 +608,11 @@ instance.web.ViewManager = instance.web.Widget.extend({ } // If no default view defined, switch to the first one in sequence var default_view = this.flags.default_view || this.views_src[0].view_type; - return this.switch_mode(default_view); + + + return this.switch_mode(default_view, null, this.flags[default_view] && this.flags[default_view].options); + + }, switch_mode: function(view_type, no_store, view_options) { var self = this; diff --git a/addons/web_calendar/static/src/js/web_calendar.js b/addons/web_calendar/static/src/js/web_calendar.js index 6a7b19b2e23..77bf3fb7337 100644 --- a/addons/web_calendar/static/src/js/web_calendar.js +++ b/addons/web_calendar/static/src/js/web_calendar.js @@ -652,8 +652,8 @@ openerp.web_calendar = function(instance) { } if (this.all_day) { event_end = (new Date(event_end.getTime())).addDays(1); - date_start_day = new Date(event.start.getFullYear(),event.start.getMonth(),event.start.getDate()); - date_stop_day = new Date(event_end.getFullYear(),event_end.getMonth(),event_end.getDate()); + date_start_day = new Date(event.start.getFullYear(),event.start.getMonth(),event.start.getDate(),12); + date_stop_day = new Date(event_end.getFullYear(),event_end.getMonth(),event_end.getDate(),12); } else { date_start_day = new Date(event.start.getFullYear(),event.start.getMonth(),event.start.getDate(),7); @@ -666,7 +666,6 @@ openerp.web_calendar = function(instance) { } else { - data[this.date_start] = instance.web.parse_value(event.start, this.fields[this.date_start]); if (this.date_stop) { data[this.date_stop] = instance.web.parse_value(event_end, this.fields[this.date_stop]); @@ -1070,6 +1069,8 @@ openerp.web_calendar = function(instance) { return infos; }, slow_create: function(data) { + //if all day, we could reset time to display 00:00:00 + var self = this; var def = $.Deferred(); var defaults = {};