diff --git a/plugins/calendar/calendar.php b/plugins/calendar/calendar.php index 08308168..3939ec2c 100644 --- a/plugins/calendar/calendar.php +++ b/plugins/calendar/calendar.php @@ -418,7 +418,7 @@ class calendar extends rcube_plugin $reload = true; break; case "remove": - $success = $this->driver->remove_event($event); + $removed = $this->driver->remove_event($event); $reload = true; break; case "dismiss": @@ -429,11 +429,13 @@ class calendar extends rcube_plugin if ($success) $this->rc->output->show_message('successfullysaved', 'confirmation'); + else if ($removed) + $this->rc->output->show_message('calendar.successremoval', 'confirmation'); else $this->rc->output->show_message('calendar.errorsaving', 'error'); // FIXME: update a single event object on the client instead of reloading the entire source - if ($success && $reload) + if ($success && $reload or ($removed && $reload)) $this->rc->output->command('plugin.reload_calendar', array('source' => $event['calendar'])); } diff --git a/plugins/calendar/drivers/kolab/kolab_driver.php b/plugins/calendar/drivers/kolab/kolab_driver.php index 3a54c455..3e9a1869 100644 --- a/plugins/calendar/drivers/kolab/kolab_driver.php +++ b/plugins/calendar/drivers/kolab/kolab_driver.php @@ -209,9 +209,8 @@ class kolab_driver extends calendar_driver public function remove_event($event) { if (($storage = $this->_get_storage($event['calendar'])) && ($ev = $storage->get_event($event['id']))) - $rt = $storage->delete_event($event + $ev); - if($rt==true) - $this->rc->output->show_message('calendar.successremoval', 'success'); return $rt; + return $storage->delete_event($event); + return false; }