From 4d7c8c44f17ec1b298ee6b8244efc74f623c07e2 Mon Sep 17 00:00:00 2001 From: "Luiz R. Rodrigues" Date: Fri, 12 Jun 2020 12:19:02 -0300 Subject: [PATCH 1/2] Removed proxyApi to challenge details --- src/server/index.js | 63 --------------------------------------------- 1 file changed, 63 deletions(-) diff --git a/src/server/index.js b/src/server/index.js index c8da5ea563..38706d87ff 100644 --- a/src/server/index.js +++ b/src/server/index.js @@ -145,69 +145,6 @@ async function onExpressJsSetup(server) { tcCommunitiesDemoApi, ); - // Get roleId by name - server.use( - '/community-app-assets/api/challenges/roleId', - async (req, res, next) => { - let tokenM2M = ''; - try { - tokenM2M = await services.api.getTcM2mToken(); - } catch (err) { - logger.error('proxyApi-roleId-getTcM2mToken : ', err); - } - - const params = { - name: req.query.name, - isActive: true, - }; - const url = `${config.API.V5}/resource-roles?${qs.stringify(params)}`; - try { - let data = await fetch(url, { - headers: { Authorization: `Bearer ${tokenM2M}` }, - }); - data = await data.text(); - res.send(data); - } catch (err) { - next(err); - } - }, - ); - - // Get registrants from challenge - server.use( - '/community-app-assets/api/challenges/:challengeId/registrants', - async (req, res, next) => { - let tokenM2M = ''; - let roleId = ''; - try { - tokenM2M = await services.api.getTcM2mToken(); - } catch (err) { - logger.error('proxyApi-registrants-getTcM2mToken : ', err); - } - - try { - roleId = await services.challenge.getService().getRoleId('Submitter'); - } catch (err) { - logger.error('proxyApi-registrants-getRoleId : ', err); - } - - const params = { - challengeId: req.params.challengeId, - roleId, - }; - const url = `${config.API.V5}/resources?${qs.stringify(params)}`; - try { - let data = await fetch(url, { - headers: { Authorization: `Bearer ${tokenM2M}` }, - }); - data = await data.text(); - res.send(data); - } catch (err) { - next(err); - } - }, - ); - server.use( '/community-app-assets/api/edit-contentful-entry/:id', (req, res) => res.redirect(`${CMS_BASE_URL}/entries/${req.params.id}`), From 476e8441318a885df6e5e9a069e15e75900b575f Mon Sep 17 00:00:00 2001 From: "Luiz R. Rodrigues" Date: Fri, 12 Jun 2020 12:20:38 -0300 Subject: [PATCH 2/2] Updated isRegistered function, now Lib will return this. --- .../containers/SubmissionManagement/index.jsx | 7 +----- src/shared/containers/SubmissionPage.jsx | 10 ++------ .../containers/challenge-detail/index.jsx | 24 +++++-------------- 3 files changed, 9 insertions(+), 32 deletions(-) diff --git a/src/shared/containers/SubmissionManagement/index.jsx b/src/shared/containers/SubmissionManagement/index.jsx index b849323beb..769c6b5379 100644 --- a/src/shared/containers/SubmissionManagement/index.jsx +++ b/src/shared/containers/SubmissionManagement/index.jsx @@ -52,7 +52,6 @@ class SubmissionManagementPageContainer extends React.Component { deleting, loadingSubmissionsForChallengeId, submissionPhaseStartDate, - handle, isLoadingChallenge, mySubmissions, onCancelSubmissionDelete, @@ -60,13 +59,11 @@ class SubmissionManagementPageContainer extends React.Component { onShowDetails, onSubmissionDelete, onSubmissionDeleteConfirmed, - registrants, showDetails, showModal, toBeDeletedId, } = this.props; - const isRegistered = registrants.find(r => _.toString(r.memberHandle) === _.toString(handle)); - if (!isRegistered) return ; + if (!challenge.isRegistered) return ; const isEmpty = _.isEmpty(challenge); const smConfig = { @@ -189,8 +186,6 @@ SubmissionManagementPageContainer.propTypes = { toBeDeletedId: PT.number, onSubmissionDeleteConfirmed: PT.func.isRequired, submissionPhaseStartDate: PT.string.isRequired, - registrants: PT.arrayOf(PT.object).isRequired, - handle: PT.string.isRequired, }; function mapStateToProps(state, props) { diff --git a/src/shared/containers/SubmissionPage.jsx b/src/shared/containers/SubmissionPage.jsx index 4505291471..fec5e0170b 100644 --- a/src/shared/containers/SubmissionPage.jsx +++ b/src/shared/containers/SubmissionPage.jsx @@ -13,7 +13,6 @@ import { PrimaryButton } from 'topcoder-react-ui-kit'; import shortId from 'shortid'; import React from 'react'; import PT from 'prop-types'; -import _ from 'lodash'; import { connect } from 'react-redux'; import SubmissionsPage from 'components/SubmissionPage'; import AccessDenied, { CAUSE as ACCESS_DENIED_REASON } from 'components/tc-communities/AccessDenied'; @@ -52,9 +51,8 @@ class SubmissionsPageContainer extends React.Component { } render() { - const { registrants, handle, challengeId } = this.props; - const isRegistered = registrants.find(r => _.toString(r.memberHandle) === _.toString(handle)); - if (!isRegistered) { + const { challenge, challengeId } = this.props; + if (!challenge.isRegistered) { return ( @@ -134,9 +132,7 @@ SubmissionsPageContainer.propTypes = { updateNotesLength: PT.func.isRequired, setSubmissionFilestackData: PT.func.isRequired, submissionFilestackData: filestackDataProp.isRequired, - registrants: PT.arrayOf(PT.object).isRequired, winners: PT.arrayOf(PT.object).isRequired, - handle: PT.string.isRequired, }; /** @@ -174,9 +170,7 @@ const mapStateToProps = (state, ownProps) => { filePickers: submission.filePickers, notesLength: submission.notesLength, submissionFilestackData: submission.submissionFilestackData, - registrants: state.challenge.details.registrants, winners: state.challenge.details.winners, - handle: state.auth.user ? state.auth.user.handle : '', }; }; diff --git a/src/shared/containers/challenge-detail/index.jsx b/src/shared/containers/challenge-detail/index.jsx index b494f53ade..446be85b14 100644 --- a/src/shared/containers/challenge-detail/index.jsx +++ b/src/shared/containers/challenge-detail/index.jsx @@ -112,13 +112,6 @@ function getOgImage(challenge, challengeTypes) { } } -function isRegistered(registrants, handle) { - if (_.find(registrants, r => _.toString(r.memberHandle) === _.toString(handle))) { - return true; - } - return false; -} - // The container component class ChallengeDetailPageContainer extends React.Component { constructor(props, context) { @@ -394,11 +387,6 @@ class ChallengeDetailPageContainer extends React.Component { const isEmpty = _.isEmpty(challenge); const isLegacyMM = isMM(challenge) && Boolean(challenge.roundId); - const hasRegistered = isRegistered( - challenge.registrants, - (auth.user || {}).handle, - ); - if (isLoadingChallenge || isLoadingTerms) { return ; } @@ -469,12 +457,12 @@ class ChallengeDetailPageContainer extends React.Component { } unregistering={unregistering} checkpoints={checkpoints} - hasRegistered={hasRegistered} + hasRegistered={challenge.isRegistered} hasFirstPlacement={hasFirstPlacement} challengeSubtracksMap={challengeSubtracksMap} isMenuOpened={isMenuOpened} submissionEnded={submissionEnded} - mySubmissions={hasRegistered ? mySubmissions : []} + mySubmissions={challenge.isRegistered ? mySubmissions : []} /> ) } @@ -488,7 +476,7 @@ class ChallengeDetailPageContainer extends React.Component { description={challenge.name} detailedRequirements={challenge.description} terms={terms} - hasRegistered={hasRegistered} + hasRegistered={challenge.isRegistered} savingChallenge={savingChallenge} setSpecsTabState={setSpecsTabState} specsTabState={specsTabState} @@ -548,7 +536,7 @@ class ChallengeDetailPageContainer extends React.Component { this.setState({ notFoundCountryFlagUrl }); }} onSortChange={sort => this.setState({ submissionsSort: sort })} - hasRegistered={hasRegistered} + hasRegistered={challenge.isRegistered} unregistering={unregistering} isLegacyMM={isLegacyMM} submissionEnded={submissionEnded} @@ -562,14 +550,14 @@ class ChallengeDetailPageContainer extends React.Component { this.setState({ mySubmissionsSort: sort })}