Ejemplo n.º 1
0
 public function canReplyToTopic(Topic $topic, Forum $forum = null)
 {
     if ($topic->isClosed()) {
         return false;
     }
     if (!$topic->getBoard()) {
         return false;
     }
     if (!$this->canShowTopic($topic, $forum)) {
         return false;
     }
     if (!$topic->getBoard()->isAuthorisedToReplyToTopic($this->securityContext)) {
         return false;
     }
     return true;
 }
 /**
  *
  * @access public
  * @param  \CCDNForum\ForumBundle\Entity\Forum                        $forum
  * @param  \CCDNForum\ForumBundle\Entity\Topic                        $topic
  * @return \CCDNForum\ForumBundle\Component\Crumbs\Factory\CrumbTrail
  */
 public function addUserTopicShow(Forum $forum, Topic $topic)
 {
     return $this->addUserBoardShow($forum, $topic->getBoard())->add($topic->getTitle(), array('route' => 'ccdn_forum_user_topic_show', 'params' => array('forumName' => $forum->getName(), 'topicId' => $topic->getId())));
 }
 /**
  *
  * @access protected
  * @param  \CCDNForum\ForumBundle\Entity\Topic      $topic
  * @return null|\CCDNForum\ForumBundle\Entity\Board
  */
 private function extractBoardFromTopic(Topic $topic)
 {
     if ($topic) {
         if ($topic->getId()) {
             return $topic->getBoard();
         }
     }
     return null;
 }