/** @return \models\EventRecurSetModel **/ public function getForEvent(EventModel $event) { global $DB; $eventRecurSet = $this->loadForEvent($event); if (!$eventRecurSet) { try { $DB->beginTransaction(); $stat = $DB->prepare("INSERT INTO event_recur_set (created_at) VALUES (:created_at) RETURNING id"); $stat->execute(array('created_at' => \TimeSource::getFormattedForDataBase())); $data = $stat->fetch(); $eventRecurSet = new EventRecurSetModel(); $eventRecurSet->setId($data['id']); $stat = $DB->prepare("UPDATE event_information SET event_recur_set_id = :ersi WHERE id = :id"); $stat->execute(array('ersi' => $eventRecurSet->getId(), 'id' => $event->getId())); $DB->commit(); } catch (Exception $e) { $DB->rollBack(); } } return $eventRecurSet; }