Revision 53937
Added by Konstantina Galouni over 5 years ago
advancedSearchSoftware.component.ts | ||
---|---|---|
24 | 24 |
[disableForms]="disableForms" |
25 | 25 |
[loadPaging]="loadPaging" |
26 | 26 |
[oldTotalResults]="oldTotalResults" [(connectCommunityId)]=connectCommunityId [piwikSiteId]=piwikSiteId |
27 |
searchFormClass="softwareSearchForm"> |
|
27 |
searchFormClass="softwareSearchForm" |
|
28 |
[(sort)]=sort > |
|
28 | 29 |
</advanced-search-page> |
29 | 30 |
|
30 | 31 |
` |
... | ... | |
52 | 53 |
public oldTotalResults: number = 0; |
53 | 54 |
public pagingLimit: number = 0; |
54 | 55 |
public isPiwikEnabled; |
56 |
public sort: boolean = true; |
|
55 | 57 |
properties:EnvProperties; |
56 | 58 |
|
57 | 59 |
constructor (private route: ActivatedRoute, private _searchSoftwareService: SearchSoftwareService ) { |
... | ... | |
86 | 88 |
if(this.searchUtils.size != 5 && this.searchUtils.size != 10 && this.searchUtils.size != 20 && this.searchUtils.size != 50) { |
87 | 89 |
this.searchUtils.size = 10; |
88 | 90 |
} |
89 |
|
|
91 |
this.searchUtils.sortBy = (params['sortBy'])?params['sortBy']:''; |
|
92 |
if(this.searchUtils.sortBy && this.searchUtils.sortBy != "resultdateofacceptance,descending") { |
|
93 |
this.searchUtils.sortBy = ""; |
|
94 |
} |
|
95 |
|
|
90 | 96 |
this.searchPage.fieldIds = this.fieldIds; |
91 | 97 |
this.selectedFields =[]; |
92 | 98 |
this.searchPage.selectedFields = this.selectedFields; |
93 | 99 |
this.searchPage.fieldIdsMap = this.fieldIdsMap; |
94 | 100 |
this.searchPage.connectCommunityId = this.connectCommunityId; |
95 | 101 |
this.searchPage.getSelectedFiltersFromUrl(params); |
96 |
this.getResults(this.searchPage.createQueryParameters(), this.searchUtils.page, this.searchUtils.size); |
|
102 |
this.getResults(this.searchPage.createQueryParameters(), this.searchUtils.page, this.searchUtils.size, this.searchUtils.sortBy);
|
|
97 | 103 |
|
98 | 104 |
}); |
99 | 105 |
} |
... | ... | |
101 | 107 |
this.sub.unsubscribe(); |
102 | 108 |
} |
103 | 109 |
sub: any; |
104 |
public getResults(parameters:string, page: number, size: number){ |
|
110 |
public getResults(parameters:string, page: number, size: number, sortBy: string){
|
|
105 | 111 |
if(page >this.pagingLimit) { |
106 | 112 |
size=0; |
107 | 113 |
} |
... | ... | |
120 | 126 |
this.searchUtils.totalResults = 0; |
121 | 127 |
|
122 | 128 |
console.info("Advanced Search for Software: Execute search query "+parameters); |
123 |
this._searchSoftwareService.advancedSearchSoftware(parameters, page, size, this.properties).subscribe( |
|
129 |
this._searchSoftwareService.advancedSearchSoftware(parameters, page, size, sortBy, this.properties).subscribe(
|
|
124 | 130 |
data => { |
125 | 131 |
this.searchUtils.totalResults = data[0]; |
126 | 132 |
console.info("search Software total="+this.searchUtils.totalResults); |
... | ... | |
177 | 183 |
this.loadPaging = true; |
178 | 184 |
|
179 | 185 |
var parameters = $event.value; |
180 |
this.getResults(parameters, this.searchUtils.page,this.searchUtils.size); |
|
186 |
this.getResults(parameters, this.searchUtils.page,this.searchUtils.size, this.searchUtils.sortBy);
|
|
181 | 187 |
console.info("queryChanged: Execute search query "+parameters); |
182 | 188 |
|
183 | 189 |
} |
Also available in: Unified diff
1. Add 'sorting' option by 'relevance' or 'date' in advanced search pages for results (publications, datasets, software, orps).