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); }