import {Component, Input} from '@angular/core'; import {RouterHelper} from './routerHelper.class'; import {EnvProperties} from './properties/env-properties'; import {properties} from "../../../environments/environment"; @Component({ selector: 'paging', template: ` ` }) export class PagingFormatter { @Input() isDisabled: boolean = false; @Input() currentPage: number = 1; @Input() size: number = 10; @Input() totalResults: number = 10; @Input() baseUrl: string = ""; @Input() parameterNames: string[]; @Input() parameterValues: string[]; @Input() position: "left" | "center" | "right" = "right"; private readonly limit: number; properties: EnvProperties = properties; public routerHelper: RouterHelper = new RouterHelper(); constructor() { this.limit = this.properties.pagingLimit; } getTotalPages() { let total: number; var i: number = parseInt('' + (this.totalResults / this.size)); total = (((this.totalResults / this.size) == i) ? i : (i + 1)); if ((this.currentPage == this.limit) && (total > this.limit)) { total = this.limit; } else if ((this.currentPage > this.limit) && (total > this.limit)) { total = this.currentPage; } return total; } }