1 |
50169
|
argiro.kok
|
import {Component, Input, Output, EventEmitter} from '@angular/core';
|
2 |
55964
|
argiro.kok
|
import {Observable} from 'rxjs';
|
3 |
50761
|
argiro.kok
|
import {ErrorCodes} from '../../utils/properties/errorCodes';
|
4 |
50169
|
argiro.kok
|
|
5 |
|
|
@Component({
|
6 |
|
|
selector: 'search-paging',
|
7 |
|
|
template: `
|
8 |
54737
|
argiro.kok
|
<div class= "searchPaging uk-panel uk-margin-small-top uk-grid">
|
9 |
54774
|
argiro.kok
|
<div class="uk-width-1-1@s uk-width-1-2@m" *ngIf="results && searchUtils.totalResults > 0">
|
10 |
54737
|
argiro.kok
|
<span class="portal-color">{{searchUtils.totalResults|number}}</span> {{type}}, page <span class="portal-color">{{searchUtils.page | number}}</span> of <span class="portal-color">{{(totalPages(searchUtils.totalResults)|number)}}</span>
|
11 |
|
|
</div>
|
12 |
|
|
<div class="uk-width-1-1@s uk-width-1-2@m" *ngIf="!loadPaging && oldTotalResults > 0 && searchUtils.status == errorCodes.LOADING">
|
13 |
|
|
<span class="portal-color">{{oldTotalResults|number}}</span> {{type}}, page <span class="portal-color">{{searchUtils.page | number}}</span> of <span class="portal-color">{{(totalPages(oldTotalResults)|number)}}</span>
|
14 |
54774
|
argiro.kok
|
</div>
|
15 |
|
|
<!--div class="uk-width-1-1@s uk-width-1-2@m" *ngIf="results && searchUtils.totalResults > 0">
|
16 |
52096
|
konstantin
|
{{searchUtils.totalResults|number}} {{type}}, page {{searchUtils.page | number}} of {{(totalPages(searchUtils.totalResults)|number)}}
|
17 |
50169
|
argiro.kok
|
</div>
|
18 |
53379
|
argiro.kok
|
<div class="uk-width-1-1@s uk-width-1-2@m" *ngIf="!loadPaging && oldTotalResults > 0 && searchUtils.status == errorCodes.LOADING">
|
19 |
52096
|
konstantin
|
{{oldTotalResults|number}} {{type}}, page {{searchUtils.page | number}} of {{(totalPages(oldTotalResults)|number)}}
|
20 |
54774
|
argiro.kok
|
</div-->
|
21 |
50169
|
argiro.kok
|
<div class="float-children-right-at-medium margin-small-top-at-small uk-width-1-1@s uk-width-1-2@m" *ngIf="results && searchUtils.totalResults > searchUtils.size">
|
22 |
|
|
<paging [currentPage]="searchUtils.page" [totalResults]="searchUtils.totalResults" [baseUrl]="baseUrl" [size]="searchUtils.size" [parameterNames] = "parameterNames" [parameterValues] = "parameterValues" > </paging>
|
23 |
|
|
</div>
|
24 |
|
|
<div class="float-children-right-at-medium margin-small-top-at-small uk-width-1-1@s uk-width-1-2@m" *ngIf="!loadPaging && oldTotalResults > searchUtils.size && searchUtils.status == errorCodes.LOADING">
|
25 |
|
|
<paging [currentPage]="searchUtils.page" [totalResults]="oldTotalResults" [baseUrl]="baseUrl" [size]="searchUtils.size" [parameterNames] = "parameterNames" [parameterValues] = "parameterValues" > </paging>
|
26 |
|
|
</div>
|
27 |
|
|
</div>
|
28 |
|
|
`
|
29 |
|
|
})
|
30 |
|
|
|
31 |
|
|
export class SearchPagingComponent {
|
32 |
|
|
@Input() searchUtils;
|
33 |
|
|
@Input() results;
|
34 |
|
|
@Input() baseUrl;
|
35 |
|
|
@Input() type;
|
36 |
|
|
@Input() parameterNames:string[];
|
37 |
|
|
@Input() parameterValues:string[];
|
38 |
|
|
|
39 |
|
|
@Input() loadPaging: boolean = true;
|
40 |
|
|
@Input() oldTotalResults: number = 0;
|
41 |
|
|
|
42 |
|
|
public totalResults: number = 0;
|
43 |
|
|
public errorCodes:ErrorCodes = new ErrorCodes();
|
44 |
|
|
|
45 |
|
|
// @Input() totalResults:number = 0;
|
46 |
|
|
constructor () {}
|
47 |
|
|
|
48 |
|
|
ngOnInit() {
|
49 |
|
|
// this.totalResults = this.searchUtils.totalResults;
|
50 |
|
|
// if(!this.loadPaging && this.totalResults == 0) {
|
51 |
|
|
// this.totalResults = this.oldTotalResults;
|
52 |
|
|
// }
|
53 |
|
|
}
|
54 |
|
|
|
55 |
|
|
totalPages(totalResults: number): number {
|
56 |
|
|
let totalPages:any = totalResults/(this.searchUtils.size);
|
57 |
|
|
if(!(Number.isInteger(totalPages))) {
|
58 |
|
|
totalPages = (parseInt(totalPages, 10) + 1);
|
59 |
|
|
}
|
60 |
|
|
return totalPages;
|
61 |
|
|
}
|
62 |
|
|
|
63 |
|
|
|
64 |
|
|
}
|