Project

General

Profile

1
<div *ngIf="result">
2
  <!-- Before title -->
3
  <div class="uk-grid uk-flex uk-flex-middle">
4
    <div   *ngIf="properties.enermapsURL && showEnermaps && result.enermapsId"  class=" uk-inline uk-width-auto  uk-text-center uk-visible-toggle">
5
      <img  class="uk-width-medium" [src]="properties.enermapsURL +'/images/' + result.enermapsId + '.png'" alt="Enermaps tool preview">
6
      <div class="uk-overlay uk-margin-medium-left uk-overlay-default uk-position-bottom uk-hidden-hover uk-padding-small">
7
        <p>Visit <a
8
          class=" uk-margin-right uk-margin-small-top"
9
          [href]="properties.enermapsURL" target="_blank" >
10
          Enermaps tool <span class="custom-external custom-icon space"></span>
11
        </a></p>
12
      </div>
13

    
14
    </div>
15
    <div class="uk-width-expand">
16
  <div>
17
    <!-- deposit searchPage URL -->
18
    <span class="uk-width-expand uk-flex-right">
19
        <a *ngIf="result.websiteURL && promoteWebsiteURL" href="{{result.websiteURL}}" target="_blank" type="submit"
20
           class="  uk-float-right uk-button uk-button-primary uk-padding uk-padding-remove-vertical uk-margin-small-left">
21
          <span><span>Visit repository to deposit</span><span uk-icon="arrow-right"></span></span>
22
        </a>
23
    </span>
24
    <div class="uk-text-small">
25
      <span *ngIf="type" class="uk-text-capitalize type">{{type}}</span>
26
      <span *ngIf="type && beforeTitle.length > 0"> . </span>
27
      <span *ngIf="beforeTitle.length > 0" class="uk-text-capitalize">
28
        {{beforeTitle.join(' . ')}}
29
      </span>
30
      <span *ngIf="result.embargoEndDate && result.embargoEndDate != ''">
31
        <span
32
            *ngIf="beforeTitle.length > 0"> . </span> Embargo End Date: {{result.embargoEndDate | date: 'dd MMM yyyy'}}
33
      </span>
34
    </div>
35
    <!-- Title -->
36
    <div class="uk-margin-small-bottom">
37
      <h6 class="uk-margin-remove uk-text-break">
38
        <a *ngIf="!externalUrl && result.id && !(result.resultType == 'dataprovider' && result.compatibilityUNKNOWN) "
39
           (click)="onClick()" [queryParams]="createParam()"
40
           [routerLink]="url" class="uk-link uk-width-expand">
41
          <div *ngIf="(result.title) || result.acronym">
42
            <span *ngIf="result.acronym">
43
              {{result.acronym}}
44
            </span>
45
            <span *ngIf="result.acronym && (result.title)"> (</span>
46
            <span *ngIf="result.title" [innerHTML]="result.title"></span>
47
            <span *ngIf="result.acronym && result.title">)</span>
48
          </div>
49
          <div *ngIf="!result.title && !result.acronym">
50
            [no title available]
51
          </div>
52
        </a>
53

    
54
        <a *ngIf="externalUrl && result.id && !(result.resultType == 'dataprovider' && result.compatibilityUNKNOWN) "
55
           (click)="onClick()"
56
           target="_blank" [href]="externalUrl+result.id" class="uk-link uk-width-expand">
57
          <span *ngIf="(result.title) || result.acronym">
58
            <span *ngIf="result.acronym">
59
              {{result.acronym}}
60
            </span>
61
            <span *ngIf="result.acronym && (result.title)"> (</span>
62
            <span *ngIf="result.title" [innerHTML]="result.title"></span>
63
            <span *ngIf="result.acronym && result.title">)</span>
64
          </span>
65
          <span *ngIf="!result.title && !result.acronym">
66
            [no title available]
67
          </span>
68
          <span class="custom-external custom-icon space"></span>
69
        </a>
70

    
71
        <div *ngIf="!result.id ||  (result.resultType == 'dataprovider' && result.compatibilityUNKNOWN)"
72
             class="uk-width-expand">
73
          <div *ngIf="(result.title) || result.acronym">
74
      <span *ngIf="result.acronym">
75
        {{result.acronym}}
76
      </span>
77
            <span *ngIf="result.acronym && (result.title)"> (</span>
78
            <span *ngIf="result.title" [innerHTML]="result.title"></span>
79
            <span *ngIf="result.acronym && result.title">)</span>
80
          </div>
81
          <div *ngIf="!result.title && !result.acronym">
82
            [no title available]
83
          </div>
84
        </div>
85
        <hr *ngIf="result.websiteURL && promoteWebsiteURL">
86
      </h6>
87
    </div>
88
    <!-- Funder -->
89
    <div *ngIf="result.funderShortname || result.code" class="uk-margin-small-bottom">
90
  <span *ngIf="result.funderShortname">
91
    <span class="uk-text-muted">Funder: </span>
92
    {{result.funderShortname}}
93
  </span>
94
      <span *ngIf="result.code" [class.uk-margin-left]="result.funderShortname">
95
    <span class="uk-text-muted">Project Code: </span>
96
        {{result.code}}
97
  </span>
98
      <!--      Currently not parsed -->
99
      <!--      <span *ngIf="result.callIdentifier" [class.uk-margin-left]="(result.funderShortname || result.code)">-->
100
      <!--    <span class="uk-text-muted">Call for proposal: </span>-->
101
      <!--        {{result.callIdentifier}}-->
102
      <!--  </span>-->
103
    </div>
104
    <!-- Funder Budget -->
105
    <div *ngIf="result.budget || result.contribution" class="uk-margin-small-bottom">
106
      <span *ngIf="result.budget">
107
        <span class="uk-text-muted">Overall Budget: </span>
108
        {{result.budget | number}}
109
        <span *ngIf="result.currency">{{result.currency}}</span>
110
      </span>
111
      <span *ngIf="result.contribution" [class.uk-margin-left]="result.budget">
112
        <span class="uk-text-muted">Funder Contribution: </span>
113
        {{result.contribution | number}}
114
        <span *ngIf="result.currency">{{result.currency}}</span>
115
      </span>
116
    </div>
117
    <!-- Labels -->
118
    <div class="uk-margin-small-bottom">
119
      <span
120
          *ngIf="result.accessMode && result.accessMode.toLowerCase() !== 'not available'"
121
          class="uk-label custom-label" [ngClass]="'label-' + accessClass(result.accessMode)"
122
          title="Access Mode">
123
        {{result.accessMode}}
124
      </span>{{' '}}
125
      <span *ngIf="result.openAccessMandatePublications && (!result.openAccessMandateDatasets)"
126
            class="uk-label custom-label label-open"
127
            title="Open Access mandate for Publications">
128
          Open Access mandate for Publications
129
  </span>{{' '}}
130
      <span
131
          *ngIf="result.openAccessMandateDatasets != undefined && result.openAccessMandateDatasets && (result.openAccessMandatePublications == undefined || !result.openAccessMandatePublications)"
132
          class="uk-label custom-label label-open " title="Open Access mandate for Research Data">
133
          Open Access mandate for Research Data
134
  </span>{{' '}}
135
      <span
136
          *ngIf="result.openAccessMandatePublications != undefined && result.openAccessMandatePublications && result.openAccessMandateDatasets != undefined && result.openAccessMandateDatasets"
137
          class="uk-label custom-label label-open "
138
          title="Open Access mandate for Publications and Research Data">
139
          Open Access mandate for Publications and Research Data
140
  </span>{{' '}}
141
      <span *ngIf="result.languages && result.languages.length > 0">
142
    <span *ngFor="let language of result.languages"
143
          class="uk-label custom-label label-language " title="Language">
144
      {{language}}
145
    </span>{{' '}}
146
  </span>
147
      <span *ngIf="result.programmingLanguages && result.programmingLanguages.length > 0">
148
    <span *ngFor="let programmingLanguage of result.programmingLanguages"
149
          class="uk-label custom-label label-language" title="Programming Language">
150
      {{programmingLanguage}}
151
    </span>{{" "}}
152
  </span>
153
      <span *ngIf="result.sc39" class="uk-label custom-label label-sc39" title="Special Clause 39">
154
    Special Clause 39
155
  </span>{{' '}}
156
      <span *ngIf="result.compatibility && result.compatibility != '' && result.compatibility != 'not available'"
157
            class="uk-label custom-label  label-compatibility" title="Compatibility">
158
    {{result.compatibility}}
159
  </span>{{' '}}
160
      <span *ngIf="result.compatibility != undefined && result.compatibility != '' && result.compatibility ==
161
      'not available'"
162
            class="uk-label custom-label  label-danger" title="OpenAIRE Compatibility">Not yet registered</span>
163
      {{' '}}
164
    </div>
165
    <!-- Authors -->
166
    <div *ngIf="result.authors" class="uk-flex uk-margin-small-bottom">
167
      <div class="uk-text-muted">Authors:</div>
168
      <showAuthors class="space" [authors]="result.authors" [authorsLimit]=10 [modal]="modal"
169
                   [showAll]=false [small]="false"></showAuthors>
170
    </div>
171
    <!-- Identifiers -->
172
    <div *ngIf="result.identifiers && result.identifiers.size > 0" class="uk-margin-small-bottom">
173
      <showIdentifiers [identifiers]="result.identifiers"></showIdentifiers>
174
    </div>
175
    <!-- Publisher -->
176
    <div *ngIf="result.publisher && result.publisher != ''" class="uk-margin-small-bottom">
177
      <span class="uk-text-muted">Publisher: </span>
178
      {{result.publisher}}
179
    </div>
180
    <!-- Countries -->
181
    <div *ngIf="result.countries && result.countries.length > 0"
182
         class="uk-margin-small-bottom">
183
      <span class="uk-text-muted">{{(result.countries.length == 1) ? 'Country' : 'Countries'}}: </span>
184
      <span *ngFor="let country of  result.countries.slice(0,10) let i = index">
185
        {{country}}{{(i < (result.countries.slice(0, 10).length - 1)) ? ", " : ""}}
186
        {{(i == result.countries.slice(0, 10).length - 1 && result.countries.length > 10) ? "..." : ""}}
187
  </span>
188
    </div>
189
    <!-- Projects -->
190
    <div *ngIf="result.projects && result.projects.length > 0" class="uk-margin-small-bottom">
191
      <span class="uk-text-muted"> Project: </span>
192
      <span *ngFor="let project of result.projects.slice(0,10) let i=index">
193
    <span>
194
      {{project.funderShortname ? project.funderShortname : project.funderName}}
195
    </span>
196
    <span *ngIf="project.acronym || project.title">
197
      | {{ project.acronym ? project.acronym : (project.title.length > 25 ?
198
        project.title.substring(0, 25) + '...' : project.title)}}
199
    </span>
200
    <span *ngIf="project.code"> ({{project.code}})</span>
201
    <span *ngIf="i < result.projects.length-1">,</span>
202
  </span>
203
      <span *ngIf="result.projects.length > 10">...</span>
204
    </div>
205
    <!-- Organizations -->
206
    <div *ngIf="showOrganizations && result.organizations && result.organizations.length > 0"
207
         class="uk-margin-small-bottom">
208
      <span class="uk-text-muted">Partners: </span>
209
      <span *ngFor="let organization of result.organizations.slice(0,10) let i=index">
210
    <span>{{organization.name}}</span>
211
    <span *ngIf="(i < result.organizations.length-1) && (i < 9)">, </span>
212
  </span>
213
      <span *ngIf="result.organizations.length > 10">...</span>
214
    </div>
215
    <!-- Website URL -->
216
    <div *ngIf="result.websiteURL && result.websiteURL != '' && !promoteWebsiteURL" class="uk-margin-small-bottom">
217
      <span class="uk-text-muted">Website URL: </span>
218
      <span>
219
            <a href="{{result.websiteURL}}" target="_blank">
220
              <span class="custom-external custom-icon"></span>
221
              {{result.websiteURL}}
222
            </a>
223
        </span>
224
    </div>
225
    <!-- OAI-PMH URL-->
226
    <div *ngIf="result.OAIPMHURL && result.OAIPMHURL != ''" class="uk-margin-small-bottom">
227
      <span class="uk-text-muted">OAI-PMH URL: </span>
228
      <span>
229
        <a href="{{result.OAIPMHURL}}" target="_blank">
230
          <span class="custom-external custom-icon"></span>
231
          {{result.OAIPMHURL}}
232
        </a>
233
      </span>
234
    </div>
235
    <!-- Subjects -->
236
    <div *ngIf="showSubjects && result.subjects && result.subjects.length > 0"
237
         class="uk-margin-small-bottom">
238
      <span class="uk-text-muted">Subject: </span>
239
      <span *ngFor="let subject of  result.subjects.slice(0,10) let i = index">
240
        <span>{{subject}}</span>
241
        <span>{{(i < (result.subjects.slice(0, 10).length - 1)) ? ", " : ""}}</span>
242
        <span>{{(i == result.subjects.slice(0, 10).length - 1 && result.subjects.length > 10) ? "..." : ""}}</span>
243
  </span>
244
    </div>
245
  </div>
246
  <!-- Description -->
247
  <div *ngIf="result.description" class="uk-margin-small-bottom multi-line-ellipsis lines-3">
248
    <p class="uk-text-muted">
249
      {{result.description}}
250
    </p>
251
  </div>
252
  <!-- Download from-->
253
  <div *ngIf="result.hostedBy_collectedFrom && result.hostedBy_collectedFrom.length > 0"
254
       class="uk-margin-small-bottom download-from">
255
    <div *ngFor="let from of result.hostedBy_collectedFrom"
256
         [title]="from.bestAccessMode ? from.bestAccessMode : 'Not available'"
257
         class="uk-flex">
258
    <span class="uk-margin-small-right">
259
      <img [src]="from.icon">
260
    </span>
261
      <span class="uk-width-expand">
262
      <span class="uk-margin-right uk-display-inline-block">
263
        <span class="uk-text-muted">Download from: </span>
264
        <span *ngIf="from.downloadUrl.length > 1" class="title">
265
            <span>{{from.downloadName}}</span>
266
            <a *ngFor="let url of from.downloadUrl; let i=index;"
267
               [href]="url" target="_blank">
268
               [{{(i + 1) | number}}]
269
            </a>
270
          </span>
271
        <a *ngIf="from.downloadUrl && from.downloadUrl.length === 1"
272
           [href]="from.downloadUrl[0]" target="_blank" class="title">
273
          {{from.downloadName}}
274
          <span class="custom-external space"></span>
275
        </a>
276
        <span *ngIf="!from.downloadUrl || from.downloadUrl.length === 0" class="title">
277
          {{from.downloadName}}
278
        </span>
279
      </span>
280
      <span class="provider uk-display-inline-block">
281
        <span class="uk-text-muted">Provider: </span>
282
        <!--      target="_blank"-->
283
        <a *ngIf="from.collectedId" [routerLink]="dataProviderUrl" [queryParams]="{datasourceId: from.collectedId}"
284
           [href]="from.downloadUrl[0]" (click)="onClick();">
285
          {{from.collectedName}}
286
          <!--        <span class="custom-external space"></span>-->
287
        </a>
288
        <span *ngIf="!from.collectedId">
289
          {{from.collectedName}}
290
        </span>
291
      </span>
292
    </span>
293
    </div>
294
  </div>
295
    </div>
296
  </div>
297
  <!--&& loggedIn -->
298
  <div *ngIf="(result.pop_inf && result.DOI) ||
299
                ((properties.adminToolsPortalType == 'explore' || properties.adminToolsPortalType == 'community') &&
300
                  ((showOrcid && result.identifiers && result.identifiers.size > 0) || result.orcidCreationDates?.length > 0))"
301
       class="result-preview-bottom">
302
    <!-- Impact Factors-->
303
    <span class="uk-flex uk-flex-top">
304
    <ng-container *ngIf="result.pop_inf && result.DOI">
305
    <!--Popularity -->
306
    <a title="Popularity" class="popularity-{{result.pop_inf[0]}}  uk-margin-right uk-flex uk-flex-middle">
307
      <svg xmlns="http://www.w3.org/2000/svg" width="10.749" height="14.33" viewBox="0 0 10.749 14.33"><defs><!--<style>.a{fill:#d51717;}</style>--></defs><path
308
          class="a"
309
          d="M10.382.67a14.44,14.44,0,0,1,.5,3.225A2.331,2.331,0,0,1,8.589,6.4,2.445,2.445,0,0,1,6.15,3.895l.02-.242A9.25,9.25,0,0,0,4,9.625a5.375,5.375,0,0,0,10.749,0A11.5,11.5,0,0,0,10.382.67ZM9.18,12.985a2.134,2.134,0,0,1-2.163-2.11A2.1,2.1,0,0,1,8.9,8.779a5.181,5.181,0,0,0,3.1-1.733,9.374,9.374,0,0,1,.4,2.714A3.226,3.226,0,0,1,9.18,12.985Z"
310
          transform="translate(-4 -0.67)"/></svg>
311
      <span class="uk-margin-small-left"
312
      >
313
        {{" " + result.pop_inf[2] +
314
      " popularity" }}</span>
315

    
316
    </a>
317
    <div
318
        class="default-dropdown uk-margin-remove-top uk-padding-medium"
319
        uk-dropdown="pos: bottom-left; mode:click" style="min-width: 70px !important;">
320
        <span class=" uk-flex uk-flex-middle">
321
          <span class="popularity-{{result.pop_inf[0]}}">
322
             <svg xmlns="http://www.w3.org/2000/svg" width="20.234" height="26.974"
323
                  viewBox="0 0 20.234 26.974"><defs> </defs><path class="a"
324
                                                                  d="M16.014.67a27.181,27.181,0,0,1,.936,6.07c0,2.605-1.707,4.717-4.312,4.717A4.6,4.6,0,0,1,8.047,6.74l.038-.455A17.411,17.411,0,0,0,4,17.527a10.117,10.117,0,0,0,20.234,0A21.643,21.643,0,0,0,16.014.67ZM13.75,23.85A4.016,4.016,0,0,1,9.678,19.88c0-2.049,1.328-3.49,3.554-3.946a9.753,9.753,0,0,0,5.843-3.263,17.645,17.645,0,0,1,.746,5.109,6.072,6.072,0,0,1-6.07,6.07Z"
325
                                                                  transform="translate(-4 -0.67)"/></svg>
326
            </span>
327
          <span class=" uk-margin-small-left uk-text-large">{{" " + result.pop_inf[2] +
328
          " popularity" }}</span>
329
          <span
330
              class="uk-margin-small-top uk-margin-small-left">{{" " + (result.pop_inf[0] == 'A' ? 'In top  0.01%' : '') + (result.pop_inf[0] == 'B' ? 'In top 1%' : '') + (result.pop_inf[0] == 'C' ? 'In bottom 99%' : '')}}</span>
331
        </span>
332
        <div class="uk-text-muted uk-margin">Popularity: Citation-based measure reflecting the current impact.</div>
333
        <div>
334
          <a title="Link to Bip!Finder" class="uk-float-right" target="_blank"
335
             href="https://bip.imis.athena-innovation.gr/site/details?id={{result.DOI}}">View more details</a>
336
        </div>
337
</div>
338
      <!--Influence -->
339
<a title="Influence" class="influence-{{result.pop_inf[1]}} uk-margin-right uk-flex uk-flex-middle">
340
  <svg xmlns="http://www.w3.org/2000/svg" width="12.667" height="14" viewBox="0 0 12.667 14">
341
    <defs><!--<style>.a{fill:#e1920a;}</style>--></defs>
342
    <path class="a"
343
          d="M3.333,7v4.667h2V7Zm4,0v4.667h2V7ZM2,15H14.667V13H2Zm9.333-8v4.667h2V7Zm-3-6L2,4.333V5.667H14.667V4.333Z"
344
          transform="translate(-2 -1)"/>
345
  </svg>
346
  <span class="uk-margin-small-left"
347
  >{{" " + result.pop_inf[3] +
348
  " influence" }}</span>
349
</a>
350
<div
351
    class="default-dropdown uk-margin-remove-top uk-padding-medium"
352
    uk-dropdown="pos: bottom-left; mode:click" style="min-width: 70px !important;">
353
        <span class=" uk-flex uk-flex-middle">
354
          <span class="influence-{{result.pop_inf[1]}}">
355
             <svg xmlns="http://www.w3.org/2000/svg" width="24.299" height="26.857" viewBox="0 0 24.299 26.857"><defs><style>.a {
356
               fill: #464646;
357
             }</style></defs><path class="a"
358
                                   d="M4.558,12.51v8.952H8.394V12.51Zm7.673,0v8.952h3.837V12.51ZM2,27.857H26.3V24.02H2ZM19.9,12.51v8.952h3.837V12.51ZM14.149,1,2,7.394V9.952H26.3V7.394Z"
359
                                   transform="translate(-2 -1)"/></svg>
360
            </span>
361
          <span class=" uk-margin-small-left uk-text-large"
362
          >{{result.pop_inf[3] +
363
          " influence" }}</span>
364
          <span
365
              class="uk-margin-small-top uk-margin-small-left">{{" " + (result.pop_inf[1] == 'A' ? 'In top  0.01%' : '') + (result.pop_inf[1] == 'B' ? 'In top 1%' : '') + (result.pop_inf[1] == 'C' ? 'In bottom 99%' : '')}}</span>
366
        </span>
367

    
368
        <div class="uk-text-muted uk-margin">Influence: Citation-based measure reflecting the total impact.</div>
369
        <div>
370
          <a title="Link to Bip!Finder" class=" uk-float-right" target="_blank" href=
371
              "https://bip.imis.athena-innovation.gr/site/details?id={{result.DOI}}">View more details</a>
372
        </div>
373
      </div>
374
    </ng-container>
375
      <!-- && loggedIn    -->
376
    <span *ngIf="(properties.adminToolsPortalType == 'explore' || properties.adminToolsPortalType == 'community')
377
                 && showOrcid && result.identifiers && result.identifiers.size > 0"
378
          class="uk-width-1-3 uk-width-expand@s">
379
<!--          class="uk-flex uk-flex-middle  uk-flex-right uk-width-expand">-->
380
      <orcid-work *ngIf="showOrcid && result.identifiers && result.identifiers.size > 0"
381
                  [resultId]="result.relcanId" [resultTitle]="result.title"
382
                  [type]="result.resultType" [pageType]="'search'"
383
                  [putCodes]="result.orcidPutCodes" [givenPutCode]="true" [identifiers]="result.identifiers">
384
      </orcid-work>
385
    </span>
386
    <span *ngIf="(properties.adminToolsPortalType == 'explore' || properties.adminToolsPortalType == 'community') && result.orcidCreationDates?.length > 0"
387
        class="uk-width-expand uk-text-right">
388
      <span *ngIf="result.orcidCreationDates?.length > 0" class="uk-display-inline-block">
389
        <span class="uk-text-muted">Added in ORCID:</span>
390
        <span *ngFor="let date of result.orcidCreationDates; let i=index">
391
          {{date | date: 'dd MMM yyyy'}}
392
          <span *ngIf="i < (result.orcidCreationDates.length - 1)">& </span>
393
        </span>
394
      </span>
395
<!--      <span *ngIf="result.orcidCreationDates?.length > 0 && result.orcidUpdateDates?.length > 0">-->
396
<!--        {{' . '}}-->
397
<!--      </span>-->
398
<!--      <span *ngIf="result.orcidUpdateDates?.length > 0" class="uk-display-inline-block">-->
399
<!--        <span class="uk-text-muted">Last update in ORCID:</span>-->
400
<!--        <span *ngFor="let date of result.orcidUpdateDates; let i=index">-->
401
<!--          {{date | date: 'dd MMM yyyy'}}-->
402
<!--          <span *ngIf="i < (result.orcidUpdateDates.length - 1)">& </span>-->
403
<!--        </span>-->
404
<!--      </span>-->
405
    </span>
406
  </span>
407
  </div>
408
</div>
(1-1/4)