Community projects: add filtering and sorting

This commit is contained in:
argirok 2023-10-04 16:04:42 +03:00
parent 3cf65ef134
commit 5e7d10b96b
1 changed files with 6 additions and 1 deletions

View File

@ -10,11 +10,12 @@ export class SearchCommunityProjectsService {
searchProjects (properties:EnvProperties, pid: string, page=1, size=500):any { searchProjects (properties:EnvProperties, pid: string, page=1, size=500):any {
this.searchProjectsWithPaging(properties,pid,page, size, null, null); this.searchProjectsWithPaging(properties,pid,page, size, null, null);
} }
searchProjectsWithPaging (properties:EnvProperties, pid: string, page=1, size=500, searchFilter, funder):any { searchProjectsWithPaging (properties:EnvProperties, pid: string, page=1, size=500, searchFilter, funder, orderBy = "name"):any {
let params = funder ? ["funder="+ funder] :[]; let params = funder ? ["funder="+ funder] :[];
if (searchFilter) { if (searchFilter) {
params.push("searchFilter="+ searchFilter) params.push("searchFilter="+ searchFilter)
} }
params.push("orderBy="+ orderBy);
let url = properties.communityAPI+pid+"/projects/"+ (page-1) + "/" + size + (params.length > 0?"?" + params.join("&"):""); let url = properties.communityAPI+pid+"/projects/"+ (page-1) + "/" + size + (params.length > 0?"?" + params.join("&"):"");
return this.http.get((properties.useCache)? (properties.cacheUrl+encodeURIComponent(url)): url); return this.http.get((properties.useCache)? (properties.cacheUrl+encodeURIComponent(url)): url);
} }
@ -23,4 +24,8 @@ export class SearchCommunityProjectsService {
return this.http.get((properties.useCache) ? (properties.cacheUrl + encodeURIComponent(url)) : url) return this.http.get((properties.useCache) ? (properties.cacheUrl + encodeURIComponent(url)) : url)
.pipe(map(res => res['totalElements'])); .pipe(map(res => res['totalElements']));
} }
getProjectFunders(properties:EnvProperties,pid:string) {
let url = properties.communityAPI+pid+"/funders";
return this.http.get<string[]>((properties.useCache) ? (properties.cacheUrl + encodeURIComponent(url)) : url);
}
} }