diff --git a/class.groups.plugin.php b/class.groups.plugin.php index 120f4b0..4133e76 100644 --- a/class.groups.plugin.php +++ b/class.groups.plugin.php @@ -602,7 +602,7 @@ public function discussionModel_beforeRecordAdvancedNotification_handler($sender } $data["HeadlineFormat"] = $headline; // Format to Html - $story = condense(Gdn_Format::to($discussion['Body'], $discussion['Format'])); + $story = Gdn::formatService()->renderHTML($discussion['Body'], $discussion['Format']); $message = $story; // htmlspecialchars(Gdn_Format::plainText($story, 'Html')); // We just converted it to HTML. Make sure everything downstream knows it. // Taking this HTML and feeding it into the Rich Format for example, would be invalid. @@ -659,7 +659,7 @@ public function commentModel_beforeRecordAdvancedNotification($sender, $args){ // $data["HeadlineFormat"] = 'The new discussion has been posted in the category ' . $categoryName . '.'; // Format to Html $discussionStory = condense(Gdn_Format::to($discussion['Body'], $discussion['Format'])); - $commentStory = condense(Gdn_Format::to($comment['Body'], $comment['Format'])); + $commentStory = Gdn::formatService()->renderHTML($comment['Body'],$comment['Format']); // We just converted it to HTML. Make sure everything downstream knows it. // Taking this HTML and feeding it into the required format for example, would be invalid. $data['Format'] = 'Html'; diff --git a/controllers/class.groupcontroller.php b/controllers/class.groupcontroller.php index a49c76b..a602586 100644 --- a/controllers/class.groupcontroller.php +++ b/controllers/class.groupcontroller.php @@ -89,6 +89,27 @@ public function index($GroupID = '') { $this->setData('Leaders', $this->GroupModel->getLeaders($GroupID)); $this->setData('Members', $this->GroupModel->getMembers($GroupID,[],'',30,0)); + $groupDiscussions = $this->GroupModel->getGroupDiscussionCategories($Group); + $defaultDiscussionUrl = '/post/discussion/'; + if($Group->Type == GroupModel::TYPE_REGULAR) { + if(count($groupDiscussions) > 0) { + $defaultDiscussionUrl .= $groupDiscussions[0]['UrlCode']; + } + } else if($Group->Type == GroupModel::TYPE_CHALLENGE) { + if(count($groupDiscussions) == 1) { + $defaultDiscussionUrl .= $groupDiscussions[0]['UrlCode']; + } else { + foreach ($groupDiscussions as $groupDiscussion) { + if ($groupDiscussion['Name'] == 'Code Questions') { + $defaultDiscussionUrl .= $groupDiscussion['UrlCode']; + break; + } + } + } + } + + $this->setData('DefaultDiscussionUrl', $defaultDiscussionUrl); + // Find all discussions with content from after DateMarkedRead. $discussionModel = new DiscussionModel(); $categoryIDs = $this->GroupModel->getAllGroupCategoryIDs($Group->GroupID); diff --git a/views/group/index.php b/views/group/index.php index eac6da6..79f1bd4 100644 --- a/views/group/index.php +++ b/views/group/index.php @@ -18,7 +18,7 @@ $groupModel = new GroupModel(); $currentTopcoderProjectRoles = Gdn::controller()->data('ChallengeCurrentUserProjectRoles'); $groupModel->setCurrentUserTopcoderProjectRoles($currentTopcoderProjectRoles); -$discussionCategories = $groupModel->getGroupDiscussionCategories($Group); + ?> @@ -30,13 +30,7 @@ canAddAnnouncement($Group)) { - if(count($discussionCategories) > 0 && $Group->Type == GroupModel::TYPE_REGULAR) { - // The group category is selected automatically - $firstCategory = $discussionCategories[0]; - echo anchor('New Announcement', '/post/discussion/'.$firstCategory['UrlCode'], 'Button Primary', ''); - } else { - echo anchor('New Announcement', '/post/discussion/', 'Button Primary', ''); - } + echo anchor('New Announcement', $this->data('DefaultDiscussionUrl'), 'Button Primary', ''); } ?> @@ -60,12 +54,7 @@ canAddDiscussion($Group)) { // The group category is selected automatically - if (count($discussionCategories) > 0 && $Group->Type == GroupModel::TYPE_REGULAR) { - $firstCategory = $discussionCategories[0]; - echo anchor('New Discussion', '/post/discussion/' . $firstCategory['UrlCode'], 'Button Primary', ''); - } else { - echo anchor('New Discussion', '/post/discussion/', 'Button Primary', ''); - } + echo anchor('New Discussion', $this->data('DefaultDiscussionUrl'), 'Button Primary', ''); } ?>