$tagger = Kronolith::getTagger();
$tagger->replaceTags($event->uid, array(), 'event');
+ /* Remove any geolocation data */
+ if ($gDriver = Kronolith::getGeoDriver()) {
+ $gDriver->deleteLocation($event->id);
+ }
+
/* Notify about the deleted event. */
if (!$silent) {
$result = Kronolith::sendNotification($event, 'delete');
return $driver;
}
+ /**
+ * Delete an entry from storage
+ *
+ * @param string $event_id
+ *
+ * @return void
+ */
+ public function deleteLocation($event_id)
+ {
+ $sql = "DELETE FROM kronolith_events_geo WHERE event_id = '" . $event_id . "'";
+ $result = $this->_write_db->query($sql);
+ if ($result instanceof PEAR_Error) {
+ throw new Horde_Exception($result->getMessage());
+ }
+ }
+
abstract public function setLocation($event_id, $point);
abstract public function getLocation($event_id);
abstract public function removeLocation($event_id);