Project

General

Profile

1 61381 k.triantaf
<form class="  uk-margin-top uk-animation ">
2
  <div class="uk-margin-small-bottom">Start searching for projects and add them to the basket to link them to your sources
3
    <!-- <helper  div="link-project-form"   tooltip=true></helper>  -->
4
  </div>
5
6
<!--  <input class=" uk-input  uk-width-large" [(ngModel)]="keyword" name="keyword" placeholder="Search for projects..."/>-->
7
  <div class="uk-inline">
8
    <a *ngIf="keyword.length > 0" class="uk-form-icon uk-form-icon-flip"
9
       (click)="keyword = ''"
10
       uk-icon="icon: close"></a>
11
    <input type="text" class="uk-input  uk-width-xlarge@l uk-width-large@m uk-width-medium"
12
           placeholder="Search for projects..." aria-describedby="sizing-addon2"
13
           [(ngModel)]="keyword" name="keyword">
14
  </div>
15
  <span class="input-group-btn space">
16
    <button (click)="search(page,size)" type="submit" class=" uk-button portal-button">Search</button>
17
  </span>
18
19
</form>
20
<div *ngIf="!showResults">
21
  <div class="uk-text-center uk-text-large uk-text-muted uk-margin-large-top">No project results yet... <br>Start
22
    searching for projects to add them in the Basket
23
  </div>
24
</div>
25
<div *ngIf="showResults" class="uk-margin-top">
26
  <div *ngIf="openaireResultsStatus == errorCodes.NONE" class="uk-alert uk-alert-primary"
27
       role="alert">No Results found
28
  </div>
29
  <div *ngIf="openaireResultsStatus == errorCodes.ERROR" class="uk-alert uk-alert-warning"
30
       role="alert">An Error Occured
31
  </div>
32
  <div *ngIf="openaireResultsStatus == errorCodes.NOT_AVAILABLE" class="uk-alert uk-alert-danger"
33
       role="alert">Service not available
34
  </div>
35
36
  <div class="uk-grid">
37
    <div class="search-filters uk-width-medium">
38
      <!-- <div   class="uk-width-1-1   uk-margin-small-bottom ">
39
40
        <div *ngIf="countFilters()>0" class="uk-margin-small-bottom">
41
42
          <span *ngIf = "searchUtils.keyword.length > 0"><span class="uk-text-bold">Keywords:</span>
43
          <a (click) = "clearKeywords() " title="Remove keywords" [class]="((disableForms)?'  uk-disabled':'  ')+'  portal-color '"><span class=" clickable " aria-hidden="true"><span class="uk-icon ">
44
            <svg width="16" height="16" viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg" icon="close" ratio="0.8"><path fill="none" stroke="#000" stroke-width="1.6" d="M16,16 L4,4"></path><path fill="none" stroke="#000" stroke-width="1.6" d="M16,4 L4,16"></path></svg>
45
            </span></span></a>
46
          <span [innerHtml]="searchUtils.keyword"></span>
47
48
          </span>
49
          <div *ngFor="let filter of filters " >
50
            <span *ngIf = "filter.countSelectedValues > 0"> <span class="uk-text-bold">{{filter.title}}:</span>
51
              <span *ngFor="let value of getSelectedValues(filter); let i = index;  let end = last; " >
52
                <a [title]="'Remove '+value.name"(click) = "removeFilter(value, filter) " [class]="((disableForms)?'  uk-disabled':'  ')+'  portal-color '"><span class=" clickable" aria-hidden="true"><span class="uk-icon">
53
                  <svg width="16" height="16" viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg" icon="close" ratio="0.8"><path fill="none" stroke="#000" stroke-width="1.6" d="M16,16 L4,4"></path><path fill="none" stroke="#000" stroke-width="1.6" d="M16,4 L4,16"></path></svg>
54
                  </span></span></a>
55
                <span [innerHtml]="(value.name.length > 25)?value.name.substring(0,25)+'...':value.name" [title]="value.name"></span><span *ngIf="!end" class="   ">, </span>
56
              </span>
57
            </span>
58
          </div>
59
60
61
        </div>
62
63
       <div class="uk-margin-small-bottom uk-margin-small-top uk-grid">
64
         <a  *ngIf="countFilters()>1" (click)="clearFilters()" [class]="((disableForms)?'uk-disabled uk-link-muted':'')+'  portal-link ' + 'uk-width-1-2'">
65
           Clear All
66
         </a>
67
68
      </div>
69
      </div> -->
70
      <div *ngIf="countFilters()>0"  class="uk-grid uk-flex uk-flex-bottom">
71
        <div class="uk-grid">
72
          <h6 class="uk-text-bold">Filters</h6>
73
          <a *ngIf="countFilters()>1"  (click)="clearFilters()"
74
             [class]="((openaireResultsStatus ==
75
                              errorCodes.LOADING)?'uk-disabled uk-link-muted':'')+'  portal-link '">
76
            Clear All
77
          </a>
78
        </div>
79
        <div  *ngIf="countFilters()>0" class="uk-grid uk-grid-small uk-text-small  uk-margin-small-top " uk-grid>
80
          <ng-container *ngFor="let filter of rangeFilters " >
81
            <ng-container *ngIf = "filter.selectedFromAndToValues">
82
                      <span [title]="'Remove '+ filter.selectedFromAndToValues" (click) = "removeRangeFilter(filter) " >
83
                        <span class="selectedFilterLabel ">
84
                          <a [class]="((openaireResultsStatus ==
85
                          errorCodes.LOADING)?'  uk-disabled':'  ')+' uk-link-text '">
86
                            <span class=" clickable" aria-hidden="true">
87
                              <span class="uk-icon">
88
                                <svg width="16" height="16" viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg" icon="close" ratio="0.8"><path fill="none" stroke="#000" stroke-width="1.6" d="M16,16 L4,4"></path><path fill="none" stroke="#000" stroke-width="1.6" d="M16,4 L4,16"></path></svg>
89
                              </span>
90
                            </span>
91
                            <span class="uk-margin-small-left">{{filter.selectedFromAndToValues}}</span>
92
                          </a>
93
                        </span>
94
                      </span>
95
            </ng-container>
96
          </ng-container>
97
98
          <ng-container *ngFor="let filter of filters " >
99
            <ng-container *ngIf = "filter.countSelectedValues > 0">
100
               <span *ngFor="let value of getSelectedValues(filter); let i = index;  let end = last; "
101
                     [title]="'Remove '+value.name" (click) = "removeFilter(value, filter) " >
102
                        <!-- if no grid on the div above, remove it and move class 'selectedFilterLabel' on top span -->
103
                        <span class="selectedFilterLabel ">
104
                          <a [class]="((openaireResultsStatus ==
105
                            errorCodes.LOADING)?'  uk-disabled':'  ')+' uk-link-text '">
106
                            <span class=" clickable" aria-hidden="true">
107
                              <span class="uk-icon">
108
                                <svg width="16" height="16" viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg" icon="close" ratio="0.8"><path fill="none" stroke="#000" stroke-width="1.6" d="M16,16 L4,4"></path><path fill="none" stroke="#000" stroke-width="1.6" d="M16,4 L4,16"></path></svg>
109
                              </span>
110
                            </span>
111
                            <span class="uk-margin-small-left" [innerHtml]="(value.name.length > 34)?value.name.substring(0,34)+'...':value.name"></span>
112
                          </a>
113
                        </span>
114
                      </span>
115
            </ng-container>
116
          </ng-container>
117
        </div>
118
      </div>
119
120
      <!--<ul class="uk-list">
121
        <li class="uk-open">
122
          <h6 class="uk-margin-bottom-remove ">Active between
123
          </h6>
124
          <div aria-expanded="false">
125
            <div class="searchFilterBoxValues ">
126
              <form class="uk-inline">
127
128
                <input class=" uk-input  uk-width-2-5" [(ngModel)]="startYear" name="keyword"
129
                       placeholder="Year (e.g 1990)"/>
130
                <input class=" uk-input  uk-width-2-5" [(ngModel)]="endYear" name="keyword"
131
                       placeholder="Year (e.g 1990)"/>
132
                <button type="submit" (click)="yearChanged()" style="cursor: pointer;" class="uk-icon"><svg width="20"
133
                                                                                                   height="20"
134
                                                                                            viewBox="0 0 20 20"
135
                                                                                            xmlns="http://www.w3.org/2000/svg"
136
                                                                                            icon="chevron-right"
137
                                                                                            ratio="1"><polyline
138
                  fill="none" stroke="#000" stroke-width="1.03" points="7 4 13 10 7 16"></polyline></svg></button>
139
140
              </form>
141
            </div>
142
          </div>
143
        </li>
144
      </ul>-->
145
      <ng-container *ngFor="let filter of rangeFilters">
146
        <li>
147
          <range-filter [isDisabled]="openaireResultsStatus ==
148
                            errorCodes.LOADING" [filter]="filter" (onFilterChange)="dateFilterChanged(filter)"
149
                        [showQuickButtons]="false"
150
          ></range-filter>
151
        </li>
152
      </ng-container>
153
      <search-filter *ngFor="let filter of filters " [isDisabled]="false" [filter]="filter" [showResultCount]=true
154
                     (onFilterChange)="filterChanged($event)" [actionRoute]="false"></search-filter>
155
    </div>
156
    <div class="uk-width-expand@m uk-width-1-1@s uk-first-column">
157
     <!-- <div *ngIf="openaireResultsNum != null && openaireResultsNum > 0" class="uk-clearfix portal-hr ">
158
        <div class="uk-grid">
159
          <div *ngIf="openaireResultsNum>0" class="uk-width-1-2">
160
            <span class="portal-color">{{openaireResultsNum|number}}</span> projects, page <span
161
            class="portal-color">{{openaireResultsPage | number}}</span> of <span
162
            class="portal-color">{{totalPages(openaireResultsNum)|number}}</span>
163
          </div>
164
          <div class="uk-width-1-2  uk-padding-remove">
165
            <paging-no-load class="uk-float-right" [currentPage]="openaireResultsPage"
166
                            [totalResults]="openaireResultsNum" [term]="keyword" [size]="size"
167
                            (pageChange)="openaireResultsPageChange($event)"></paging-no-load>
168
          </div>
169
        </div>
170
      </div>-->
171
      <div *ngIf="openaireResultsNum != null && openaireResultsNum > 0" class="uk-clearfix  ">
172
        <div class= "paging-hr searchPaging uk-margin-small-bottom"
173
             *ngIf="(openaireResultsNum > 0) || (openaireResultsStatus == errorCodes.LOADING)">
174
          <div class="uk-panel uk-margin-small-top uk-grid  uk-flex uk-flex-middle">
175
            <div class="uk-width-1-1@s uk-width-1-2@m  uk-text-uppercase"
176
                 *ngIf="openaireResultsNum > 0">
177
              <span class="uk-text-bold">{{openaireResultsNum|number}}</span>
178
              <span class="uk-text-muted uk-text-uppercase"> projects, page </span>
179
              <span class="uk-text-bold">{{openaireResultsPage | number}}</span>
180
              <span class="uk-text-muted uk-text-uppercase"> of </span>
181
              <span class="uk-text-bold">{{(totalPages(openaireResultsNum)|number)}}</span>
182
            </div>
183
            <div class="float-children-right-at-medium margin-small-top-at-small uk-width-expand uk-padding-remove-left">
184
              <paging-no-load class="uk-float-right" [currentPage]="openaireResultsPage"
185
                              [totalResults]="openaireResultsNum" [term]="keyword"
186
                              [size]="size" (pageChange)="openaireResultsPageChange($event)"></paging-no-load>
187
            </div>
188
          </div>
189
        </div>
190
      </div>
191
      <div *ngIf="openaireResultsStatus == errorCodes.LOADING" class="uk-animation-fade uk-margin-top  uk-width-1-1"
192
           role="alert"><span class="loading-gif  uk-align-center"></span></div>
193
      <claim-results [localStoragePrefix]="localStoragePrefix" [results]=openaireResults
194
                     [selectedResults]=selectedProjects [basketLimit]="basketLimit"></claim-results>
195
    </div>
196
  </div>
197
</div>