Skip to content

Commit c6d0c9b

Browse files
authored
Merge pull request #4526 from topcoder-platform/issue-4380
Issue#4380 - Removed proxyApi and change isRegistered function
2 parents d0a0846 + 476e844 commit c6d0c9b

File tree

4 files changed

+9
-95
lines changed

4 files changed

+9
-95
lines changed

src/server/index.js

-63
Original file line numberDiff line numberDiff line change
@@ -145,69 +145,6 @@ async function onExpressJsSetup(server) {
145145
tcCommunitiesDemoApi,
146146
);
147147

148-
// Get roleId by name
149-
server.use(
150-
'/community-app-assets/api/challenges/roleId',
151-
async (req, res, next) => {
152-
let tokenM2M = '';
153-
try {
154-
tokenM2M = await services.api.getTcM2mToken();
155-
} catch (err) {
156-
logger.error('proxyApi-roleId-getTcM2mToken : ', err);
157-
}
158-
159-
const params = {
160-
name: req.query.name,
161-
isActive: true,
162-
};
163-
const url = `${config.API.V5}/resource-roles?${qs.stringify(params)}`;
164-
try {
165-
let data = await fetch(url, {
166-
headers: { Authorization: `Bearer ${tokenM2M}` },
167-
});
168-
data = await data.text();
169-
res.send(data);
170-
} catch (err) {
171-
next(err);
172-
}
173-
},
174-
);
175-
176-
// Get registrants from challenge
177-
server.use(
178-
'/community-app-assets/api/challenges/:challengeId/registrants',
179-
async (req, res, next) => {
180-
let tokenM2M = '';
181-
let roleId = '';
182-
try {
183-
tokenM2M = await services.api.getTcM2mToken();
184-
} catch (err) {
185-
logger.error('proxyApi-registrants-getTcM2mToken : ', err);
186-
}
187-
188-
try {
189-
roleId = await services.challenge.getService().getRoleId('Submitter');
190-
} catch (err) {
191-
logger.error('proxyApi-registrants-getRoleId : ', err);
192-
}
193-
194-
const params = {
195-
challengeId: req.params.challengeId,
196-
roleId,
197-
};
198-
const url = `${config.API.V5}/resources?${qs.stringify(params)}`;
199-
try {
200-
let data = await fetch(url, {
201-
headers: { Authorization: `Bearer ${tokenM2M}` },
202-
});
203-
data = await data.text();
204-
res.send(data);
205-
} catch (err) {
206-
next(err);
207-
}
208-
},
209-
);
210-
211148
server.use(
212149
'/community-app-assets/api/edit-contentful-entry/:id',
213150
(req, res) => res.redirect(`${CMS_BASE_URL}/entries/${req.params.id}`),

src/shared/containers/SubmissionManagement/index.jsx

+1-6
Original file line numberDiff line numberDiff line change
@@ -52,21 +52,18 @@ class SubmissionManagementPageContainer extends React.Component {
5252
deleting,
5353
loadingSubmissionsForChallengeId,
5454
submissionPhaseStartDate,
55-
handle,
5655
isLoadingChallenge,
5756
mySubmissions,
5857
onCancelSubmissionDelete,
5958
onDownloadSubmission,
6059
onShowDetails,
6160
onSubmissionDelete,
6261
onSubmissionDeleteConfirmed,
63-
registrants,
6462
showDetails,
6563
showModal,
6664
toBeDeletedId,
6765
} = this.props;
68-
const isRegistered = registrants.find(r => _.toString(r.memberHandle) === _.toString(handle));
69-
if (!isRegistered) return <AccessDenied redirectLink={`${challengesUrl}/${challenge.id}`} cause={ACCESS_DENIED_REASON.HAVE_NOT_SUBMITTED_TO_THE_CHALLENGE} />;
66+
if (!challenge.isRegistered) return <AccessDenied redirectLink={`${challengesUrl}/${challenge.id}`} cause={ACCESS_DENIED_REASON.HAVE_NOT_SUBMITTED_TO_THE_CHALLENGE} />;
7067

7168
const isEmpty = _.isEmpty(challenge);
7269
const smConfig = {
@@ -189,8 +186,6 @@ SubmissionManagementPageContainer.propTypes = {
189186
toBeDeletedId: PT.number,
190187
onSubmissionDeleteConfirmed: PT.func.isRequired,
191188
submissionPhaseStartDate: PT.string.isRequired,
192-
registrants: PT.arrayOf(PT.object).isRequired,
193-
handle: PT.string.isRequired,
194189
};
195190

196191
function mapStateToProps(state, props) {

src/shared/containers/SubmissionPage.jsx

+2-8
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,6 @@ import { PrimaryButton } from 'topcoder-react-ui-kit';
1313
import shortId from 'shortid';
1414
import React from 'react';
1515
import PT from 'prop-types';
16-
import _ from 'lodash';
1716
import { connect } from 'react-redux';
1817
import SubmissionsPage from 'components/SubmissionPage';
1918
import AccessDenied, { CAUSE as ACCESS_DENIED_REASON } from 'components/tc-communities/AccessDenied';
@@ -52,9 +51,8 @@ class SubmissionsPageContainer extends React.Component {
5251
}
5352

5453
render() {
55-
const { registrants, handle, challengeId } = this.props;
56-
const isRegistered = registrants.find(r => _.toString(r.memberHandle) === _.toString(handle));
57-
if (!isRegistered) {
54+
const { challenge, challengeId } = this.props;
55+
if (!challenge.isRegistered) {
5856
return (
5957
<React.Fragment>
6058
<AccessDenied cause={ACCESS_DENIED_REASON.NOT_AUTHORIZED}>
@@ -134,9 +132,7 @@ SubmissionsPageContainer.propTypes = {
134132
updateNotesLength: PT.func.isRequired,
135133
setSubmissionFilestackData: PT.func.isRequired,
136134
submissionFilestackData: filestackDataProp.isRequired,
137-
registrants: PT.arrayOf(PT.object).isRequired,
138135
winners: PT.arrayOf(PT.object).isRequired,
139-
handle: PT.string.isRequired,
140136
};
141137

142138
/**
@@ -174,9 +170,7 @@ const mapStateToProps = (state, ownProps) => {
174170
filePickers: submission.filePickers,
175171
notesLength: submission.notesLength,
176172
submissionFilestackData: submission.submissionFilestackData,
177-
registrants: state.challenge.details.registrants,
178173
winners: state.challenge.details.winners,
179-
handle: state.auth.user ? state.auth.user.handle : '',
180174
};
181175
};
182176

src/shared/containers/challenge-detail/index.jsx

+6-18
Original file line numberDiff line numberDiff line change
@@ -112,13 +112,6 @@ function getOgImage(challenge, challengeTypes) {
112112
}
113113
}
114114

115-
function isRegistered(registrants, handle) {
116-
if (_.find(registrants, r => _.toString(r.memberHandle) === _.toString(handle))) {
117-
return true;
118-
}
119-
return false;
120-
}
121-
122115
// The container component
123116
class ChallengeDetailPageContainer extends React.Component {
124117
constructor(props, context) {
@@ -394,11 +387,6 @@ class ChallengeDetailPageContainer extends React.Component {
394387
const isEmpty = _.isEmpty(challenge);
395388
const isLegacyMM = isMM(challenge) && Boolean(challenge.roundId);
396389

397-
const hasRegistered = isRegistered(
398-
challenge.registrants,
399-
(auth.user || {}).handle,
400-
);
401-
402390
if (isLoadingChallenge || isLoadingTerms) {
403391
return <LoadingPagePlaceholder />;
404392
}
@@ -475,12 +463,12 @@ class ChallengeDetailPageContainer extends React.Component {
475463
}
476464
unregistering={unregistering}
477465
checkpoints={checkpoints}
478-
hasRegistered={hasRegistered}
466+
hasRegistered={challenge.isRegistered}
479467
hasFirstPlacement={hasFirstPlacement}
480468
challengeSubtracksMap={challengeSubtracksMap}
481469
isMenuOpened={isMenuOpened}
482470
submissionEnded={submissionEnded}
483-
mySubmissions={hasRegistered ? mySubmissions : []}
471+
mySubmissions={challenge.isRegistered ? mySubmissions : []}
484472
/>
485473
)
486474
}
@@ -494,7 +482,7 @@ class ChallengeDetailPageContainer extends React.Component {
494482
description={challenge.name}
495483
detailedRequirements={challenge.description}
496484
terms={terms}
497-
hasRegistered={hasRegistered}
485+
hasRegistered={challenge.isRegistered}
498486
savingChallenge={savingChallenge}
499487
setSpecsTabState={setSpecsTabState}
500488
specsTabState={specsTabState}
@@ -554,7 +542,7 @@ class ChallengeDetailPageContainer extends React.Component {
554542
this.setState({ notFoundCountryFlagUrl });
555543
}}
556544
onSortChange={sort => this.setState({ submissionsSort: sort })}
557-
hasRegistered={hasRegistered}
545+
hasRegistered={challenge.isRegistered}
558546
unregistering={unregistering}
559547
isLegacyMM={isLegacyMM}
560548
submissionEnded={submissionEnded}
@@ -568,14 +556,14 @@ class ChallengeDetailPageContainer extends React.Component {
568556
<MySubmissions
569557
challengesUrl={challengesUrl}
570558
challenge={challenge}
571-
hasRegistered={hasRegistered}
559+
hasRegistered={challenge.isRegistered}
572560
unregistering={unregistering}
573561
submissionEnded={submissionEnded}
574562
isLegacyMM={isLegacyMM}
575563
loadingMMSubmissionsForChallengeId={loadingMMSubmissionsForChallengeId}
576564
auth={auth}
577565
loadMMSubmissions={loadMMSubmissions}
578-
mySubmissions={hasRegistered ? mySubmissions : []}
566+
mySubmissions={challenge.isRegistered ? mySubmissions : []}
579567
reviewTypes={reviewTypes}
580568
submissionsSort={mySubmissionsSort}
581569
onSortChange={sort => this.setState({ mySubmissionsSort: sort })}

0 commit comments

Comments
 (0)