Project

General

Profile

1
<div id="page_content">
2
  <div id="page_content_inner">
3
    <h2 *ngIf="eventsPage" class="heading_b uk-margin-bottom">
4
      {{ eventsPage.datasource }}
5
      <span class="sub-heading">{{ topic }}</span>
6
    </h2>
7

    
8
    <!-- TOP HELP CONTENT -->
9
    <help-content #topHelperContent [position]="'top'"
10
                  [ngClass]="topHelperContent.isPresent()?'uk-margin-medium-top uk-margin-medium-bottom':'clear-style'">
11
    </help-content>
12

    
13
    <div class="uk-grid">
14

    
15
      <!-- LEFT HELP CONTENT -->
16
      <aside-help-content #leftHelperContent [position]="'left'"
17
                          [ngClass]="leftHelperContent.isPresent()?'tm-sidebar uk-width-1-4@m uk-first-column':'clear-style'">
18
      </aside-help-content>
19

    
20
      <!-- MIDDLE -->
21
      <div class=" uk-width-expand@m">
22

    
23
        <div>
24
          <div *ngIf="errorMessage" class="uk-alert uk-alert-danger">{{errorMessage}}</div>
25
          <div *ngIf="loadingMessage" class="loading-big">
26
            <div class="loader-big" style="text-align: center; padding-top: 170px; color: rgb(47, 64, 80); font-weight: bold;">{{ loadingMessage }}</div>
27
            <div class="transparentFilm"></div>
28
          </div>
29
          <div *ngIf="noEvents" class="uk-alert">{{ noEvents }}</div>
30
          <div *ngIf="!noEvents && !loadingMessage && !errorMessage && eventsPage && eventsPage.totalPages>0" class="events-results">
31

    
32
            <div style="display: flex;justify-content: space-between;">
33

    
34
              <div class="resultsInfo" style="margin-top: auto;">
35
                <span class="number">{{eventsPage.total}}</span> RESULTS, PAGE <span class="number">{{(currentPage)+1}}</span> OF <span class="number">{{ eventsPage.totalPages }}</span>
36
              </div>
37

    
38
              <div class="uk-inline">
39
                <ul class="uk-pagination" uk-margin>
40
                  <li><a (click)="goToPreviousPage()" class="pagination_arrow"><span uk-pagination-previous></span></a></li>
41
                  <li class="uk-active"><span>{{ (eventsPage.totalPages > 0) ? currentPage+1 : 0 }}</span></li>
42
                  <li><a (click)="goToNextPage()" class="pagination_arrow"><span uk-pagination-next></span></a></li>
43
                </ul>
44
              </div>
45

    
46
            </div>
47

    
48

    
49
            <hr class="adminResultsHeader">
50

    
51
            <!--<div class="uk-margin-bottom">Showing {{(currentPage*10)+1 }}-{{ ( (eventsPage.total < 10) || (eventsPage.total < (currentPage+1)*10) ) ? (eventsPage.total) : (currentPage+1)*10 }} of {{ eventsPage.total }} results</div>-->
52

    
53
            <div *ngFor="let event of eventsPage.values; let item_i = index" class="md-card md-card-hover eventCard">
54
              <div class="md-card-content large-padding">
55

    
56
                <div *ngIf="event.result.originalId" class="uk-text-meta">ID: {{event.result.originalId}}</div>
57

    
58
                <div *ngIf="event.result.titles && event.result.titles.length>0">
59
                  <div class="repositoryCardHeader uk-margin-bottom uk-margin-small-top">
60
                    <h4>{{ event.result.titles[0] }}</h4>
61
                  </div>
62
                </div>
63

    
64
                <ng-container *ngIf="event.highlight.creators && event.highlight.creators.length>0">
65

    
66
                  <div class="small-content">
67
                    <span class="uk-badge uk-badge-success uk-margin-small-right">{{event.highlight.creators.length}} author ORCID(s) added</span>
68
                    <span class="mute-title">FROM: </span>
69
                    <ng-container *ngIf="event.provenance.url">
70
                      <a href="{{ event.provenance.url }}" target="_blank">{{ event.provenance.repositoryName }}</a>
71
                      <span *ngIf="event.provenance.id"> (ID: {{ event.provenance.id }})</span>
72
                    </ng-container>
73
                    <ng-container *ngIf="!event.provenance.url">
74
                      <span>{{ event.provenance.repositoryName }}</span>
75
                    </ng-container>
76
                  </div>
77

    
78
                  <div class="uk-margin-top uk-margin-medium-bottom small-content">
79
                    <div *ngFor="let author of event.highlight.creators; let p_index = index" class="uk-margin-small-bottom">
80
                      <span class="highlightIndex">{{(p_index + 1)}}. </span>
81
                      <span>{{ author.fullname }} <b>&nbsp;&nbsp;({{ author.orcid }})&nbsp;&nbsp;</b></span>
82
                    </div>
83
                  </div>
84

    
85
                </ng-container>
86

    
87
                <ng-container *ngIf="event.highlight.pids && event.highlight.pids.length>0">
88

    
89
                  <div class="small-content">
90
                    <span class="uk-badge uk-badge-success uk-margin-small-right">{{event.highlight.pids.length}} PID(s) added</span>
91
                    <span class="mute-title">FROM: </span>
92
                    <ng-container *ngIf="event.provenance.url">
93
                      <a href="{{ event.provenance.url }}" target="_blank">{{ event.provenance.repositoryName }}</a>
94
                      <span *ngIf="event.provenance.id"> (ID: {{ event.provenance.id }})</span>
95
                    </ng-container>
96
                    <ng-container *ngIf="!event.provenance.url">
97
                      <span>{{ event.provenance.repositoryName }}</span>
98
                    </ng-container>
99
                  </div>
100

    
101
                  <div class="uk-margin-top uk-margin-medium-bottom small-content">
102
                    <div *ngFor="let pid of event.highlight.pids; let p_index = index" class="uk-margin-small-bottom">
103
                      <span class="highlightIndex">{{(p_index + 1)}}. </span>
104
                      <span>{{ pid.value }} <b>&nbsp;&nbsp;({{ pid.type }})&nbsp;&nbsp;</b></span>
105
                    </div>
106
                  </div>
107

    
108
                </ng-container>
109

    
110
                <ng-container *ngIf="event.highlight.abstracts && event.highlight.abstracts.length>0">
111

    
112
                  <div class="small-content">
113
                    <span class="uk-badge uk-badge-success uk-margin-small-right">{{event.highlight.abstracts.length}} Abstract(s) added</span>
114
                    <span class="mute-title">FROM: </span>
115
                    <ng-container *ngIf="event.provenance.url">
116
                      <a href="{{ event.provenance.url }}" target="_blank">{{ event.provenance.repositoryName }}</a>
117
                      <span *ngIf="event.provenance.id"> (ID: {{ event.provenance.id }})</span>
118
                    </ng-container>
119
                    <ng-container *ngIf="!event.provenance.url">
120
                      <span>{{ event.provenance.repositoryName }}</span>
121
                    </ng-container>
122
                  </div>
123

    
124
                  <div class="uk-margin-top uk-margin-medium-bottom small-content">
125
                    <div *ngFor="let abs of event.highlight.abstracts; let a_index = index" class="uk-margin-small-bottom">
126
                      <span class="highlightIndex">{{(a_index + 1)}}. </span>
127
                      <span class=""><read-more-text [text]="abs" [maxHeight]="40"></read-more-text></span>
128
                    </div>
129
                  </div>
130

    
131
                </ng-container>
132

    
133
                <ng-container *ngIf="event.highlight.projects && event.highlight.projects.length>0">
134

    
135
                  <div class="small-content">
136
                    <span class="uk-badge uk-badge-success uk-margin-small-right">{{event.highlight.projects.length}} Project(s) added</span>
137
                    <span class="mute-title">FROM: </span>
138
                    <ng-container *ngIf="event.provenance.url">
139
                      <a href="{{ event.provenance.url }}" target="_blank">{{ event.provenance.repositoryName }}</a>
140
                      <span *ngIf="event.provenance.id"> (ID: {{ event.provenance.id }})</span>
141
                    </ng-container>
142
                    <ng-container *ngIf="!event.provenance.url">
143
                      <span>{{ event.provenance.repositoryName }}</span>
144
                    </ng-container>
145
                  </div>
146

    
147
                  <div class="uk-margin-top uk-margin-medium-bottom small-content">
148
                    <div *ngFor="let proj of event.highlight.projects; let p_index = index" class="uk-margin-small-bottom">
149
                      <span class="highlightIndex">{{(p_index + 1)}}. </span>
150
                      <span *ngIf="proj.acronym && proj.acronym !==''">{{ proj.acronym }}</span>
151
                      <span *ngIf="!proj.acronym || proj.acronym ===''">{{ proj.title }}</span>
152
                      <span *ngIf="(proj.funder && proj.funder !=='') ||
153
                                 (proj.fundingProgram && proj.fundingProgram !=='')">
154
                      (<span *ngIf="proj.funder && proj.funder !==''">{{ proj.funder }} </span>
155
                      <span *ngIf="(proj.funder && proj.funder !=='') &&
156
                                   (proj.fundingProgram && proj.fundingProgram !=='')">/</span>
157
                      <span *ngIf="proj.fundingProgram && proj.fundingProgram !==''">{{ proj.fundingProgram }}</span>)
158
                    </span>
159
                    </div>
160
                  </div>
161

    
162
                </ng-container>
163

    
164
                <ng-container *ngIf="event.highlight.subjects && event.highlight.subjects.length>0">
165

    
166
                  <div class="small-content">
167
                    <span class="uk-badge uk-badge-success uk-margin-small-right">{{event.highlight.subjects.length}} Subject(s) added</span>
168
                    <span class="mute-title">FROM: </span>
169
                    <ng-container *ngIf="event.provenance.url">
170
                      <a href="{{ event.provenance.url }}" target="_blank">{{ event.provenance.repositoryName }}</a>
171
                      <span *ngIf="event.provenance.id"> (ID: {{ event.provenance.id }})</span>
172
                    </ng-container>
173
                    <ng-container *ngIf="!event.provenance.url">
174
                      <span>{{ event.provenance.repositoryName }}</span>
175
                    </ng-container>
176
                  </div>
177

    
178
                  <div class="uk-margin-top uk-margin-medium-bottom small-content">
179
                    <div *ngFor="let subj of event.highlight.subjects; let s_index = index" class="uk-margin-small-bottom">
180
                      <span class="highlightIndex">{{(s_index + 1)}}. </span>
181
                      <span>{{ subj.value }}</span>
182
                    </div>
183
                  </div>
184

    
185
                </ng-container>
186

    
187
                <ng-container *ngIf="event.highlight.publications && event.highlight.publications.length>0">
188

    
189
                  <div class="small-content">
190
                    <span class="uk-badge uk-badge-success uk-margin-small-right">{{event.highlight.publications.length}} Publications(s) added</span>
191
                    <span class="mute-title">FROM: </span>
192
                    <ng-container *ngIf="event.provenance.url">
193
                      <a href="{{ event.provenance.url }}" target="_blank">{{ event.provenance.repositoryName }}</a>
194
                      <span *ngIf="event.provenance.id"> (ID: {{ event.provenance.id }})</span>
195
                    </ng-container>
196
                    <ng-container *ngIf="!event.provenance.url">
197
                      <span>{{ event.provenance.repositoryName }}</span>
198
                    </ng-container>
199
                  </div>
200

    
201
                  <div class="uk-margin-top uk-margin-medium-bottom small-content">
202
                    <div *ngFor="let pub of event.highlight.publications; let p_index = index" class="uk-margin-small-bottom">
203
                      <span class="highlightIndex">{{(p_index + 1)}}. </span>
204
                      <span>{{ pub.title }} (ID: {{pub.originalId}})</span>
205
                    </div>
206
                  </div>
207

    
208
                </ng-container>
209

    
210
                <ng-container *ngIf="event.highlight.datasets && event.highlight.datasets.length>0">
211

    
212
                  <div class="small-content">
213
                    <span class="uk-badge uk-badge-success uk-margin-small-right">{{event.highlight.datasets.length}} Dataset(s) added</span>
214
                    <span class="mute-title">FROM: </span>
215
                    <ng-container *ngIf="event.provenance.url">
216
                      <a href="{{ event.provenance.url }}" target="_blank">{{ event.provenance.repositoryName }}</a>
217
                      <span *ngIf="event.provenance.id"> (ID: {{ event.provenance.id }})</span>
218
                    </ng-container>
219
                    <ng-container *ngIf="!event.provenance.url">
220
                      <span>{{ event.provenance.repositoryName }}</span>
221
                    </ng-container>
222
                  </div>
223

    
224
                  <div class="uk-margin-top uk-margin-medium-bottom small-content">
225
                    <div *ngFor="let dataset of event.highlight.datasets; let d_index = index" class="uk-margin-small-bottom">
226
                      <span class="highlightIndex">{{(d_index + 1)}}. </span>
227
                      <span>{{ dataset.title }} <span *ngIf="dataset.pids && dataset.pids.length>0">({{dataset.pids[0].type}}: {{dataset.pids[0].value}})</span></span>
228
                    </div>
229
                  </div>
230

    
231
                </ng-container>
232

    
233
                <ng-container *ngIf="event.highlight.softwares && event.highlight.softwares.length>0">
234

    
235
                  <div class="small-content">
236
                    <span class="uk-badge uk-badge-success uk-margin-small-right">{{event.highlight.softwares.length}} Software(s) added</span>
237
                    <span class="mute-title">FROM: </span>
238
                    <ng-container *ngIf="event.provenance.url">
239
                      <a href="{{ event.provenance.url }}" target="_blank">{{ event.provenance.repositoryName }}</a>
240
                      <span *ngIf="event.provenance.id"> (ID: {{ event.provenance.id }})</span>
241
                    </ng-container>
242
                    <ng-container *ngIf="!event.provenance.url">
243
                      <span>{{ event.provenance.repositoryName }}</span>
244
                    </ng-container>
245
                  </div>
246

    
247
                  <div class="uk-margin-top uk-margin-medium-bottom small-content">
248
                    <div *ngFor="let software of event.highlight.softwares; let s_index = index" class="uk-margin-small-bottom">
249
                      <span class="highlightIndex">{{(s_index + 1)}}. </span>
250
                      <span>{{ software.name }}</span>
251
                      <span *ngIf="software.description"> <br> {{ software.description }}</span>
252
                      <span><br><a href="{{ software.landingPage }}" target="_blank">{{ software.landingPage }}</a></span>
253
                    </div>
254
                  </div>
255

    
256
                </ng-container>
257

    
258
                <ng-container *ngIf="event.highlight.instances && event.highlight.instances.length>0">
259

    
260
                  <div class="small-content">
261
                    <span class="uk-badge uk-badge-success uk-margin-small-right">{{event.highlight.instances.length}} OA version(s) added</span>
262
                    <span class="mute-title">FROM: </span>
263
                    <ng-container *ngIf="event.provenance.url">
264
                      <a href="{{ event.provenance.url }}" target="_blank">{{ event.provenance.repositoryName }}</a>
265
                      <span *ngIf="event.provenance.id"> (ID: {{ event.provenance.id }})</span>
266
                    </ng-container>
267
                    <ng-container *ngIf="!event.provenance.url">
268
                      <span>{{ event.provenance.repositoryName }}</span>
269
                    </ng-container>
270
                  </div>
271

    
272
                  <div class="uk-margin-top uk-margin-medium-bottom small-content">
273
                    <div *ngFor="let l of event.highlight.instances; let l_index = index" class="uk-margin-small-bottom">
274
                      <span class="highlightIndex">{{(l_index + 1)}}. </span>
275
                      <span>
276
                    {{ l.license }}&nbsp;&nbsp;<b>{{ l.hostedby }}</b>
277
                    <a href="{{ l.url }}" target="_blank" class="uk-margin-left">{{ l.url }}</a>
278
                  </span>
279
                    </div>
280
                  </div>
281

    
282
                </ng-container>
283

    
284
                <div *ngIf="selectedItemIndex == item_i" class="uk-text-meta uk-text-center">
285
                  <a (click)="showLess(item_i)">Show less <i class="fas fa-angle-up uk-margin-small-left"></i></a>
286
                </div>
287

    
288
                <div *ngIf="selectedItemIndex != item_i" class="uk-text-meta uk-text-center">
289
                  <a (click)="showMore(item_i)">Show more <i class="fas fa-angle-down uk-margin-small-left"></i></a>
290
                </div>
291

    
292
                <ng-container *ngIf="selectedItemIndex == item_i">
293
                  <hr>
294

    
295
                  <!--AUTHORS-->
296
                  <div *ngIf="event.result.creators && event.result.creators.length>0" class="uk-margin-small-bottom">
297
                    <span class="mute-title">Author(s): </span>
298
                    <span *ngFor="let auth of event.result.creators; let au_index = index" class="small-content">
299
                    <span *ngIf="au_index>0"> | </span>
300
                    <span>{{ auth.fullname }} <b>&nbsp;({{ auth.orcid }})&nbsp;&nbsp;</b></span>
301
                  </span>
302
                  </div>
303

    
304
                  <!--PIDs-->
305
                  <div *ngIf="event.result.pids && event.result.pids.length>0" class="uk-margin-small-bottom">
306
                    <span class="mute-title">PID(s): </span>
307
                    <span *ngFor="let pid of event.result.pids; let p_index = index" class="small-content">
308
                    <br *ngIf="p_index > 0">
309
                    <span>{{ pid.value }} <b>&nbsp;&nbsp;({{ pid.type }})&nbsp;&nbsp;</b></span>
310
                  </span>
311
                  </div>
312

    
313
                  <!--Abstracts-->
314
                  <div *ngIf="event.result.abstracts && event.result.abstracts.length>0" class="uk-margin-small-bottom">
315
                    <span class="mute-title">Abstract(s): </span>
316
                    <span *ngFor="let abs of event.result.abstracts; let a_index = index" class="small-content">
317
                    <br *ngIf="a_index > 0">
318
                    <span>
319
                      <read-more-text [text]="abs" [maxHeight]="83"></read-more-text>
320
                    </span>
321
                  </span>
322
                  </div>
323

    
324
                  <!--Projects/Relations-->
325
                  <div *ngIf="event.result.projects && event.result.projects.length>0" class="uk-margin-small-bottom">
326
                    <span class="mute-title">Project(s)/Relation(s): </span>
327
                    <span *ngFor="let proj of event.result.projects; let p_index = index" class="small-content">
328
                    <br *ngIf="p_index > 0">
329
                    <span *ngIf="proj.acronym && proj.acronym !==''">{{ proj.acronym }}</span>
330
                    <span *ngIf="!proj.acronym || proj.acronym ===''">{{ proj.title }}</span>
331
                    <span *ngIf="(proj.funder && proj.funder !=='') ||
332
                                 (proj.fundingProgram && proj.fundingProgram !=='')">
333
                      (<span *ngIf="proj.funder && proj.funder !==''">{{ proj.funder }} </span>
334
                      <span *ngIf="(proj.funder && proj.funder !=='') &&
335
                                   (proj.fundingProgram && proj.fundingProgram !=='')">/</span>
336
                      <span *ngIf="proj.fundingProgram && proj.fundingProgram !==''">{{ proj.fundingProgram }}</span>)
337
                    </span>
338
                  </span>
339
                  </div>
340

    
341
                  <!--Subjects-->
342
                  <div *ngIf="event.result.subjects && event.result.subjects.length>0" class="uk-margin-small-bottom">
343
                    <span class="mute-title">Subject(s): </span>
344
                    <span *ngFor="let subj of event.result.subjects; let s_index = index" class="small-content">
345
                    <span *ngIf="s_index>0"> | </span>
346
                    <span>{{ subj.value }}</span>
347
                  </span>
348
                  </div>
349

    
350
                  <!--Publications-->
351
                  <div *ngIf="event.result.publications && event.result.publications.length>0" class="uk-margin-small-bottom">
352
                    <span *ngIf="this.topic.includes('PUBLICATION')" class="mute-title">{{this.lastTopicEntry}} Publication(s): </span>
353
                    <span *ngIf="!this.topic.includes('PUBLICATION')" class="mute-title">Publication(s): </span>
354
                    <span *ngFor="let pub of event.result.publications; let p_index = index" class="small-content">
355
                    <br *ngIf="p_index > 0">
356
                    <span>{{ pub.title }} (ID: {{pub.originalId}})</span>
357
                  </span>
358
                  </div>
359

    
360
                  <!--Datasets-->
361
                  <div *ngIf="event.result.datasets && event.result.datasets.length>0" class="uk-margin-small-bottom">
362
                    <span *ngIf="this.topic.includes('DATASET')" class="mute-title">{{this.lastTopicEntry}} Dataset(s): </span>
363
                    <span *ngIf="!this.topic.includes('DATASET')" class="mute-title">Dataset(s): </span>
364
                    <span *ngFor="let dataset of event.result.datasets; let d_index = index" class="small-content">
365
                    <br *ngIf="d_index > 0">
366
                    <span>{{ dataset.title }} <span *ngIf="dataset.pids && dataset.pids.length>0">({{dataset.pids[0].type}}: {{dataset.pids[0].value}})</span></span>
367
                  </span>
368
                  </div>
369

    
370
                  <!--Software-->
371
                  <div *ngIf="event.result.softwares && event.result.softwares.length>0" class="uk-margin-small-bottom">
372
                    <span *ngIf="this.topic.includes('SOFTWARE')" class="mute-title">{{this.lastTopicEntry}} Software(s): </span>
373
                    <span *ngIf="!this.topic.includes('SOFTWARE')" class="mute-title">Software(s): </span>
374
                    <span *ngFor="let software of event.result.softwares; let s_index = index" class="small-content">
375
                    <br *ngIf="s_index > 0">
376
                    <span>{{ software.name }}</span>
377
                    <span *ngIf="software.description"> <br> {{ software.description }}</span>
378
                    <span><br><a href="{{ software.landingPage }}" target="_blank">{{ software.landingPage }}</a></span>
379
                    <span *ngIf="software.landingPage !== software.repository"><br><a href="{{ software.repository }}" target="_blank">{{ software.repository }}</a></span>
380
                  </span>
381
                  </div>
382

    
383
                  <!--Publication Date-->
384
                  <div *ngIf="event.result.publicationdate && event.result.publicationdate.length>0" class="uk-margin-small-bottom">
385
                    <span class="mute-title">Publication date(s): </span>
386
                    <span class="small-content">
387
                    {{ event.result.publicationdate }}
388
                  </span>
389
                  </div>
390

    
391
                  <!--Rights-->
392
                  <div *ngIf="event.result.instances && event.result.instances.length>0" class="uk-margin-small-bottom">
393
                    <span class="mute-title">Rights: </span>
394
                    <span *ngFor="let l of event.result.instances; let l_index = index" class="small-content">
395
                    <br *ngIf="l_index > 0">
396
                    <span>
397
                      {{ l.license }}&nbsp;&nbsp;<b>{{ l.hostedby }}</b> - <a class="" href="{{ l.url }}" target="_blank">{{ l.url }}</a>
398
                    </span>
399
                  </span>
400
                  </div>
401

    
402
                </ng-container>
403

    
404
              </div>
405

    
406
            </div>
407

    
408

    
409
            <!-- BOTTOM PAGINATION LINKS -->
410
            <ul class="uk-pagination uk-margin-top uk-flex-right" uk-margin>
411
              <li><a (click)="goToPreviousPage()" class="pagination_arrow"><span uk-pagination-previous></span></a></li>
412
              <li class="uk-active"><span>{{ (eventsPage.totalPages > 0) ? currentPage+1 : 0 }}</span></li>
413
              <li><a (click)="goToNextPage()" class="pagination_arrow"><span uk-pagination-next></span></a></li>
414
            </ul>
415

    
416
          </div>
417
        </div>
418

    
419
      </div>
420

    
421
      <!-- RIGHT HELP CONTENT -->
422
      <aside-help-content #rightHelperContent [position]="'right'"
423
                          [ngClass]="rightHelperContent.isPresent()?'tm-sidebar uk-width-1-4@m uk-first-column':'clear-style'">
424
      </aside-help-content>
425

    
426
    </div>
427

    
428
    <!-- BOTTOM HELP CONTENT -->
429
    <help-content #bottomHelperContent [position]="'bottom'"
430
                  [ngClass]="bottomHelperContent.isPresent()?'uk-margin-medium-top uk-margin-medium-bottom':'clear-style'">
431
    </help-content>
432

    
433
  </div>
434
</div>
435

    
(1-1/7)