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>
|