/** * Add the passed event (which has been generated by generate()) to persistence. * * This only happens for top-level-events. All events which are attached to some parent event are persisted * together with the parent. * * @param Event $nodeEvent * @return void * @see emit() */ public function add(Event $nodeEvent) { if (!$this->isEnabled()) { throw new Exception('Event log not enabled', 1418464935); } if ($nodeEvent->getParentEvent() === null) { $this->eventRepository->add($nodeEvent); } }
/** * Show event overview. * * @return void */ public function indexAction() { $events = $this->eventRepository->findRelevantEvents()->toArray(); $eventsByDate = array(); foreach ($events as $event) { if ($event instanceof NodeEvent && $event->getWorkspaceName() !== 'live') { continue; } /* @var $event Event */ $day = $event->getTimestamp()->format('Y-m-d'); if (!isset($eventsByDate[$day])) { $eventsByDate[$day] = new EventsOnDate($event->getTimestamp()); } /* @var $eventsOnThisDay EventsOnDate */ $eventsOnThisDay = $eventsByDate[$day]; $eventsOnThisDay->add($event); } $this->view->assign('eventsByDate', $eventsByDate); }
/** * Show event overview. * @param integer $offset * @param integer $limit * @return void */ public function indexAction($offset = 0, $limit = 10) { $events = $this->eventRepository->findRelevantEventsByWorkspace($offset, $limit + 1, 'live')->toArray(); $nextPage = null; if (count($events) > $limit) { $events = array_slice($events, 0, $limit); $nextPage = $this->controllerContext->getUriBuilder()->setCreateAbsoluteUri(true)->uriFor('Index', array('offset' => $offset + $limit), 'History', 'TYPO3.Neos'); } $eventsByDate = array(); foreach ($events as $event) { /* @var $event Event */ $day = $event->getTimestamp()->format('Y-m-d'); if (!isset($eventsByDate[$day])) { $eventsByDate[$day] = new EventsOnDate($event->getTimestamp()); } /* @var $eventsOnThisDay EventsOnDate */ $eventsOnThisDay = $eventsByDate[$day]; $eventsOnThisDay->add($event); } $this->view->assignMultiple(array('eventsByDate' => $eventsByDate, 'nextPage' => $nextPage)); }