Project

General

Profile

1
import {Component, Input, ViewChild} from '@angular/core';
2
import { ActivatedRoute} from '@angular/router';
3
import {Location} from '@angular/common';
4

    
5
import { Filter, Value} from '../searchUtils/searchHelperClasses.class';
6

    
7
import {RefineFieldResultsService} from '../../services/refineFieldResults.service';
8
import {OpenaireProperties, ErrorCodes} from '../../utils/properties/openaireProperties';
9
import {SearchFields} from '../../utils/properties/searchFields';
10
import {SearchPageComponent } from '../searchUtils/searchPage.component';
11
import {SearchUtilsClass} from '../searchUtils/searchUtils.class';
12
import {RouterHelper} from '../../utils/routerHelper.class';
13
@Component({
14
    selector: 'browse-statistic',
15
    template: `
16

    
17

    
18
       <h4 class="tm-article-subtitle">{{filter.title}}</h4>
19
      <div *ngIf="filter.values.length == 0" class="uk-alert uk-alert-info" role="alert">No {{filter.title}} statistics found</div>
20
      <ul *ngIf="filter.values.length > 0 && !viewAll" class="uk-list uk-list-line ">
21
        <li *ngFor= "let value of filter.values.slice(0,5)"><!--a [href]="baseUrl+'?'+filter.filterId+'='+value.id">{{_formatName(value)}} ({{value.number}})</a-->
22
          <a  [queryParams]="routerHelper.createQueryParam(filter.filterId,value.id)" routerLinkActive="router-link-active" [routerLink]=baseUrl>{{_formatName(value)}} ({{value.number}})</a>
23
        </li>
24
        <li *ngIf= " filter.values.length > 5 && !viewAll " (click)="viewAll=true;">
25
          <span  ><span class="uk-text-muted clickable">View more </span><a><i class="uk-icon-toggle-right"></i></a></span>
26
        </li>
27
      </ul>
28
      <ul *ngIf="filter.values.length > 0 && viewAll" class="uk-list uk-list-line   searchFilterBoxValues">
29
        <li *ngFor= "let value of filter.values"><!--a [href]="baseUrl+'?'+filter.filterId+'='+value.id">{{_formatName(value)}} ({{value.number}})</a-->
30
        <a  [queryParams]="routerHelper.createQueryParam(filter.filterId,value.id)" routerLinkActive="router-link-active" [routerLink]=baseUrl>{{_formatName(value)}} ({{value.number}})</a>
31
        </li>
32
        <li *ngIf= " filter.values.length > 5 && viewAll " (click)="viewAll=false;">
33
          <span  ><span class="uk-text-muted clickable">View less </span><a><i class="uk-icon-toggle-up"></i></a></span>
34
        </li>
35
      </ul>
36

    
37
    `
38

    
39
})
40
export class BrowseStatisticComponent {
41

    
42
  @Input() public baseUrl:string = "";
43
  @Input() public filter:any = "";
44
  private _maxCharacters = 30;
45
  public viewAll = false;
46
  public routerHelper:RouterHelper = new RouterHelper();
47
  constructor () {
48

    
49
  }
50

    
51
  public ngOnInit() {
52

    
53

    
54
  }
55

    
56

    
57
  private _formatName(value){
58
    return (((value.name+" ("+value.number+")").length >this._maxCharacters)?(value.name.substring(0,(this._maxCharacters - (" ("+value.number+")").length - ('...').length))+"..."):value.name)
59
  }
60

    
61
}
(7-7/22)