2 commits - plugins/calendar
Thomas Brüderli
bruederli at kolabsys.com
Wed Nov 20 12:45:51 CET 2013
plugins/calendar/drivers/database/database_driver.php | 12 ++++++++++--
1 file changed, 10 insertions(+), 2 deletions(-)
New commits:
commit 729997885413edd782e9c0a14f772619d50c557c
Merge: 8fc82a0 a25fc1a
Author: Thomas Bruederli <bruederli at kolabsys.com>
Date: Wed Nov 20 12:36:40 2013 +0100
Merge branch 'master' of ssh://git.kolab.org/git/roundcubemail-plugins-kolab
commit 8fc82a08556f2c97a8c336ace25317e0a0847c00
Author: Thomas Bruederli <bruederli at kolabsys.com>
Date: Wed Nov 20 12:36:17 2013 +0100
Fix saving of recurring events in database (#2540)
diff --git a/plugins/calendar/drivers/database/database_driver.php b/plugins/calendar/drivers/database/database_driver.php
index 7896433..ddcafab 100644
--- a/plugins/calendar/drivers/database/database_driver.php
+++ b/plugins/calendar/drivers/database/database_driver.php
@@ -380,6 +380,11 @@ class database_driver extends calendar_driver
$event['end'] = clone $event['start'];
$event['end']->add(new DateInterval('PT'.$new_duration.'S'));
}
+ // dates did not change, use the ones from master
+ else if ($event['start'] == $old['start'] && $event['end'] == $old['end']) {
+ $event['start'] = $master['start'];
+ $event['end'] = $master['end'];
+ }
break;
}
}
@@ -542,8 +547,8 @@ class database_driver extends calendar_driver
$notify_at = $this->_get_notification(array('alarms' => $event['alarms'], 'start' => $next_start, 'end' => $next_end));
$query = $this->rc->db->query(sprintf(
"INSERT INTO " . $this->db_events . "
- (calendar_id, recurrence_id, created, changed, uid, %s, %s, all_day, recurrence, title, description, location, categories, url, free_busy, priority, sensitivity, alarms, notifyat)
- SELECT calendar_id, ?, %s, %s, uid, ?, ?, all_day, recurrence, title, description, location, categories, url, free_busy, priority, sensitivity, alarms, ?
+ (calendar_id, recurrence_id, created, changed, uid, %s, %s, all_day, recurrence, title, description, location, categories, url, free_busy, priority, sensitivity, alarms, attendees, notifyat)
+ SELECT calendar_id, ?, %s, %s, uid, ?, ?, all_day, recurrence, title, description, location, categories, url, free_busy, priority, sensitivity, alarms, attendees, ?
FROM " . $this->db_events . " WHERE event_id=? AND calendar_id IN (" . $this->calendar_ids . ")",
$this->rc->db->quote_identifier('start'),
$this->rc->db->quote_identifier('end'),
@@ -821,6 +826,9 @@ class database_driver extends calendar_driver
}
$event['attendees'] = $attendees;
}
+ else {
+ $event['attendees'] = array();
+ }
unset($event['event_id'], $event['calendar_id'], $event['notifyat'], $event['all_day'], $event['_attachments']);
return $event;
More information about the commits
mailing list