/**
  * Get details.
  *
  * @return array
  */
 public function getNotificationDetails()
 {
     $receiver = $this->getReceiver();
     $notificationDetails = array('portfolio' => array('id' => $this->portfolio->getId(), 'title' => $this->portfolio->getTitle(), 'slug' => $this->portfolio->getSlug()), 'guide' => array('id' => $receiver->getId(), 'publicUrl' => $receiver->getPublicUrl(), 'lastName' => $receiver->getLastName(), 'firstName' => $receiver->getFirstName()));
     return $notificationDetails;
 }
 /**
  * @param Portfolio $portfolio
  * @param User      $user
  *
  * @return array
  */
 public function getUserGuidedPortfolioData(Portfolio $portfolio, User $user)
 {
     return array('type' => $user === $portfolio->getUser() ? 'owned' : 'guided', 'id' => $portfolio->getId(), 'title' => $portfolio->getTitle(), 'unreadComments' => $portfolio->getCountUnreadComments(), 'commentsViewAt' => $portfolio->getCommentsViewAt()->format(DATE_W3C));
 }
 /**
  * @param Portfolio $portfolio
  */
 public function __construct(Portfolio $portfolio)
 {
     $this->portfolio = $portfolio;
     $user = $portfolio->getUser();
     parent::__construct(self::ACTION, array('owner' => array('lastName' => $user->getLastName(), 'firstName' => $user->getFirstName()), 'portfolio' => array('id' => $this->portfolio->getId(), 'title' => $this->portfolio->getTitle(), 'slug' => $this->portfolio->getSlug())), null, null, null, null, null, $user, null, null, $this->portfolio->getId());
 }