public function create(EventModel $event) { $stat = $this->siteContainer['databasehelper']->getPDO()->prepare("INSERT INTO event_information " . "(slug, summary, description, url, country_id, area_id, timezone, start_at,end_at )" . " VALUES " . "(:slug, :summary, :description, :url, :country_id, :area_id, :timezone, :start_at, :end_at)"); $stat->execute(array('slug' => $event->getSlug(), 'summary' => $event->getTitle(), 'description' => $event->getDescription(), 'url' => $event->getUrl(), 'country_id' => $event->getCountryId(), 'area_id' => $event->getAreaId(), 'timezone' => $event->getTimezone(), 'start_at' => $event->getStart()->getTimestamp(), 'end_at' => $event->getEnd()->getTimestamp())); $event->setId($this->siteContainer['databasehelper']->getPDO()->lastInsertId()); }
public function addEvent(EventModel $event) { if (!$event->getSlug()) { $this->warnings[] = new DataWarningEventHasNoSlug(); $event->createSlug(); } if ($this->siteContainer['eventrepository']->loadBySlug($event->getSlug())) { $this->errors[] = new DataErrorTwoEventsHaveSameSlugs(); } if ($event->getStart()->getTimestamp() > $event->getEnd()->getTimestamp()) { $this->errors[] = new DataErrorEndBeforeStart(); } $this->siteContainer['log']->info("Adding event", array('event' => $event->getDataForLoggerInfo())); $this->siteContainer['eventrepository']->create($event); }