Skip to content

Commit 6eea441

Browse files
authored
Merge pull request #2718 from rashmi73/issue_2696
issue 2696 fix
2 parents f8cae09 + 7375bf2 commit 6eea441

File tree

1 file changed

+41
-3
lines changed
  • src/shared/containers/challenge-listing/Listing

1 file changed

+41
-3
lines changed

src/shared/containers/challenge-listing/Listing/index.jsx

+41-3
Original file line numberDiff line numberDiff line change
@@ -34,6 +34,19 @@ let mounted = false;
3434

3535
const SEO_PAGE_TITLE = 'Topcoder Challenges';
3636

37+
const DEVELOP_TRACK_ONLY = ['UI_PROTOTYPE_COMPETITION', 'ASSEMBLY_COMPETITION', 'FIRST_2_FINISH', 'BUG_HUNT', 'CODE',
38+
'DESIGN_FIRST_2_FINISH', 'DESIGN', 'DEVELOPMENT', 'ARCHITECTURE', 'CONCEPTUALIZATION',
39+
'TEST_SCENARIOS', 'CONTENT_CREATION', 'TEST_SUITES', 'SPECIFICATION', 'RIA_BUILD_COMPETITION',
40+
'WEB_DESIGNS', 'WIDGET_OR_MOBILE_SCREEN_DESIGN', 'APPLICATION_FRONT_END_DESIGN',
41+
'PRINT_OR_PRESENTATION', 'IDEA_GENERATION', 'WIREFRAMES', 'LOGO_DESIGN', 'BANNERS_OR_ICONS',
42+
'STUDIO_OTHER', 'FRONT_END_FLASH'];
43+
44+
const DESIGN_TRACK_ONLY = ['WEB_DESIGNS', 'WIDGET_OR_MOBILE_SCREEN_DESIGN', 'DESIGN_FIRST_2_FINISH',
45+
'APPLICATION_FRONT_END_DESIGN', 'PRINT_OR_PRESENTATION', 'IDEA_GENERATION', 'WIREFRAMES',
46+
'LOGO_DESIGN', 'BANNERS_OR_ICONS', 'STUDIO_OTHER', 'FRONT_END_FLASH'];
47+
48+
const DATASCIENCE_TRACK_ONLY = ['DEVELOP_MARATHON_MATCH', 'MARATHON_MATCH', 'SRM'];
49+
3750
export class ListingContainer extends React.Component {
3851
componentDidMount() {
3952
const {
@@ -171,6 +184,8 @@ export class ListingContainer extends React.Component {
171184
selectedCommunityId,
172185
} = this.props;
173186

187+
const finalTracks = _.clone(filter.tracks) || {};
188+
let finalSubTracks = _.clone(filter.subtracks);
174189

175190
const f = {};
176191
if (!filter) {
@@ -181,11 +196,34 @@ export class ListingContainer extends React.Component {
181196
f.keywords = filter.tags.join(',');
182197
}
183198

199+
if (filter.tracks) {
200+
if (!(!filter.tracks.design && filter.tracks.develop && filter.tracks.data_science)) {
201+
finalSubTracks = [];
202+
}
203+
204+
if (filter.tracks.design) {
205+
finalSubTracks = _.concat(finalSubTracks, DESIGN_TRACK_ONLY);
206+
}
207+
208+
if (filter.tracks.develop && !filter.tracks.data_science) {
209+
finalSubTracks = _.concat(finalSubTracks, DEVELOP_TRACK_ONLY);
210+
} else if (!filter.tracks.develop && filter.tracks.data_science) {
211+
if (!filter.subtracks) {
212+
finalTracks.develop = true;
213+
}
214+
finalSubTracks = _.concat(finalSubTracks, DATASCIENCE_TRACK_ONLY);
215+
}
216+
}
217+
184218
if (filter.subtracks) {
185-
f.subTrack = filter.subtracks.join(',');
219+
finalSubTracks = filter.subtracks;
186220
}
187-
if (filter.tracks) {
188-
const tracks = Object.keys(filter.tracks).map(t => t.toUpperCase());
221+
222+
if (finalSubTracks) {
223+
f.subTrack = finalSubTracks.join(',');
224+
}
225+
if (filter.tracks && finalTracks) {
226+
const tracks = Object.keys(finalTracks).map(t => t.toUpperCase());
189227
f.track = tracks.join(',');
190228
}
191229
if (filter.text) {

0 commit comments

Comments
 (0)