Skip to content
This repository was archived by the owner on Jan 23, 2025. It is now read-only.

Commit ef5c712

Browse files
committedJun 18, 2015
Merge pull request #443 from appirio-tech/SUP-549-filter-based-on-event
filter based on event id
2 parents 15fe8d7 + e2417cb commit ef5c712

File tree

1 file changed

+12
-4
lines changed

1 file changed

+12
-4
lines changed
 

‎actions/challenges.js

+12-4
Original file line numberDiff line numberDiff line change
@@ -138,6 +138,9 @@ var PLATFORM_FILTER = ' AND EXISTS (SELECT 1 FROM project_platform pp WHERE pp.p
138138
/* Filter based on review type */
139139
var REVIEW_FILTER = ' AND EXISTS (SELECT 1 FROM project_info pi WHERE project_info_type_id = 79 AND value IN (@filter@) ' +
140140
'AND p.project_id = pi.project_id)';
141+
142+
/* Filter based on event */
143+
var EVENT_FILTER = ' AND NVL((select max(event_id) from contest_project_xref x, contest c where project_id = p.project_id and c.contest_id = x.contest_id), 0) IN (@filter@)';
141144

142145
/**
143146
* The challenge type filter for challenges api.
@@ -182,7 +185,7 @@ var MY_CHALLENGES_FILTER = 'AND EXISTS ' +
182185
var ALLOWABLE_QUERY_PARAMETER = [
183186
"listType", "challengeType", "challengeName", "projectId", SORT_COLUMN,
184187
"sortOrder", "pageIndex", "pageSize", "prizeLowerBound", "prizeUpperBound", "cmcTaskId", 'communityId',
185-
"submissionEndFrom", "submissionEndTo", "technologies", "platforms", 'review'];
188+
"submissionEndFrom", "submissionEndTo", "technologies", "platforms", 'review', 'event'];
186189

187190
/**
188191
* Represents a list of valid query parameter for split challenges api.
@@ -191,7 +194,7 @@ var ALLOWABLE_QUERY_PARAMETER = [
191194
var SPLIT_API_ALLOWABLE_QUERY_PARAMETER = [
192195
"challengeType", "challengeName", "projectId", SORT_COLUMN,
193196
"sortOrder", "pageIndex", "pageSize", "prizeLowerBound", "prizeUpperBound", 'communityId',
194-
"submissionEndFrom", "submissionEndTo", 'type', 'platforms', 'technologies', 'review'];
197+
"submissionEndFrom", "submissionEndTo", 'type', 'platforms', 'technologies', 'review', 'event'];
195198

196199
/**
197200
* Represents a predefined list of valid sort column for active challenge.
@@ -799,6 +802,11 @@ var addFilter = function (sql, filter, isMyChallenges, helper, caller) {
799802
sql.count = editSql(sql.count, REVIEW_FILTER, review);
800803
sql.data = editSql(sql.data, REVIEW_FILTER, review);
801804
}
805+
806+
if (_.isDefined(filter.event)) {
807+
sql.count = editSql(sql.count, EVENT_FILTER, filter.event);
808+
sql.data = editSql(sql.data, EVENT_FILTER, filter.event);
809+
}
802810

803811
if (isMyChallenges) {
804812
sql.count = editSql(sql.count, MY_CHALLENGES_FILTER, null);
@@ -894,7 +902,7 @@ var searchChallenges = function (api, connection, dbConnectionMap, community, ne
894902
query = connection.rawConnection.parsedURL.query,
895903
caller = connection.caller,
896904
copyToFilter = ["challengeType", "challengeName", "projectId", "prizeLowerBound",
897-
"prizeUpperBound", "cmcTaskId", 'communityId', "submissionEndFrom", "submissionEndTo", "technologies", "platforms", "review"],
905+
"prizeUpperBound", "cmcTaskId", 'communityId', "submissionEndFrom", "submissionEndTo", "technologies", "platforms", "review", "event"],
898906
sqlParams = {},
899907
filter = {},
900908
pageIndex,
@@ -3654,7 +3662,7 @@ var getChallenges = function (api, connection, listType, isMyChallenges, next) {
36543662
query = connection.rawConnection.parsedURL.query,
36553663
caller = connection.caller,
36563664
copyToFilter = ["challengeType", "challengeName", "projectId", "prizeLowerBound",
3657-
"prizeUpperBound", 'communityId', "submissionEndFrom", "submissionEndTo", 'type', 'technologies', 'platforms', 'review'],
3665+
"prizeUpperBound", 'communityId', "submissionEndFrom", "submissionEndTo", 'type', 'technologies', 'platforms', 'review', 'event'],
36583666
dbConnectionMap = connection.dbConnectionMap,
36593667
sqlParams = {},
36603668
filter = {},

0 commit comments

Comments
 (0)
This repository has been archived.