Skip to content

Commit 9036f0b

Browse files
DeveloperDeveloper
Developer
authored and
Developer
committed
Fix for Issue topcoder-platform#2391
1 parent 80bda72 commit 9036f0b

File tree

1 file changed

+37
-4
lines changed
  • src/shared/containers/challenge-listing/Listing

1 file changed

+37
-4
lines changed

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

Lines changed: 37 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -34,6 +34,20 @@ 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+
50+
3751
export class ListingContainer extends React.Component {
3852
componentDidMount() {
3953
const {
@@ -175,14 +189,33 @@ export class ListingContainer extends React.Component {
175189
if (!filter) {
176190
return f;
177191
}
192+
178193
if (filter.tags) {
179194
f.keywords = filter.tags.join(',');
180195
}
181-
if (filter.subtracks) {
182-
f.subTrack = filter.subtracks.join(',');
183-
}
196+
197+
const finalTracks = _.clone(filter.tracks) || {};
198+
var finalSubTracks = _.clone(filter.subtracks);
199+
184200
if (filter.tracks) {
185-
const tracks = Object.keys(filter.tracks).map(t => t.toUpperCase());
201+
finalSubTracks = [];
202+
if (filter.tracks.design) {
203+
finalSubTracks = _.concat(finalSubTracks, DESIGN_TRACK_ONLY);
204+
}
205+
206+
if (filter.tracks.develop && !filter.tracks.data_science) {
207+
finalSubTracks = _.concat(finalSubTracks, DEVELOP_TRACK_ONLY);
208+
} else if (!filter.tracks.develop && filter.tracks.data_science) {
209+
finalTracks['develop'] = true;
210+
finalSubTracks = _.concat(finalSubTracks, DATASCIENCE_TRACK_ONLY);
211+
}
212+
}
213+
214+
if (finalSubTracks) {
215+
f.subTrack = finalSubTracks.join(',');
216+
}
217+
if (filter.tracks && finalTracks) {
218+
const tracks = Object.keys(finalTracks).map(t => t.toUpperCase());
186219
f.track = tracks.join(',');
187220
}
188221
if (filter.text) {

0 commit comments

Comments
 (0)