/** * List of participants for event * * @param Event $event Event * @param int $count Count * * @return array * * @Template() */ public function widgetAction(Event $event, $count) { $participants = $event->getTickets()->getValues(); // @todo якось не так... if ($count > 1) { shuffle($participants); $participants = array_slice($participants, 0, $count); } return array('event' => $event, 'participants' => $participants); }
/** * Event page submenu * * @param Request $request Request * @param Event $event Event * * @return \Knp\Menu\MenuItem */ public function createEventSubMenu(Request $request, Event $event) { $menu = $this->factory->createItem('root'); $menu->setUri($request->getRequestUri()); $menu->addChild("О событии", array('route' => 'event_show', 'routeParameters' => array('event_slug' => $event->getSlug()))); if ($event->getSpeakers()) { $menu->addChild("Докладчики", array('route' => 'event_speakers', 'routeParameters' => array('event_slug' => $event->getSlug()))); } if ($event->getTickets()) { $menu->addChild("Участники", array('route' => 'event_participants', 'routeParameters' => array('event_slug' => $event->getSlug()))); } // ссылки на страницы ивента foreach ($event->getPages() as $page) { if ($page->isShowInMenu()) { $menu->addChild($page->getTitle(), array('route' => 'event_page_show', 'routeParameters' => array('event_slug' => $event->getSlug(), 'page_slug' => $page->getSlug()))); } } return $menu; }