Skip to content

Commit 1c3bf64

Browse files
get user-specific challenges;
1 parent 790cec8 commit 1c3bf64

File tree

4 files changed

+28
-12
lines changed

4 files changed

+28
-12
lines changed

src/actions/challenges.js

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -58,7 +58,7 @@ import { removeChallengeFromPhaseProduct, saveChallengeAsPhaseProduct } from '..
5858
/**
5959
* Loads active challenges of project by page
6060
*/
61-
export function loadChallengesByPage (page, projectId, status, filterChallengeName = null, selfService = false) {
61+
export function loadChallengesByPage (page, projectId, status, filterChallengeName = null, selfService = false, userHandle = null) {
6262
return (dispatch, getState) => {
6363
dispatch({
6464
type: LOAD_CHALLENGES_PENDING,
@@ -87,6 +87,9 @@ export function loadChallengesByPage (page, projectId, status, filterChallengeNa
8787
}
8888
if (selfService) {
8989
filters.selfService = true
90+
if (userHandle) {
91+
filters.selfServiceCopilot = userHandle
92+
}
9093
}
9194

9295
return fetchChallenges(filters, {

src/components/ChallengesComponent/ChallengeList/index.js

Lines changed: 11 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -51,7 +51,7 @@ class ChallengeList extends Component {
5151
const { status, filterChallengeName, loadChallengesByPage, activeProjectId, selfService } = this.props
5252
this.setState({ searchText }, () => {
5353
if (status !== projectStatus || searchText !== filterChallengeName) {
54-
loadChallengesByPage(1, activeProjectId, projectStatus, searchText, selfService)
54+
loadChallengesByPage(1, activeProjectId, projectStatus, searchText, selfService, this.getHandle())
5555
}
5656
})
5757
}
@@ -64,7 +64,7 @@ class ChallengeList extends Component {
6464
const { searchText } = this.state
6565
const { page, loadChallengesByPage, activeProjectId, status, selfService } = this.props
6666
if (page !== pageNumber) {
67-
loadChallengesByPage(pageNumber, activeProjectId, status, searchText, selfService)
67+
loadChallengesByPage(pageNumber, activeProjectId, status, searchText, selfService, this.getHandle())
6868
}
6969
}
7070

@@ -74,7 +74,7 @@ class ChallengeList extends Component {
7474
reloadChallengeList () {
7575
const { searchText } = this.state
7676
const { page, loadChallengesByPage, activeProjectId, status, selfService } = this.props
77-
loadChallengesByPage(page, activeProjectId, status, searchText, selfService)
77+
loadChallengesByPage(page, activeProjectId, status, searchText, selfService, this.getHandle())
7878
}
7979

8080
/**
@@ -104,6 +104,10 @@ class ChallengeList extends Component {
104104
}
105105
}
106106

107+
getHandle () {
108+
return this.props.auth && this.props.auth.user ? this.props.auth.user.handle : null
109+
}
110+
107111
render () {
108112
const { searchText, errorMessage } = this.state
109113
const {
@@ -117,7 +121,8 @@ class ChallengeList extends Component {
117121
partiallyUpdateChallengeDetails,
118122
deleteChallenge,
119123
isBillingAccountExpired,
120-
selfService
124+
selfService,
125+
auth
121126
} = this.props
122127
if (warnMessage) {
123128
return <Message warnMessage={warnMessage} />
@@ -289,7 +294,8 @@ ChallengeList.propTypes = {
289294
partiallyUpdateChallengeDetails: PropTypes.func.isRequired,
290295
deleteChallenge: PropTypes.func.isRequired,
291296
isBillingAccountExpired: PropTypes.bool,
292-
selfService: PropTypes.bool
297+
selfService: PropTypes.bool,
298+
auth: PropTypes.object.isRequired
293299
}
294300

295301
export default ChallengeList

src/components/ChallengesComponent/index.js

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,8 @@ const ChallengesComponent = ({
2828
partiallyUpdateChallengeDetails,
2929
deleteChallenge,
3030
isBillingAccountExpired,
31-
selfService
31+
selfService,
32+
auth
3233
}) => {
3334
return (
3435
<Sticky top={10}>
@@ -78,6 +79,7 @@ const ChallengesComponent = ({
7879
deleteChallenge={deleteChallenge}
7980
isBillingAccountExpired={isBillingAccountExpired}
8081
selfService={selfService}
82+
auth={auth}
8183
/>
8284
)}
8385
</div>
@@ -104,7 +106,8 @@ ChallengesComponent.propTypes = {
104106
partiallyUpdateChallengeDetails: PropTypes.func.isRequired,
105107
deleteChallenge: PropTypes.func.isRequired,
106108
isBillingAccountExpired: PropTypes.bool,
107-
selfService: PropTypes.bool
109+
selfService: PropTypes.bool,
110+
auth: PropTypes.object.isRequired
108111
}
109112

110113
ChallengesComponent.defaultProps = {

src/containers/Challenges/index.js

Lines changed: 8 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -85,7 +85,8 @@ class Challenges extends Component {
8585
partiallyUpdateChallengeDetails,
8686
deleteChallenge,
8787
isBillingAccountExpired,
88-
selfService
88+
selfService,
89+
auth
8990
} = this.props
9091
const { searchProjectName, onlyMyProjects } = this.state
9192
const projectInfo = _.find(projects, { id: activeProjectId }) || {}
@@ -149,6 +150,7 @@ class Challenges extends Component {
149150
deleteChallenge={deleteChallenge}
150151
isBillingAccountExpired={isBillingAccountExpired}
151152
selfService={selfService}
153+
auth={auth}
152154
/>
153155
}
154156
</Fragment>
@@ -178,16 +180,18 @@ Challenges.propTypes = {
178180
partiallyUpdateChallengeDetails: PropTypes.func.isRequired,
179181
deleteChallenge: PropTypes.func.isRequired,
180182
isBillingAccountExpired: PropTypes.bool,
181-
selfService: PropTypes.bool
183+
selfService: PropTypes.bool,
184+
auth: PropTypes.object.isRequired
182185
}
183186

184-
const mapStateToProps = ({ challenges, sidebar, projects }) => ({
187+
const mapStateToProps = ({ challenges, sidebar, projects, auth }) => ({
185188
..._.omit(challenges, ['projectId']),
186189
challengeProjectId: challenges.projectId,
187190
activeProjectId: sidebar.activeProjectId,
188191
projects: sidebar.projects,
189192
projectDetail: projects.projectDetail,
190-
isBillingAccountExpired: projects.isBillingAccountExpired
193+
isBillingAccountExpired: projects.isBillingAccountExpired,
194+
auth: auth
191195
})
192196

193197
const mapDispatchToProps = {

0 commit comments

Comments
 (0)