Skip to content
This repository was archived by the owner on Mar 4, 2025. It is now read-only.

Commit ba806b9

Browse files
committed
Merge branch 'dev' into appeals-buttons-in-details
controller.js
2 parents 2026a83 + c21c590 commit ba806b9

File tree

4 files changed

+40
-5
lines changed

4 files changed

+40
-5
lines changed

src/js/app/challenge-details/js/controllers/challenge-details-controller.js

Lines changed: 31 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -47,6 +47,10 @@
4747
challengeType = $location.search().type || 'develop';
4848

4949
var vm = this;
50+
51+
//Set mockUserRole to array ['value'] to mock a user role, undefined will set userRole value via challenge API
52+
//you can test for a user role using checkRole('role') function for true/false value.
53+
vm.mockUserRole = undefined;
5054
// default review style
5155
vm.reviewStyle = "";
5256
vm.reviewStyleTooltip = "";
@@ -66,7 +70,7 @@
6670
vm.activeTab = 'details';
6771
vm.domain = tcconfig.domain;
6872
vm.reviewAppURL = tcconfig.reviewAppURL;
69-
73+
7074
if (window.location.hash == '#viewRegistrant' || window.location.hash == '#/viewRegistrant') vm.activeTab = 'registrants';
7175
else if (window.location.hash == '#winner' || window.location.hash == '#/winner') vm.activeTab = 'results';
7276
else if (window.location.hash == '#submissions' || window.location.hash == '#/submissions') vm.activeTab = 'submissions';
@@ -82,6 +86,9 @@
8286
vm.checkpointPassedScreeningSubmissionPercentage = 0;
8387
vm.phaseProgram = null;
8488
vm.termsList = [];
89+
vm.challengeApiParams = {
90+
filter: 'id=' + challengeId
91+
}
8592

8693
$interval(function () {
8794
if (vm.challenge && vm.challenge.currentPhaseRemainingTime) {
@@ -92,7 +99,7 @@
9299
// Methods
93100
vm.registerToChallenge = registerToChallenge;
94101
vm.unregisterFromChallenge = unregisterFromChallenge;
95-
102+
vm.checkRole = checkRole;
96103
// functions
97104
$scope.round = Math.round;
98105
$scope.range = rangeFunction;
@@ -132,7 +139,16 @@
132139
initChallengeDetail(handle, vm, ChallengeService);
133140
}
134141
);
135-
142+
/**
143+
*
144+
* @param checkRole
145+
* @returns {true|false}
146+
*/
147+
function checkRole(checkRole) {
148+
return _.some(vm.userRole, function(role) {
149+
return role === checkRole;
150+
})
151+
}
136152
/**
137153
*
138154
* @param x
@@ -167,6 +183,18 @@
167183
ChallengeService.getChallengeTerms(challengeId).then(function(termsList) {
168184
vm.termsList = termsList;
169185
});
186+
ChallengeService
187+
.getUserChallenges(vm.handle, vm.challengeApiParams)
188+
.then(function (challenge) {
189+
if (challenge[0] && challenge[0].result.content.length) {
190+
challenge = challenge[0].result.content[0];
191+
vm.userRole = challenge.userDetails ? challenge.userDetails.roles : [];
192+
} else {
193+
vm.userRole = [];
194+
}
195+
//Set to test value if defined
196+
vm.userRole = vm.mockUserRole ? vm.mockUserRole : vm.userRole;
197+
});
170198
ChallengeService
171199
.getChallenge(challengeId)
172200
.then(function (challenge) {
@@ -177,7 +205,6 @@
177205
}, 100);
178206
$('#cdNgMain').show();
179207
});
180-
181208
}
182209

183210
function updateChallengeDetail() {

src/js/app/challenge-details/js/services/challenge-details-services.js

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -303,6 +303,10 @@
303303
return defer.promise;
304304
};
305305

306+
service.getUserChallenges = function(handle, params) {
307+
return servicev3.one('members', handle.toLowerCase()).all('challenges/').getList(params)
308+
}
309+
306310
return service;
307311
}
308312

src/js/app/submission-upload/js/controllers/controller.js

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -68,6 +68,10 @@
6868
vm.viewSubmission = false;
6969
}
7070

71+
vm.back = function() {
72+
window.location = '/challenge-details/'+challengeId+'/?type='+ challengeType
73+
}
74+
7175
function addFont() {
7276
vm.fonts.push({
7377
site: '',

src/js/app/submission-upload/partials/base.tpl.html

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
<div class="container" ng-class="{uploading : uCtrl.uploadState === 'uploading'}">
22
<span class="competitionType" ng-class="{ develop : uCtrl.challengeType === 'develop' }"></span>
33
<!-- /#end competition type-->
4-
<a ng-href="/challenge-details/{{uCtrl.challengeId}}/?type={{uCtrl.challengeType}}" class="back" href>Back to Active Challenge</a>
4+
<a ng-click="uCtrl.back()" ng-href="/challenge-details/{{uCtrl.challengeId}}/?type={{uCtrl.challengeType}}" class="back" href>Back to Active Challenge</a>
55
<h2 class="pageTitle" ng-bind="uCtrl.challenge.challengeName"></h2>
66
<!-- /#end page title-->
77

0 commit comments

Comments
 (0)