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.publication.originalId" class="uk-text-meta">ID: {{event.publication.originalId}}</div>
57

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

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

    
66
                  <div class="small-content">
67
                    <span class="uk-badge uk-badge-success uk-margin-small-right">{{event.highlight.pids.length}} PID(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 pid of event.highlight.pids; let p_index = index" class="uk-margin-small-bottom">
80
                      <span class="highlightIndex">{{(p_index + 1)}}. </span>
81
                      <span>{{ pid.value }} <b>&nbsp;&nbsp;({{ pid.type }})&nbsp;&nbsp;</b></span>
82
                    </div>
83
                  </div>
84

    
85
                </ng-container>
86

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

    
89
                  <div class="small-content">
90
                    <span class="uk-badge uk-badge-success uk-margin-small-right">{{event.highlight.abstracts.length}} Abstract(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 abs of event.highlight.abstracts; let a_index = index" class="uk-margin-small-bottom">
103
                      <span class="highlightIndex">{{(a_index + 1)}}. </span>
104
                      <span class=""><read-more-text [text]="abs" [maxHeight]="40"></read-more-text></span>
105
                    </div>
106
                  </div>
107

    
108
                </ng-container>
109

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

    
112
                  <div class="small-content">
113
                    <span class="uk-badge uk-badge-success uk-margin-small-right">{{event.highlight.projects.length}} Project(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 proj of event.highlight.projects; let p_index = index" class="uk-margin-small-bottom">
126
                      <span class="highlightIndex">{{(p_index + 1)}}. </span>
127
                      <span *ngIf="proj.acronym && proj.acronym !==''">{{ proj.acronym }}</span>
128
                      <span *ngIf="!proj.acronym || proj.acronym ===''">{{ proj.title }}</span>
129
                      <span *ngIf="(proj.funder && proj.funder !=='') ||
130
                                 (proj.fundingProgram && proj.fundingProgram !=='')">
131
                      (<span *ngIf="proj.funder && proj.funder !==''">{{ proj.funder }} </span>
132
                      <span *ngIf="(proj.funder && proj.funder !=='') &&
133
                                   (proj.fundingProgram && proj.fundingProgram !=='')">/</span>
134
                      <span *ngIf="proj.fundingProgram && proj.fundingProgram !==''">{{ proj.fundingProgram }}</span>)
135
                    </span>
136
                    </div>
137
                  </div>
138

    
139
                </ng-container>
140

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

    
143
                  <div class="small-content">
144
                    <span class="uk-badge uk-badge-success uk-margin-small-right">{{event.highlight.subjects.length}} Subject(s) added</span>
145
                    <span class="mute-title">FROM: </span>
146
                    <ng-container *ngIf="event.provenance.url">
147
                      <a href="{{ event.provenance.url }}" target="_blank">{{ event.provenance.repositoryName }}</a>
148
                      <span *ngIf="event.provenance.id"> (ID: {{ event.provenance.id }})</span>
149
                    </ng-container>
150
                    <ng-container *ngIf="!event.provenance.url">
151
                      <span>{{ event.provenance.repositoryName }}</span>
152
                    </ng-container>
153
                  </div>
154

    
155
                  <div class="uk-margin-top uk-margin-medium-bottom small-content">
156
                    <div *ngFor="let subj of event.highlight.subjects; let s_index = index" class="uk-margin-small-bottom">
157
                      <span class="highlightIndex">{{(s_index + 1)}}. </span>
158
                      <span>{{ subj }}</span>
159
                    </div>
160
                  </div>
161

    
162
                </ng-container>
163

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

    
166
                  <div class="small-content">
167
                    <span class="uk-badge uk-badge-success uk-margin-small-right">{{event.highlight.publications.length}} Publications(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 pub of event.highlight.publications; let p_index = index" class="uk-margin-small-bottom">
180
                      <span class="highlightIndex">{{(p_index + 1)}}. </span>
181
                      <span>{{ pub.titles[0] }} (ID: {{pub.originalId}})</span>
182
                    </div>
183
                  </div>
184

    
185
                </ng-container>
186

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

    
189
                  <div class="small-content">
190
                    <span class="uk-badge uk-badge-success uk-margin-small-right">{{event.highlight.datasets.length}} Dataset(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 dataset of event.highlight.datasets; let d_index = index" class="uk-margin-small-bottom">
203
                      <span class="highlightIndex">{{(d_index + 1)}}. </span>
204
                      <span>{{ dataset.titles[0] }} <span *ngIf="dataset.pids && dataset.pids.length>0">({{dataset.pids[0].type}}: {{dataset.pids[0].value}})</span></span>
205
                    </div>
206
                  </div>
207

    
208
                </ng-container>
209

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

    
212
                  <div class="small-content">
213
                    <span class="uk-badge uk-badge-success uk-margin-small-right">{{event.highlight.softwares.length}} Software(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 software of event.highlight.softwares; let s_index = index" class="uk-margin-small-bottom">
226
                      <span class="highlightIndex">{{(s_index + 1)}}. </span>
227
                      <span>{{ software.name }}</span>
228
                      <span *ngIf="software.description"> <br> {{ software.description }}</span>
229
                      <span><br><a href="{{ software.landingPage }}" target="_blank">{{ software.landingPage }}</a></span>
230
                    </div>
231
                  </div>
232

    
233
                </ng-container>
234

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

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

    
249
                  <div class="uk-margin-top uk-margin-medium-bottom small-content">
250
                    <div *ngFor="let l of event.highlight.instances; let l_index = index" class="uk-margin-small-bottom">
251
                      <span class="highlightIndex">{{(l_index + 1)}}. </span>
252
                      <span>
253
                    {{ l.license }}&nbsp;&nbsp;<b>{{ l.hostedby }}</b>
254
                    <a href="{{ l.url }}" target="_blank" class="uk-margin-left">{{ l.url }}</a>
255
                  </span>
256
                    </div>
257
                  </div>
258

    
259
                </ng-container>
260

    
261
                <div *ngIf="selectedItemIndex == item_i" class="uk-text-meta uk-text-center">
262
                  <a (click)="showLess(item_i)">Show less <i class="fas fa-angle-up uk-margin-small-left"></i></a>
263
                </div>
264

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

    
269
                <ng-container *ngIf="selectedItemIndex == item_i">
270
                  <hr>
271

    
272
                  <!--AUTHORS-->
273
                  <div *ngIf="event.publication.creators && event.publication.creators.length>0" class="uk-margin-small-bottom">
274
                    <span class="mute-title">Author(s): </span>
275
                    <span *ngFor="let auth of event.publication.creators; let au_index = index" class="small-content">
276
                    <span *ngIf="au_index>0"> | </span>
277
                    <span>{{ auth }}</span>
278
                  </span>
279
                  </div>
280

    
281
                  <!--PIDs-->
282
                  <div *ngIf="event.publication.pids && event.publication.pids.length>0" class="uk-margin-small-bottom">
283
                    <span class="mute-title">PID(s): </span>
284
                    <span *ngFor="let pid of event.publication.pids; let p_index = index" class="small-content">
285
                    <br *ngIf="p_index > 0">
286
                    <span>{{ pid.value }} <b>&nbsp;&nbsp;({{ pid.type }})&nbsp;&nbsp;</b></span>
287
                  </span>
288
                  </div>
289

    
290
                  <!--Abstracts-->
291
                  <div *ngIf="event.publication.abstracts && event.publication.abstracts.length>0" class="uk-margin-small-bottom">
292
                    <span class="mute-title">Abstract(s): </span>
293
                    <span *ngFor="let abs of event.publication.abstracts; let a_index = index" class="small-content">
294
                    <br *ngIf="a_index > 0">
295
                    <span>
296
                      <read-more-text [text]="abs" [maxHeight]="83"></read-more-text>
297
                    </span>
298
                  </span>
299
                  </div>
300

    
301
                  <!--Projects/Relations-->
302
                  <div *ngIf="event.publication.projects && event.publication.projects.length>0" class="uk-margin-small-bottom">
303
                    <span class="mute-title">Project(s)/Relation(s): </span>
304
                    <span *ngFor="let proj of event.publication.projects; let p_index = index" class="small-content">
305
                    <br *ngIf="p_index > 0">
306
                    <span *ngIf="proj.acronym && proj.acronym !==''">{{ proj.acronym }}</span>
307
                    <span *ngIf="!proj.acronym || proj.acronym ===''">{{ proj.title }}</span>
308
                    <span *ngIf="(proj.funder && proj.funder !=='') ||
309
                                 (proj.fundingProgram && proj.fundingProgram !=='')">
310
                      (<span *ngIf="proj.funder && proj.funder !==''">{{ proj.funder }} </span>
311
                      <span *ngIf="(proj.funder && proj.funder !=='') &&
312
                                   (proj.fundingProgram && proj.fundingProgram !=='')">/</span>
313
                      <span *ngIf="proj.fundingProgram && proj.fundingProgram !==''">{{ proj.fundingProgram }}</span>)
314
                    </span>
315
                  </span>
316
                  </div>
317

    
318
                  <!--Subjects-->
319
                  <div *ngIf="event.publication.subjects && event.publication.subjects.length>0" class="uk-margin-small-bottom">
320
                    <span class="mute-title">Subject(s): </span>
321
                    <span *ngFor="let subj of event.publication.subjects; let s_index = index" class="small-content">
322
                    <span *ngIf="s_index>0"> | </span>
323
                    <span>{{ subj }}</span>
324
                  </span>
325
                  </div>
326

    
327
                  <!--Publications-->
328
                  <div *ngIf="event.publication.publications && event.publication.publications.length>0" class="uk-margin-small-bottom">
329
                    <span *ngIf="this.topic.includes('PUBLICATION')" class="mute-title">{{this.lastTopicEntry}} Publication(s): </span>
330
                    <span *ngIf="!this.topic.includes('PUBLICATION')" class="mute-title">Publication(s): </span>
331
                    <span *ngFor="let pub of event.publication.publications; let p_index = index" class="small-content">
332
                    <br *ngIf="p_index > 0">
333
                    <span>{{ pub.titles[0] }} (ID: {{pub.originalId}})</span>
334
                  </span>
335
                  </div>
336

    
337
                  <!--Datasets-->
338
                  <div *ngIf="event.publication.datasets && event.publication.datasets.length>0" class="uk-margin-small-bottom">
339
                    <span *ngIf="this.topic.includes('DATASET')" class="mute-title">{{this.lastTopicEntry}} Dataset(s): </span>
340
                    <span *ngIf="!this.topic.includes('DATASET')" class="mute-title">Dataset(s): </span>
341
                    <span *ngFor="let dataset of event.publication.datasets; let d_index = index" class="small-content">
342
                    <br *ngIf="d_index > 0">
343
                    <span>{{ dataset.titles[0] }} <span *ngIf="dataset.pids && dataset.pids.length>0">({{dataset.pids[0].type}}: {{dataset.pids[0].value}})</span></span>
344
                  </span>
345
                  </div>
346

    
347
                  <!--Software-->
348
                  <div *ngIf="event.publication.softwares && event.publication.softwares.length>0" class="uk-margin-small-bottom">
349
                    <span *ngIf="this.topic.includes('SOFTWARE')" class="mute-title">{{this.lastTopicEntry}} Software(s): </span>
350
                    <span *ngIf="!this.topic.includes('SOFTWARE')" class="mute-title">Software(s): </span>
351
                    <span *ngFor="let software of event.publication.softwares; let s_index = index" class="small-content">
352
                    <br *ngIf="s_index > 0">
353
                    <span>{{ software.name }}</span>
354
                    <span *ngIf="software.description"> <br> {{ software.description }}</span>
355
                    <span><br><a href="{{ software.landingPage }}" target="_blank">{{ software.landingPage }}</a></span>
356
                    <span *ngIf="software.landingPage !== software.repository"><br><a href="{{ software.repository }}" target="_blank">{{ software.repository }}</a></span>
357
                  </span>
358
                  </div>
359

    
360
                  <!--Publication Date-->
361
                  <div *ngIf="event.publication.publicationdate && event.publication.publicationdate.length>0" class="uk-margin-small-bottom">
362
                    <span class="mute-title">Publication date(s): </span>
363
                    <span class="small-content">
364
                    {{ event.publication.publicationdate }}
365
                  </span>
366
                  </div>
367

    
368
                  <!--Rights-->
369
                  <div *ngIf="event.publication.instances && event.publication.instances.length>0" class="uk-margin-small-bottom">
370
                    <span class="mute-title">Rights: </span>
371
                    <span *ngFor="let l of event.publication.instances; let l_index = index" class="small-content">
372
                    <br *ngIf="l_index > 0">
373
                    <span>
374
                      {{ l.license }}&nbsp;&nbsp;<b>{{ l.hostedby }}</b> - <a class="" href="{{ l.url }}" target="_blank">{{ l.url }}</a>
375
                    </span>
376
                  </span>
377
                  </div>
378

    
379
                </ng-container>
380

    
381
              </div>
382

    
383
            </div>
384

    
385

    
386
            <!-- BOTTOM PAGINATION LINKS -->
387
            <ul class="uk-pagination uk-margin-top uk-flex-right" uk-margin>
388
              <li><a (click)="goToPreviousPage()" class="pagination_arrow"><span uk-pagination-previous></span></a></li>
389
              <li class="uk-active"><span>{{ (eventsPage.totalPages > 0) ? currentPage+1 : 0 }}</span></li>
390
              <li><a (click)="goToNextPage()" class="pagination_arrow"><span uk-pagination-next></span></a></li>
391
            </ul>
392

    
393
          </div>
394
        </div>
395

    
396
      </div>
397

    
398
      <!-- RIGHT HELP CONTENT -->
399
      <aside-help-content #rightHelperContent [position]="'right'"
400
                          [ngClass]="rightHelperContent.isPresent()?'tm-sidebar uk-width-1-4@m uk-first-column':'clear-style'">
401
      </aside-help-content>
402

    
403
    </div>
404

    
405
    <!-- BOTTOM HELP CONTENT -->
406
    <help-content #bottomHelperContent [position]="'bottom'"
407
                  [ngClass]="bottomHelperContent.isPresent()?'uk-margin-medium-top uk-margin-medium-bottom':'clear-style'">
408
    </help-content>
409

    
410
  </div>
411
</div>
412

    
(1-1/7)