Project

General

Profile

« Previous | Next » 

Revision 46237

addThis load in every router change - use component | Organizations Landing page execute separate query for projects (filters, paging) | fix browse links from home page

View differences:

fetchProjects.class.ts
4 4

  
5 5
export class FetchProjects{
6 6
  public results =[];
7

  
8
  public filters; // for getResultsForOrganizations
9
  public totalResults; // for getResultsForOrganizations // this is total results before filtering
10

  
7 11
  public sub: any;
8 12
  public subResults: any;
9 13
  public searchUtils:SearchUtilsClass = new SearchUtilsClass();
......
83 87
    );
84 88
  }
85 89

  
90
  public getResultsForOrganizations(organizationId:string, filterquery:string, page: number, size: number, refineFields:string[]){
91
    this._searchProjectsService.getProjectsForOrganizations(organizationId,filterquery, page, size,refineFields).subscribe(
92
        data => {
93
            this.searchUtils.totalResults = data[0]; // the results can be filtered so this number can be no total results
94
            console.info("search Projects for Organization: [Id:"+organizationId+" ]  [total results:"+this.searchUtils.totalResults+"]");
95
            this.results = data[1];
96
            if(refineFields && refineFields.length > 0){
97
              this.filters = data[2];
98
              filterquery = decodeURIComponent(filterquery);
99
              
100
              console.log("---filterquery:"+filterquery);
101
              for(var i = 0; i < this.filters.length; i++){
86 102

  
103
                if(filterquery.indexOf(this.filters[i].filterId) !== -1){
104
                  console.log("this.filters[i].filterId:"+this.filters[i].filterId);
105
                  for(var j = 0; j < this.filters[i].values.length; j++){
106
                    console.log("this.filters[i].values[j].id:"+this.filters[i].values[j].id);
107
                      if(filterquery.indexOf(this.filters[i].values[j].id) !== -1){
108
                        this.filters[i].values[j].selected = true;
109
                      }
110
                  }
111
                }
112
              }
113
            }
114

  
115
            if(!this.totalResults && filterquery == ""){
116
              this.totalResults = this.searchUtils.totalResults;
117
            }
118
            var errorCodes:ErrorCodes = new ErrorCodes();
119
            this.searchUtils.status = errorCodes.DONE;
120
            if(this.searchUtils.totalResults == 0 ){
121
              this.searchUtils.status = errorCodes.NONE;
122
            }
123
        },
124
        err => {
125
            console.log(err);
126
             //TODO check erros (service not available, bad request)
127
            // if( ){
128
            //   this.searchUtils.status = ErrorCodes.ERROR;
129
            // }
130
            var errorCodes:ErrorCodes = new ErrorCodes();
131
            this.searchUtils.status = errorCodes.ERROR;
132
        }
133
    );
134
  }
135

  
136

  
87 137
}

Also available in: Unified diff