lfapi

changeset 20:ebded25d6891

Updated general params to API revision 141
author bsw
date Sat Nov 05 18:58:44 2011 +0100 (2011-11-05)
parents 89c860338f9b
children 2fcdef9f0e9c
files lfapi/general_params.js
line diff
     1.1 --- a/lfapi/general_params.js	Sat Nov 05 12:29:19 2011 +0100
     1.2 +++ b/lfapi/general_params.js	Sat Nov 05 18:58:44 2011 +0100
     1.3 @@ -19,9 +19,8 @@
     1.4  // TODO limit to access privileges
     1.5  exports.addMemberOptions = function (req, query, params, relation) {
     1.6    var table_name = 'member';
     1.7 -  if (relation) {
     1.8 -    table_name = relation + '_member';
     1.9 -  };
    1.10 +  if (relation) table_name = relation + '_member';
    1.11 +
    1.12    var member_id = params[relation ? relation + '_member_id' : 'member_id'];
    1.13    var member_disabled = params[relation ? relation + '_member_disabled' : 'member_disabled'] ? true : false;
    1.14    var member_search = params[relation ? relation + '_member_search' : 'member_search'];
    1.15 @@ -31,11 +30,11 @@
    1.16    if (member_id) {
    1.17      query.addWhere(['"' + table_name + '"."id" IN (??)', member_id.split(',')]);
    1.18    };
    1.19 -  /*if (member_disabled == true) {
    1.20 +  if (member_disabled == 'only') {
    1.21      query.addWhere('"' + table_name + '"."active" = FALSE');
    1.22 -  } else {
    1.23 +  } else if (member_disabled != 'include') {
    1.24      query.addWhere('"' + table_name + '"."active" = TRUE OR "' + table_name + '"."active" ISNULL');
    1.25 -  };*/
    1.26 +  };
    1.27    if (member_search) {
    1.28      query.addWhere(['"' + table_name + '"."text_search_data" @@ text_search_query(?)', member_search]);
    1.29    };
    1.30 @@ -65,12 +64,12 @@
    1.31    if (params.unit_parent_id) {
    1.32      query.addWhere(['"unit"."parent_id" = ?', params.unit_parent_id]);
    1.33    }
    1.34 -  if (params.unit_without_parent) {
    1.35 +  if (params.unit_without_parent == '1') {
    1.36      query.addWhere('"unit"."parent_id" ISNULL');
    1.37    }
    1.38 -  if (params.unit_disabled) {
    1.39 +  if (params.unit_disabled == 'only') {
    1.40      query.addWhere('"unit"."active" = FALSE');
    1.41 -  } else {
    1.42 +  } else if (params.unit_disabled != 'include') {
    1.43      query.addWhere('"unit"."active" = TRUE');
    1.44    }
    1.45    if (params.unit_order_by_name) {
    1.46 @@ -84,9 +83,9 @@
    1.47    if (params.area_id) {
    1.48      query.addWhere(['"area"."id" IN (??)', params.area_id.split(',')]);
    1.49    }
    1.50 -  if (params.area_disabled) {
    1.51 +  if (params.area_disabled == 'only') {
    1.52      query.addWhere('"area"."active" = FALSE');
    1.53 -  } else {
    1.54 +  } else if (params.area_disabled == 'include') {
    1.55      query.addWhere('"area"."active" = TRUE');
    1.56    }
    1.57    if (req.current_access_level == 'member' && params.area_my) {
    1.58 @@ -116,12 +115,20 @@
    1.59      query.addWhere(['"issue"."state" IN (??)', issue_states]);
    1.60    };
    1.61    
    1.62 -  if (params.issue_accepted) query.addWhere('"issue"."accepted" NOTNULL');
    1.63 -  if (params.issue_half_frozen) query.addWhere('"issue"."half_frozen" NOTNULL');
    1.64 -  if (params.issue_fully_frozen) query.addWhere('"issue"."fully_frozen" NOTNULL');
    1.65 -  if (params.issue_closed) query.addWhere('"issue"."closed" NOTNULL');
    1.66 -  if (params.issue_cleaned) query.addWhere('"issue"."cleaned" NOTNULL');
    1.67 -  
    1.68 +  if (params.issue_accepted == '1') query.addWhere('"issue"."accepted" NOTNULL');
    1.69 +  if (params.issue_accepted == '0') query.addWhere('"issue"."accepted" ISNULL');
    1.70 +  if (params.issue_half_frozen == '1') query.addWhere('"issue"."half_frozen" NOTNULL');
    1.71 +  if (params.issue_half_frozen == '0') query.addWhere('"issue"."half_frozen" ISNULL');
    1.72 +  if (params.issue_fully_frozen == '1') query.addWhere('"issue"."fully_frozen" NOTNULL');
    1.73 +  if (params.issue_fully_frozen == '0') query.addWhere('"issue"."fully_frozen" ISNULL');
    1.74 +  if (params.issue_closed == '1') query.addWhere('"issue"."closed" NOTNULL');
    1.75 +  if (params.issue_closed == '0') query.addWhere('"issue"."closed" ISNULL');
    1.76 +  if (params.issue_cleaned == '1') query.addWhere('"issue"."cleaned" NOTNULL');
    1.77 +  if (params.issue_cleaned == '0') query.addWhere('"issue"."cleaned" ISNULL');
    1.78 +
    1.79 +  if (params.issue_ranks_available == '1') query.addWhere('"issue"."ranks_available"');
    1.80 +  if (params.issue_ranks_available == '0') query.addWhere('NOT "issue"."ranks_available"');
    1.81 +
    1.82    if (params.issue_created_after) query.addWhere(['"issue"."created" >= ?', params.issue_created_after]);
    1.83    if (params.issue_created_before) query.addWhere(['"issue"."created" < ?', params.issue_created_before]);
    1.84    if (params.issue_accepted_after) query.addWhere(['"issue"."accepted" >= ?', params.issue_accepted_after]);
    1.85 @@ -158,13 +165,16 @@
    1.86    //exports.addMemberOptions(query, params, 'initiator');
    1.87    //exports.addMemberOptions(query, params, 'supporter');
    1.88    
    1.89 -  if (params.initiative_revoked) query.addWhere('initiative.revoked NOTNULL');
    1.90 +  if (params.initiative_revoked == '1') query.addWhere('initiative.revoked NOTNULL');
    1.91 +  if (params.initiative_revoked == '0') query.addWhere('initiative.revoked ISNULL');
    1.92    if (params.initiative_revoked_after) query.addWhere(['initiative.revoked >= ?', params.initiative_revoked_after]);
    1.93    if (params.initiative_revoked_before) query.addWhere(['initiative.revoked < ?', params.initiative_revoked_before]);
    1.94 +  // TODO check accesslevel
    1.95    if (params.initiative_revoked_by_member_id) query.addWhere(['initiative.revoked_by_member_id = ?', params.initiative_revoked_by_member_id]);
    1.96    if (params.initiative_suggested_initiative_id) query.addWhere(['initiative.suggested_initiative_id = ?', params.initiative_suggested_initiative_id]);
    1.97  
    1.98 -  if (params.initiative_admitted) query.addWhere('initiative.admitted NOTNULL');
    1.99 +  if (params.initiative_admitted == '1') query.addWhere('initiative.admitted NOTNULL');
   1.100 +  if (params.initiative_admitted == '0') query.addWhere('initiative.admitted ISNULL');
   1.101    if (params.initiative_created_after) query.addWhere(['initiative.created >= ?', params.initiative_created_after]);
   1.102    if (params.initiative_created_before) query.addWhere(['initiative.created < ?',params.initiative_created_before]);
   1.103    if (params.initiative_admitted_after) query.addWhere(['initiative.admitted >= ?', params.initiative_admitted_after]);
   1.104 @@ -173,15 +183,20 @@
   1.105    if (params.initiative_supporter_count_below) query.addWhere(['initiative.supporter_count < ?', params.initiative_supporter_count_below]);
   1.106    if (params.initiative_supporter_count_above) query.addWhere(['initiative.supporter_count >= ?', params.initiative_supporter_count_above]);
   1.107  
   1.108 -  if (params.initiative_attainable) query.addWhere('initiative.attainable');
   1.109 -  if (params.initiative_favored) query.addWhere('initiative.favored');
   1.110 -  if (params.initiative_unfavored) query.addWhere('initiative.unfavored');
   1.111 +  if (params.initiative_attainable == '1') query.addWhere('initiative.attainable');
   1.112 +  if (params.initiative_attainable == '0') query.addWhere('NOT initiative.attainable');
   1.113 +  if (params.initiative_favored == '1') query.addWhere('initiative.favored');
   1.114 +  if (params.initiative_favored == '0') query.addWhere('NOT initiative.favored');
   1.115 +  if (params.initiative_unfavored == '1') query.addWhere('initiative.unfavored');
   1.116 +  if (params.initiative_unfavored == '0') query.addWhere('NOT initiative.unfavored');
   1.117  
   1.118    if (params.initiative_max_preliminary_rank) query.addWhere(['initiative.preliminary_rank <= ?', params.initiative_max_preliminary_rank]);
   1.119    if (params.initiative_max_final_rank) query.addWhere(['initiative.preliminary_rank <= ?', params.initiative_max_final_rank]);
   1.120  
   1.121 -  if (params.initiative_disqualified) query.addWhere('initiative.disqualified');
   1.122 -  if (params.initiative_winner) query.addWhere('initiative.winner');
   1.123 +  if (params.initiative_disqualified == '1') query.addWhere('initiative.disqualified');
   1.124 +  if (params.initiative_disqualified == '0') query.addWhere('NOT initiative.disqualified');
   1.125 +  if (params.initiative_winner == '1') query.addWhere('initiative.winner');
   1.126 +  if (params.initiative_winner == '0') query.addWhere('NOT initiative.winner');
   1.127  
   1.128    if (params.initiative_search) {
   1.129      query.addWhere(['initiative.text_search_data @@ text_search_query(?)', params.initiative_search]);

Impressum / About Us