openaire-library/utils/rangeFilter/rangeFilter.component.html

65 lines
3.8 KiB
HTML
Raw Normal View History

<div class="uk-margin-small-bottom">
<div class="uk-margin-small-top uk-margin-bottom uk-grid uk-flex uk-flex-bottom">
<h5 class="uk-margin-bottom-remove">{{_formatTitle(filter.title)}}</h5>
<a *ngIf="filter.selectedFromValue || filter.selectedToValue" (click)="clearFilter()" class="portal-link">
Clear
</a>
</div>
<div aria-expanded="false">
<div>
<div class = "uk-animation-fade filterItem searchFilterItem uk-text-small">
<div class="searchFilterBoxValues ">
<form class="uk-inline uk-text-small form-group uk-margin-remove-bottom" #rangeForm="ngForm" fromYearAfterToYear>
<input class=" uk-input form-control uk-width-1-3" (focus)="focusedInput = 'from'" (blur)="focusedInput = ''"
[(ngModel)]="filter.selectedFromValue" name="yearFrom" #yearFrom="ngModel" inValidYear
placeholder="e.g. 1931"/>
<input class=" uk-input form-control uk-width-1-3 uk-margin-left" (focus)="focusedInput = 'to'" (blur)="focusedInput = ''"
[(ngModel)]="filter.selectedToValue" name="yearTo" #yearTo="ngModel" inValidYear
placeholder="e.g. 2020"/>
<button type="submit" (click)="yearChanged()"
[ngStyle]="{'cursor': rangeForm.valid ? 'pointer' : 'not-allowed'}"
class="uk-icon uk-icon-button uk-margin-small-left uk-text-right uk-button-default"
[disabled]="rangeForm.invalid">
<svg width="20" height="20" viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg"
icon="chevron-right" ratio="1">
<polyline fill="none" stroke="#000" stroke-width="1.03" points="7 4 13 10 7 16"></polyline>
</svg>
</button>
<div>
<div class="range-button uk-button-group uk-margin-small-top">
<!-- padding: 0 25px;-->
<button [class]="'uk-button uk-button-default uk-button-small uk-text-small'
+ ((filter.selectedFromValue == currentYear && filter.selectedToValue == currentYear) ? ' uk-text-bold' : '')"
(click)="yearChanged(0)">This year
</button>
<button [class]="'uk-button uk-button-default uk-button-small uk-text-small'
+ ((filter.selectedToValue == currentYear && filter.selectedFromValue == currentYear-5) ? ' uk-text-bold' : '')"
(click)="yearChanged(5)">Last 5 years
</button>
<button [class]="'uk-button uk-button-default uk-button-small uk-text-small'
+ ((filter.selectedToValue == currentYear && filter.selectedFromValue == currentYear-10) ? ' uk-text-bold' : '')"
(click)="yearChanged(10)">Last 10 years
</button>
</div>
</div>
<div *ngIf="(yearFrom.invalid && focusedInput != 'from' && (yearFrom.dirty || yearFrom.touched)) ||
(yearTo.invalid && focusedInput != 'to' && (yearTo.dirty || yearTo.touched))"
class="alert alert-danger uk-margin-small-top uk-margin-remove-bottom">
<div *ngIf="(yearFrom.errors && yearFrom.errors.inValidYear) || (yearTo.errors && yearTo.errors.inValidYear)">
Year must be between {{yearMin}} and {{yearMax}}.
</div>
</div>
<div *ngIf="yearFrom.valid && yearTo.valid && rangeForm.errors?.fromYearAfterToYear && (rangeForm.touched || rangeForm.dirty)"
class="alert alert-danger uk-margin-small-top uk-margin-remove-bottom">
"From" year must be equal or greater than "To" year.
</div>
</form>
</div>
</div>
</div>
</div>
</div>