コード例 #1
0
 /**
  * @param DiscussionController $Sender
  */
 public function DiscussionController_Render_Before($Sender)
 {
     // Get the tags on this discussion.
     $Tags = TagModel::instance()->getDiscussionTags($Sender->Data('Discussion.DiscussionID'), TagModel::IX_EXTENDED);
     foreach ($Tags as $Key => $Value) {
         SetValue($Key, $Sender->Data['Discussion'], $Value);
     }
 }
コード例 #2
0
 /**
  * @param DiscussionController $Sender
  */
 public function DiscussionController_Render_Before($Sender, $Args)
 {
     $ConversationID = $Sender->Data('Discussion.Attributes.WhisperConversationID');
     if (!$ConversationID) {
         return;
     }
     if ($ConversationID === TRUE) {
         $UserIDs = $Sender->Data('Discussion.Attributes.WhisperUserIDs');
         // Grab the users that are in the conversaton.
         $WhisperUsers = array();
         foreach ($UserIDs as $UserID) {
             $WhisperUsers[] = array('UserID' => $UserID);
         }
     } else {
         // There is already a conversation so grab its users.
         $WhisperUsers = Gdn::SQL()->Select('UserID')->From('UserConversation')->Where('ConversationID', $ConversationID)->Where('Deleted', 0)->Get()->ResultArray();
         $UserIDs = ConsolidateArrayValuesByKey($WhisperUsers, 'UserID');
     }
     if (!Gdn::Session()->CheckPermission('Conversations.Moderation.Manage') && !in_array(Gdn::Session()->UserID, $UserIDs)) {
         $Sender->Data['Discussion']->Closed = TRUE;
         return;
     }
     Gdn::UserModel()->JoinUsers($WhisperUsers, array('UserID'));
     $Sender->SetData('WhisperUsers', $WhisperUsers);
 }
コード例 #3
0
 /**
  *
  * @param DiscussionController $Sender
  * @param type $Args
  * @return type
  */
 public function DiscussionController_AfterDiscussion_Handler($Sender, $Args)
 {
     if ($Sender->Data('Answers')) {
         include $Sender->FetchViewLocation('Answers', '', 'plugins/QnA');
     }
 }