/** * @param Portfolio $portfolio * * @return array */ public function getPortfolioData(Portfolio $portfolio) { /** @var \Icap\PortfolioBundle\Entity\PortfolioWidget[] $portfolioWidgets */ $portfolioWidgets = $this->widgetsManager->getByPortfolioForGridster($portfolio); /** @var \Icap\PortfolioBundle\Entity\PortfolioComment[] $comments */ $comments = $this->entityManager->getRepository('IcapPortfolioBundle:PortfolioComment')->findSome($portfolio); $data = array('id' => $portfolio->getId(), 'title' => $portfolio->getTitle(), 'portfolioWidgets' => []); foreach ($portfolioWidgets as $portfolioWidget) { $data['portfolioWidgets'][] = $this->widgetsManager->getPortfolioWidgetData($portfolioWidget); } $commentsDatas = array(); foreach ($comments as $comment) { $commentsDatas[] = $comment->getData(); } $data['comments'] = $commentsDatas; $data['unreadComments'] = $portfolio->getCountUnreadComments(); $data['commentsViewAt'] = $portfolio->getCommentsViewAt()->format(DATE_W3C); return $data; }
/** * @param WidgetFindEvent $widgetFindEvent * * @DI\Observe("icap_portfolio_widget_find_userInformation") * @DI\Observe("icap_portfolio_widget_find_text") * @DI\Observe("icap_portfolio_widget_find_skills") * @DI\Observe("icap_portfolio_widget_find_formations") * @DI\Observe("icap_portfolio_widget_find_experience") */ public function onWidgetFind(WidgetFindEvent $widgetFindEvent) { $widgetFindEvent->setWidget($this->widgetManager->getWidget($widgetFindEvent->getWidgetType(), $widgetFindEvent->getWidgetId(), $widgetFindEvent->getUser())); }