Skip to content

Commit cd1db15

Browse files
authored
Merge pull request #106 from topcoder-platform/develop
v1.9 - Self service app
2 parents 25f440d + cddf06f commit cd1db15

File tree

7 files changed

+288
-86
lines changed

7 files changed

+288
-86
lines changed

class.groups.plugin.php

Lines changed: 23 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -211,6 +211,7 @@ public function base_render_before($sender) {
211211

212212
public function base_groupOptionsDropdown_handler($sender, $args){
213213
$group = $args['Group'];
214+
$options = &$args['GroupOptionsDropdown'];
214215
// $currentTopcoderProjectRoles = $sender->Data['ChallengeCurrentUserProjectRoles'];
215216
$groupModel = new GroupModel();
216217
// $groupModel->setCurrentUserTopcoderProjectRoles($currentTopcoderProjectRoles);
@@ -226,6 +227,9 @@ public function base_groupOptionsDropdown_handler($sender, $args){
226227
$hasFollowed = $groupModel->hasFollowedGroup($group);
227228
$hasWatched = $groupModel->hasWatchedGroup($group);
228229

230+
if(hideInMFE()) {
231+
$options->setItems([]);
232+
}
229233
// self::log('base_groupOptionsDropdown_handler', ['Group' => $group->GroupID,
230234
// 'currentUserTopcoderProjectRoles' =>$currentTopcoderProjectRoles,
231235
// 'canDelete' => $canDelete, 'canEdit' => $canEdit, 'canLeave' => $canLeave,
@@ -328,6 +332,9 @@ public function base_discussionOptionsDropdown_handler($sender, $args){
328332
$options->removeItem('refetch');
329333
}
330334

335+
if(hideInMFE()) {
336+
$options->setItems([]);
337+
}
331338
self::log('discussionController_discussionOptionsDropdown_handler', ['Discussion' => $Discussion->DiscussionID,
332339
'canDelete' => $canDelete, 'canEdit' => $canEdit, 'canDismiss' => $canDismiss,
333340
'canAnnounce' =>$canAnnounce, 'canSink' => $canSink, 'canMove' => $canMove, 'canReFetch' => $canRefetch ]);
@@ -380,9 +387,9 @@ public function discussionController_discussionInfo_handler($sender, $args) {
380387
if($groupID) {
381388
$group = $groupModel->getByGroupID($groupID);
382389
if($group->ChallengeUrl) {
383-
echo anchor($group->Name, $group->ChallengeUrl);
390+
echo anchor($group->Name, hideInMFE() ? '' : $group->ChallengeUrl);
384391
} else {
385-
echo anchor($group->Name, GroupsPlugin::GROUP_ROUTE.$groupID);
392+
echo anchor($group->Name, hideInMFE() ? '' : GroupsPlugin::GROUP_ROUTE.$groupID);
386393
}
387394
}
388395
}
@@ -422,12 +429,15 @@ public function watchingController_afterChallenge_handler($sender, $args) {
422429
}
423430

424431
private function writeAfterChallenge($sender, $args) {
432+
if(hideInMFE()) {
433+
return;
434+
}
425435
$category = $args['Category'];
426436
$groupID = val('GroupID', $category);
427437
if($groupID) {
428438
$group = $this->groupModel->getByGroupID($groupID);
429439
$type = ucfirst(GroupsPlugin::UI[$group->Type]['TypeName']);
430-
echo '<span>'.$type.':</span>&nbsp;'.anchor( $group->Name, self::GROUP_ROUTE.$group->GroupID);
440+
echo '<div class="Challenge"><span>'.$type.':</span>&nbsp;'.anchor( $group->Name, self::GROUP_ROUTE.$group->GroupID).'</div>';
431441
}
432442
}
433443

@@ -647,7 +657,10 @@ public function categoryModel_getCategoryNotificationPreferences_create(Category
647657
//
648658
// EMAIL TEMPLATES
649659
//
650-
660+
private function buildEmbedEmailUrl($challengeID) {
661+
$mfeUrl = c("Garden.Embed.RemoteUrl");
662+
return $mfeUrl.'/self-service/work-items/'.$challengeID.'/?tab=messaging';
663+
}
651664
/**
652665
* New discussion has been posted
653666
* @param $sender
@@ -670,6 +683,9 @@ public function discussionModel_beforeRecordAdvancedNotification_handler($sender
670683
$group = $groupModel->getByGroupID($category['GroupID']);
671684
$groupName = $group->Name;
672685
$groupLink = $this->buildEmailGroupLink($group);
686+
$data['Data']['GroupID'] = val('GroupID', $group);
687+
$data['Data']['ChallengeID'] = val('ChallengeID', $group);
688+
$data['Data']['EmbedUrl'] = $this->buildEmbedEmailUrl(val('ChallengeID', $group));
673689
}
674690
$categoryBreadcrumbs = array_column(array_values(CategoryModel::getAncestors($discussion['CategoryID'])), 'Name');
675691
$dateInserted = Gdn_Format::dateFull($discussion['DateInserted']);
@@ -724,6 +740,9 @@ public function commentModel_beforeRecordAdvancedNotification($sender, $args){
724740
$group = $groupModel->getByGroupID($category['GroupID']);
725741
$groupName = $group->Name;
726742
$groupLink = $this->buildEmailGroupLink($group);
743+
$data['Data']['GroupID'] = val('GroupID', $group);
744+
$data['Data']['ChallengeID'] = val('ChallengeID', $group);
745+
$data['Data']['EmbedUrl'] = $this->buildEmbedEmailUrl(val('ChallengeID', $group));
727746
}
728747
$categoryBreadcrumbs = array_column(array_values(CategoryModel::getAncestors($discussion['CategoryID'])), 'Name');
729748
$discussionDateInserted = Gdn_Format::dateFull($discussion['DateInserted']);

0 commit comments

Comments
 (0)