plugins/calendar

Thomas Brüderli bruederli at kolabsys.com
Thu Jan 23 10:04:09 CET 2014


 plugins/calendar/drivers/database/database_driver.php |   12 +++++++-----
 1 file changed, 7 insertions(+), 5 deletions(-)

New commits:
commit 03736d142e3b4fe29dbf946baba7bfcc0645d12f
Author: Thomas Bruederli <thomas at roundcube.net>
Date:   Thu Jan 23 10:03:55 2014 +0100

    Don't shift all-day event dates into server's timezone (#2463)

diff --git a/plugins/calendar/drivers/database/database_driver.php b/plugins/calendar/drivers/database/database_driver.php
index ddcafab..f1c6396 100644
--- a/plugins/calendar/drivers/database/database_driver.php
+++ b/plugins/calendar/drivers/database/database_driver.php
@@ -404,11 +404,13 @@ class database_driver extends calendar_driver
    */
   private function _save_preprocess($event)
   {
-    // shift dates to server's timezone
-    $event['start'] = clone $event['start'];
-    $event['start']->setTimezone($this->server_timezone);
-    $event['end'] = clone $event['end'];
-    $event['end']->setTimezone($this->server_timezone);
+    // shift dates to server's timezone (except for all-day events)
+    if (!$event['allday']) {
+      $event['start'] = clone $event['start'];
+      $event['start']->setTimezone($this->server_timezone);
+      $event['end'] = clone $event['end'];
+      $event['end']->setTimezone($this->server_timezone);
+    }
     
     // compose vcalendar-style recurrencue rule from structured data
     $rrule = $event['recurrence'] ? libcalendaring::to_rrule($event['recurrence']) : '';




More information about the commits mailing list