167 lines
10 KiB
HTML
167 lines
10 KiB
HTML
|
|
<ul *ngIf= "filter.values.length >0" class="uk-list">
|
|
<li class="uk-open">
|
|
<h5 class="uk-margin-bottom-remove searchFilterTitle">{{_formatTitle(filter.title,filter.values.length)}}
|
|
</h5>
|
|
<div aria-expanded="false">
|
|
<div [class]="showMoreInline ? '' : 'searchFilterBoxValues' ">
|
|
<div *ngFor = "let value of getSelectedValues(filter,'num')" class = "uk-animation-fade filterItem">
|
|
<label>
|
|
<span class="filterName">
|
|
<div title = "{{value.name}}">
|
|
<input *ngIf="!filter.valueIsUnique" [(ngModel)]="value.selected" type="checkbox" (ngModelChange)="filterChange(value.selected)" />
|
|
<!-- [name]=filter.filterId value="false"-->
|
|
<input *ngIf="filter.valueIsUnique" type="radio" (click)="uniqueFilterChange(value)"
|
|
[name]=filter.filterId checked/>
|
|
{{' '}}
|
|
{{_formatName(value)}}
|
|
{{' '}}
|
|
<span class="filterNumber" *ngIf = "showResultCount === true" > ({{value.number|number}})</span>
|
|
</div>
|
|
</span>
|
|
</label>
|
|
</div>
|
|
<!-- <hr *ngIf="filter.countSelectedValues > 0 && (filter.values.length-filter.countSelectedValues ) > 0 " class="uk-grid-divider uk-margin-small"-->
|
|
|
|
<div *ngFor = "let value of getNotSelectedValues(filter,'num').slice(0,(!addShowMore?getNotSelectedValues(filter,'num').length:filterValuesNum-getSelectedValues(filter,'num').length))" class = "uk-animation-fade filterItem">
|
|
<label>
|
|
<span class="filterName">
|
|
<div title = "{{value.name}}" [class]="(isDisabled || (showResultCount && value.number === 0))?'uk-text-muted':''" >
|
|
<input *ngIf="!filter.valueIsUnique" [disabled]="isDisabled || (showResultCount && value.number === 0)" [(ngModel)]="value.selected" type="checkbox" (ngModelChange)="filterChange(value.selected)" />
|
|
<input *ngIf="filter.valueIsUnique" [disabled]="isDisabled || (showResultCount && value.number === 0)" type="radio" (click)="uniqueFilterChange(value)"
|
|
[name]=filter.filterId value=false />
|
|
{{' '}}
|
|
{{_formatName(value)}}
|
|
{{' '}}
|
|
<span class="filterNumber" *ngIf = "showResultCount === true" [class]="(isDisabled || value.number === 0)?'uk-text-muted':''" >
|
|
({{value.number|number}})
|
|
</span>
|
|
</div>
|
|
</span>
|
|
</label>
|
|
</div>
|
|
|
|
<div *ngIf=" addShowMore && showMoreInline && (filter.values.length) > filterValuesNum">
|
|
<a [class]="(isDisabled)?'uk-disabled uk-link-muted uk-text-secondary':' uk-text-secondary'"
|
|
[attr.uk-toggle]="'target: #toggle-'+filter.filterId">View
|
|
<span *ngIf="filter.values.length >= 99">more</span>
|
|
<span *ngIf="filter.values.length < 99">all</span>
|
|
</a>
|
|
<div hidden [id]="'toggle-'+filter.filterId">
|
|
<!-- <div *ngIf="filter.values.length >= 99" class="uk-alert uk-alert-primary uk-text-center uk-margin-right uk-margin-left uk-margin-small-top uk-margin-small-bottom ">Showing top {{filter.values.length}} values. </div>-->
|
|
<div class="">
|
|
<input class="uk-input uk-margin-small-bottom uk-width-1-1 " name="filter-keyword" placeholder="Search for {{filter.title}}" type="text" [(ngModel)]="keyword">
|
|
<select *ngIf = "showResultCount === true" [(ngModel)]="sortBy"
|
|
class="uk-text-muted uk-select uk-margin-small-bottom uk-width-1-1" name="select_order" (ngModelChange)="sortByChanged = true;" >
|
|
<option value="num">Sorted by results number</option>
|
|
<option value="name">Sorted by name</option>
|
|
</select>
|
|
</div>
|
|
|
|
<div class="uk-modal-body uk-overflow-auto uk-height-small uk-padding-remove
|
|
uk-margin-small-left uk-margin-small-right uk-margin-small-top uk-margin-bottom">
|
|
<ng-container *ngFor = "let value of getSelectedValues(filter, sortBy)">
|
|
<div *ngIf="filterKeywords(value.name)" class = "uk-animation-fade filterItem">
|
|
<label>
|
|
<span class="filterName">
|
|
<div title = "{{value.name}}">
|
|
<input *ngIf="!filter.valueIsUnique" [disabled]="isDisabled" [(ngModel)]="value.selected" type="checkbox" (ngModelChange)="close(); filterChange(value.selected)" />
|
|
<input *ngIf="filter.valueIsUnique" [disabled]="isDisabled" type="radio" (click)="uniqueFilterChange(value)"
|
|
[name]=filter.filterId checked/>
|
|
{{' '}}
|
|
{{_formatName(value)}}
|
|
{{' '}}
|
|
<span class="filterNumber" *ngIf = "showResultCount === true" > ({{value.number|number}})</span>
|
|
</div>
|
|
</span>
|
|
</label>
|
|
</div>
|
|
</ng-container>
|
|
<hr *ngIf="filter.countSelectedValues > 0 && (filter.values.length-filter.countSelectedValues ) > 0 " class="uk-grid-divider uk-margin-small">
|
|
<ng-container *ngFor = "let value of getNotSelectedValues(filter, sortBy)">
|
|
<div *ngIf="filterKeywords(value.name)" class = "uk-animation-fade filterItem">
|
|
<label>
|
|
<span class="filterName">
|
|
<div title = "{{value.name}}">
|
|
<input *ngIf="!filter.valueIsUnique" [disabled]="isDisabled" [(ngModel)]="value.selected" type="checkbox" (ngModelChange)="close(); filterChange(value.selected)" />
|
|
<input *ngIf="filter.valueIsUnique" [disabled]="isDisabled" type="radio" (click)="uniqueFilterChange(value)"
|
|
[name]=filter.filterId value=false />
|
|
{{' '}}
|
|
{{_formatName(value)}}
|
|
{{' '}}
|
|
<span class="filterNumber" *ngIf = "showResultCount === true" > ({{value.number|number}})</span>
|
|
</div>
|
|
</span>
|
|
</label>
|
|
</div>
|
|
</ng-container>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
<a *ngIf=" addShowMore && !showMoreInline&& (filter.values.length) > filterValuesNum" (click)="open()"
|
|
[class]="(isDisabled)?'uk-disabled uk-link-muted uk-text-secondary':' uk-text-secondary'">View more
|
|
</a>
|
|
|
|
|
|
<div *ngIf="addShowMore && !showMoreInline" [class]="(!isOpen)?'uk-modal ':'uk-modal uk-open uk-animation-fade'" uk-modal [open]="!isOpen" id="modal2" tabindex="-1" role="dialog" aria-labelledby="myModalLabel" bg-close="true">
|
|
<div class="filtersModal uk-modal-dialog uk-small-1-2 uk-width-medium-1-3 uk-width-1-3 uk-padding-small uk-padding-remove-top uk-padding-remove-horizontal">
|
|
|
|
<button type="button" class="uk-modal-close-default" uk-close (click)="close()"></button>
|
|
<h5 class="uk-margin-remove uk-padding uk-padding-remove-bottom uk-text-center">
|
|
{{filter.title}}
|
|
</h5>
|
|
|
|
<div *ngIf="filter.values.length >= 99" class="uk-alert uk-alert-primary uk-text-center uk-margin-right uk-margin-left uk-margin-small-top uk-margin-small-bottom ">Showing top {{filter.values.length}} values. </div>
|
|
<div class="uk-grid uk-margin-left uk-margin-right">
|
|
<input class="uk-input uk-margin-small-bottom uk-width-1-2 " name="filter-keyword" placeholder="Search for {{filter.title}}" type="text" [(ngModel)]="keyword">
|
|
<select *ngIf = "showResultCount === true" [(ngModel)]="sortBy" class="uk-select uk-margin-small-bottom uk-width-1-2 uk-padding-remove" name="select_order" (ngModelChange)="sortByChanged = true;" >
|
|
<option value="num" >Sort by results number</option>
|
|
<option value="name" >Sort by name</option>
|
|
</select>
|
|
</div>
|
|
<div class="uk-modal-body uk-overflow-auto uk-height-medium uk-padding-remove
|
|
uk-margin-medium-left uk-margin-medium-right uk-margin-small-top uk-margin-bottom">
|
|
<ng-container *ngFor = "let value of getSelectedValues(filter, sortBy)">
|
|
<div *ngIf="filterKeywords(value.name)" class = "uk-animation-fade filterItem">
|
|
<label>
|
|
<span class="filterName"><div title = "{{value.name}}">
|
|
<input *ngIf="!filter.valueIsUnique" [disabled]="isDisabled" [(ngModel)]="value.selected" type="checkbox" (ngModelChange)="close(); filterChange(value.selected)" />
|
|
<input *ngIf="filter.valueIsUnique" [disabled]="isDisabled" [(ngModel)]="value.selected" type="radio" [name]=filter.filterId (ngModelChange)="close(); filterChange(value.selected)" />
|
|
{{' '}}
|
|
{{_formatName(value)}}
|
|
{{' '}}
|
|
<span class="filterNumber" *ngIf = "showResultCount === true" > {{' '}}({{value.number|number}})</span>
|
|
</div>
|
|
</span>
|
|
</label>
|
|
</div>
|
|
</ng-container>
|
|
<hr *ngIf="filter.countSelectedValues > 0 && (filter.values.length-filter.countSelectedValues ) > 0 " class="uk-grid-divider uk-margin-small">
|
|
<ng-container *ngFor = "let value of getNotSelectedValues(filter, sortBy)">
|
|
<div *ngIf="filterKeywords(value.name)" class = "uk-animation-fade filterItem">
|
|
<label>
|
|
<span class="filterName">
|
|
<div title = "{{value.name}}">
|
|
<input *ngIf="!filter.valueIsUnique" [disabled]="isDisabled" [(ngModel)]="value.selected" type="checkbox" (ngModelChange)="close(); filterChange(value.selected)" />
|
|
<input *ngIf="filter.valueIsUnique" [disabled]="isDisabled" [(ngModel)]="value.selected" type="radio" [name]=filter.filterId (ngModelChange)="close(); filterChange(value.selected)" />
|
|
{{' '}}
|
|
{{_formatName(value)}}
|
|
{{' '}}
|
|
<span class="filterNumber" *ngIf = "showResultCount === true" > ({{value.number|number}})</span>
|
|
</div>
|
|
</span>
|
|
</label>
|
|
</div>
|
|
</ng-container>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
|
|
|
|
</div>
|
|
</div>
|
|
</li>
|
|
</ul>
|