Skip to content

Commit 0b28e97

Browse files
authored
Merge pull request #71 from topcoder-platform/issues-476
Issues-476: Fixed challenge roles for user photo links
2 parents c2baa3d + e9f0ab0 commit 0b28e97

File tree

1 file changed

+14
-3
lines changed

1 file changed

+14
-3
lines changed

class.groups.plugin.php

Lines changed: 14 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -753,7 +753,10 @@ public function base_userAnchor_handler($sender, $args){
753753
$anchorText = '<span class="topcoderHandle">'.$anchorText.'</span>';
754754
// Don't show Topcoder Challenge roles for admin roles
755755
if(!$isTopcoderAdmin){
756-
$anchorText = $anchorText . $this->topcoderProjectRolesText($user, $resources, $roleResources);
756+
$roles = $this->topcoderProjectRolesText($user, $resources, $roleResources);
757+
if($roles) {
758+
$anchorText = $anchorText . '&nbsp;<span class="challengeRoles">('.$roles. ')</span>';
759+
}
757760
}
758761
}
759762
}
@@ -764,19 +767,27 @@ public function base_userAnchor_handler($sender, $args){
764767
* @param $args
765768
*/
766769
public function base_userPhoto_handler($sender, $args){
767-
if($sender instanceof DiscussionController || $sender instanceof GroupController) {
770+
if($sender instanceof DiscussionController || $sender instanceof GroupController || $sender instanceof PostController) {
768771
$user = $args['User'];
769772
$anchorText = &$args['Title'];
773+
$isTopcoderAdmin = $args['IsTopcoderAdmin'];
770774
$resources = $sender->data('ChallengeResources');
771775
$roleResources = $sender->data('ChallengeRoleResources');
776+
// Don't show Topcoder Challenge roles for admin roles
777+
if(!$isTopcoderAdmin){
778+
$roles = $this->topcoderProjectRolesText($user, $resources, $roleResources);
779+
if($roles) {
780+
$anchorText = $anchorText.'&nbsp;('.$roles. ')';
781+
}
782+
}
772783
}
773784
}
774785

775786
private function topcoderProjectRolesText($user, $resources = null, $roleResources = null) {
776787
$roles = $this->getTopcoderProjectRoles($user, $resources, $roleResources);
777788
// FIX: https://github.com/topcoder-platform/forums/issues/476: Show only Copilot, Reviewer roles
778789
$displayedRoles = array_intersect(array_unique($roles), ["Copilot", "Reviewer"]);
779-
return count($displayedRoles) > 0 ? ' <span class="challengeRoles">(' . implode(', ', $displayedRoles) . ')</span>' : '';
790+
return count($displayedRoles) > 0 ? implode(', ', $displayedRoles) : '';
780791
}
781792

782793
/**

0 commit comments

Comments
 (0)