Project

General

Profile

1
<ng-template #share_research_results_box
2
             let-dynamic_content="dynamic_content">
3
  <ul class="uk-list uk-margin-remove-bottom">
4
    <!--    class="uk-margin-top"-->
5
    <li>
6
      <!--      <a class="clickable"-->
7
      <!--         uk-toggle="target: #dynamic_content_id; animation:uk-animation-fade"><span-->
8
      <!--        class="uk-icon"><svg width="20" height="20" viewBox="0 0 20 20"-->
9
      <!--                             xmlns="http://www.w3.org/2000/svg" icon="code" ratio="1"><polyline-->
10
      <!--        fill="none" stroke="#000" stroke-width="1.01" points="13,4 19,10 13,16"></polyline><polyline-->
11
      <!--        fill="none" stroke="#000" stroke-width="1.01"-->
12
      <!--        points="7,4 1,10 7,16"></polyline></svg></span> Include in your site (HTML)</a>-->
13
      <!--      hidden class="uk-margin-small-top"-->
14
      <div id="dynamic_content_id">
15
        <pre class="box-content uk-padding-remove-bottom uk-margin-remove-bottom"><code
16
            id="clipboard">{{dynamic_content}}</code></pre>
17
        <div class="uk-grid uk-margin-small-top">
18
          <a
19
              class="clipboard_btn uk-padding-remove-left uk-margin-small-left uk-text-right uk-width-1-1"
20
              data-clipboard-target="#clipboard" title="Copy to clipboard">
21
            <button class="uk-button uk-button-small uk-button-secondary uk-icon">
22
              <svg width="20" height="20" viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg" icon="copy" ratio="1">
23
                <rect fill="none" stroke="#000" x="3.5" y="2.5" width="12" height="16"></rect>
24
                <polyline fill="none" stroke="#000" points="5 0.5 17.5 0.5 17.5 17"></polyline>
25
              </svg>
26
              <span class="uk-margin-small-left">COPY</span>
27
            </button>
28
          </a>
29
        </div>
30
        <div class="uk-text-small uk-margin-small-top">
31
          For further information contact us at
32
          <u><a [href]="'mailto:'+properties.helpdeskEmail" class="uk-link-text">{{properties.helpdeskEmail}}</a></u>
33
        </div>
34

    
35
      </div>
36
    </li>
37
  </ul>
38
</ng-template>
39
<ng-template #download_research_results_box
40
             let-type="type" let-fileName_type="fileName_type" let-csvParams="csvParams">
41
  <ul class="uk-list uk-margin-remove-bottom">
42
    <!--    class="uk-margin-top"-->
43
    <li>
44
      <a class="clickable"
45
         (click)="downloadHtmlFile(type, 'funder-'+fileName_type+'-report')">
46
        <!--         target="_blank"-->
47
        <!--         href="/project-report?projectId={{projectId}}&size={{fetch.searchUtils.totalResults}}&type={{type}}">-->
48
        <!--        <span class="uk-icon">-->
49
        <!--          <svg width="20" height="20" viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg" icon="code" ratio="1">-->
50
        <!--            <polyline fill="none" stroke="#000" stroke-width="1.01" points="13,4 19,10 13,16"></polyline>-->
51
        <!--            <polyline fill="none" stroke="#000" stroke-width="1.01" points="7,4 1,10 7,16"></polyline></svg>-->
52
        <!--        </span>-->
53
        <span class="uk-icon">
54
          <svg width="20" height="20" viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg" icon="download" ratio="1">
55
            <polyline fill="none" stroke="#000" points="14,10 9.5,14.5 5,10"></polyline>
56
            <rect x="3" y="17" width="13" height="1"></rect>
57
            <line fill="none" stroke="#000" x1="9.5" y1="13.91" x2="9.5" y2="3"></line>
58
          </svg>
59
        </span>
60
        Download {{projectInfo.funding.funderShortName}} report (HTML)
61
      </a>
62
    </li>
63
    <li class="uk-margin-small-top">
64
      <a class="clickable" (click)="downloadCsvFile(downloadURLAPI+csvParams, 'funder-'+fileName_type+'-report')">
65
        <span class="uk-icon">
66
          <svg width="20" height="20" viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg" icon="download" ratio="1">
67
            <polyline fill="none" stroke="#000" points="14,10 9.5,14.5 5,10"></polyline>
68
            <rect x="3" y="17" width="13" height="1"></rect>
69
            <line fill="none" stroke="#000" x1="9.5" y1="13.91" x2="9.5" y2="3"></line>
70
          </svg>
71
        </span>
72
        Download {{projectInfo.funding.funderShortName}} report (CSV)
73
      </a>
74
    </li>
75
  </ul>
76
</ng-template>
77

    
78
<div id="tm-main" class="landing uk-section uk-padding-remove-top tm-middle">
79
  <div *ngIf="!showFeedback" uk-grid>
80
    <div class="tm-main uk-width-1-1@s uk-width-1-1@m  uk-width-1-1@l uk-row-first ">
81

    
82
      <div id="project" class="uk-container uk-container-large uk-margin-medium-top project">
83
        <div *ngIf="warningMessage.length > 0" class="uk-alert uk-alert-warning uk-margin-large-top"
84
             role="alert">{{warningMessage}}</div>
85
        <div *ngIf="errorMessage.length > 0" class="uk-alert uk-alert-danger  uk-margin-large-top"
86
             role="alert">{{errorMessage}}</div>
87
        <div [style.display]="showLoading ? 'inline' : 'none'"
88
             class="uk-animation-fade uk-margin-large-top  uk-width-1-1" role="alert"><span
89
            class="loading-gif  uk-align-center"></span></div>
90
        <helper *ngIf="pageContents && pageContents['top'] && pageContents['top'].length > 0"
91
                [texts]="pageContents['top']"></helper>
92
        <div *ngIf="projectInfo != null" class="uk-grid uk-margin-remove-left uk-margin-large-bottom">
93
          <div
94
              class="uk-width-2-3@m uk-width-1-1@s  uk-margin-bottom uk-padding uk-padding-remove-left uk-padding-remove-vertical">
95
            <schema2jsonld *ngIf="projectInfo" [data]=projectInfo
96
                           [URL]="properties.domain+properties.baseLink+properties.searchLinkToProject+projectId"
97
                           type="project"></schema2jsonld>
98
            <landing-header [properties]="properties" [title]="projectName"
99
                            [subTitle]="projectInfo.acronym ? projectInfo.title : ''"
100
                            [entityType]="'project'"
101
                            [startDate]="projectInfo.startDate"
102
                            [endDate]="projectInfo.endDate"
103
                            [status]="projectInfo.status">
104
            </landing-header>
105
            <!-- Labels -->
106
            <div class="uk-margin-top uk-margin-bottom">
107
              <span
108
                  *ngIf="projectInfo.openAccessMandatePublications != undefined && projectInfo.openAccessMandatePublications && projectInfo.openAccessMandateDatasets != undefined && projectInfo.openAccessMandateDatasets"
109
                  class="uk-label custom-label  label-open"
110
                  title="Open Access mandate for Publications and Research Data">
111
                <span class="uk-visible@m">Open Access mandate for Publications and Research Data</span>
112
                <span class="uk-hidden@m">Open Access mandate for ...</span>
113
              </span>{{" "}}
114
              <span
115
                  *ngIf="projectInfo.openAccessMandatePublications != undefined && projectInfo.openAccessMandatePublications && (projectInfo.openAccessMandateDatasets == undefined || !projectInfo.openAccessMandateDatasets)"
116
                  class="uk-label custom-label label-open" title="Open Access mandate for Publications">
117
                Open Access mandate for Publications
118
              </span>{{" "}}
119
              <span
120
                  *ngIf="projectInfo.openAccessMandateDatasets != undefined && projectInfo.openAccessMandateDatasets && (projectInfo.openAccessMandatePublications == undefined || !projectInfo.openAccessMandatePublications)"
121
                  class="uk-label custom-label label-open" title="Open Access mandate for Research Data">
122
                Open Access mandate for Research Data
123
              </span>{{" "}}
124
              <span *ngIf="projectInfo.funding && projectInfo.funding.funderName"
125
                    class="uk-label custom-label label-funder" title="Funder">
126
                {{projectInfo.funding.funderName}}
127
              </span>{{" "}}
128
              <span *ngIf="projectInfo.specialClause39"
129
                    class="uk-label custom-label label-sc39" title="Special Clause 39">
130
                Special Clause 39
131
              </span>{{" "}}
132
            </div>
133
            <ul class="basic-info uk-list uk-margin-bottom left-border">
134
              <li *ngIf="projectInfo.funding">
135
                <span *ngIf="projectInfo.funding.funderName" class="uk-margin-right">
136
                  <span class="uk-text-muted">Funder: </span>
137
                  <span class="uk-text-bold">{{projectInfo.funding.funderName}}</span>
138
                </span>
139
                <span *ngIf="projectInfo.funding.code" class="uk-margin-right uk-display-inline-block">
140
                  <span class="uk-text-muted">Project code: </span>
141
                  {{projectInfo.funding.code}}
142
                </span>
143
                <span *ngIf="projectInfo.funding.callIdentifier" class="uk-display-inline-block">
144
                  <span class="uk-text-muted">Call for proposal: </span>
145
                  {{projectInfo.funding.callIdentifier}}
146
                </span>
147
              </li>
148
              <li *ngIf="projectInfo.funding">
149
                <span *ngIf="projectInfo.funding.fundingStream" class="uk-margin-right">
150
                  <span class="uk-text-muted">Funded under: </span>
151
                  {{projectInfo.funding.fundingStream}}
152
                </span>
153
                <span *ngIf="projectInfo.funding.budget" class="uk-margin-right uk-display-inline-block">
154
                  <span class="uk-text-muted">Overall Budget: </span>
155
                  {{projectInfo.funding.budget | number}}
156
                  <span *ngIf="projectInfo.funding.currency">{{projectInfo.funding.currency}}</span>
157
                </span>
158
                <span *ngIf="projectInfo.funding.contribution" class="uk-display-inline-block">
159
                  <span class="uk-text-muted">Funder Contribution: </span>
160
                  {{projectInfo.funding.contribution | number}}
161
                  <span *ngIf="projectInfo.funding.currency">{{projectInfo.funding.currency}}</span>
162
                </span>
163
              </li>
164
              <li *ngIf="projectInfo.status" class="uk-margin-right">
165
                <span>
166
                  <span class="uk-text-muted">Status: </span>
167
                  {{projectInfo.status}}
168
                </span>
169
              </li>
170
              <li *ngIf="projectInfo.startDate || projectInfo.endDate" class="uk-width-2-5@m uk-width-1-2@s">
171
                <progress *ngIf="projectInfo.startDate && projectInfo.endDate"
172
                          class="uk-progress portal-progress uk-margin-small-top uk-margin-remove-bottom"
173
                          [value]="(projectInfo.currentDate > projectInfo.startDate ? projectInfo.currentDate-projectInfo.startDate : 0)"
174
                          [max]="projectInfo.endDate-projectInfo.startDate">
175
                </progress>
176
                <div class="uk-grid">
177
                  <span *ngIf="projectInfo.startDate" class="uk-width-1-2">
178
                    <div class="uk-text-muted">Start Date</div>
179
                    <div>{{projectInfo.startDate | date: 'dd MMM yyyy'}}</div>
180
                  </span>
181
                  <span *ngIf="projectInfo.endDate"
182
                        [class]="'uk-width-1-2 ' + (projectInfo.startDate ? 'uk-text-right' : '')">
183
                    <div class="uk-text-muted">End Date</div>
184
                    <div>{{projectInfo.endDate | date: 'dd MMM yyyy'}}</div>
185
                  </span>
186
                </div>
187
              </li>
188
              <li *ngIf="projectInfo.urlInfo ">
189
                <span class="uk-button-text">
190
                    <a target="_blank" href="{{projectInfo.url}}">
191
                        {{projectInfo.urlInfo}}
192
                    </a>
193
                </span>
194
              </li>
195
            </ul>
196
            <ul class="uk-list uk-margin-bottom">
197
              <li *ngIf="(projectInfo.openAccessMandatePublications != undefined && !projectInfo.openAccessMandatePublications)
198
                      || (projectInfo.openAccessMandateDatasets != undefined && !projectInfo.openAccessMandateDatasets)">
199
                <div>Open Access mandate</div>
200
                <div>
201
                  <span
202
                      *ngIf="projectInfo.openAccessMandatePublications != undefined && !projectInfo.openAccessMandatePublications"
203
                      class="uk-margin-right">
204
                    <span class="uk-text-muted">Publications: </span>
205
                    <!--                    <span *ngIf="projectInfo.openAccessMandatePublications">Yes</span>-->
206
                    <span>No</span>
207
                  </span>
208
                  <span
209
                      *ngIf="projectInfo.openAccessMandateDatasets != undefined && !projectInfo.openAccessMandateDatasets">
210
                    <span class="uk-text-muted">Research Data: </span>
211
                    <!--                    <span *ngIf="projectInfo.openAccessMandateDatasets">Yes</span>-->
212
                    <span>No</span>
213
                  </span>
214
                </div>
215
              </li>
216
            </ul>
217
          </div>
218

    
219
          <div class="uk-width-1-3@m uk-width-1-1@s uk-padding-remove">
220
            <ul class="user-actions uk-list uk-card uk-card-default uk-padding">
221
              <!--              NEW-->
222
              <li>
223
                <addThis></addThis>
224
              </li>
225
              <li *ngIf="isRouteAvailable('participate/direct-claim')">
226
                <a class="uk-link-text uk-text-bold uk-text-uppercase" (click)="openLinkProjectModal()">
227
                  <span class="uk-icon-button portal-button uk-icon">
228
                    <svg width="20" height="20" viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg" data-svg="link"><path
229
                        fill="none" stroke="#000" stroke-width="1.1"
230
                        d="M10.625,12.375 L7.525,15.475 C6.825,16.175 5.925,16.175 5.225,15.475 L4.525,14.775 C3.825,14.074 3.825,13.175 4.525,12.475 L7.625,9.375"></path><path
231
                        fill="none" stroke="#000" stroke-width="1.1"
232
                        d="M9.325,7.375 L12.425,4.275 C13.125,3.575 14.025,3.575 14.724,4.275 L15.425,4.975 C16.125,5.675 16.125,6.575 15.425,7.275 L12.325,10.375"></path><path
233
                        fill="none" stroke="#000" stroke-width="1.1"
234
                        d="M7.925,11.875 L11.925,7.975"></path>
235
                    </svg>
236
                  </span>
237
                  <span class="uk-margin-small-left">Link this project to...</span>
238
                </a>
239
                <modal-alert #linkProjectModal
240
                             [classTitle]="'landing-modal-header'" [classBody]="'uk-padding-remove landing-modal'">
241
                  <!--                  <div class="uk-modal-title landing-modal-header">-->
242
                  <!--                    <button class="uk-modal-close-default uk-float-right" (click)='linkProjectModal.cancel()' uk-close></button>-->
243
                  <!--                    <h4 class="modal-title" id="myModalLabel">{{linkProjectModal.alertTitle}}</h4>-->
244
                  <!--                  </div>-->
245
                  <div class="uk-padding uk-padding-remove-vertical uk-margin-medium uk-text-center ">
246
                    <div>
247
                      <a [queryParams]="routerHelper.createQueryParams(['id','type','linkTo'],[projectId, 'project','result'])"
248
                         routerLinkActive="router-link-active" routerLink="/participate/direct-claim"
249
                         (click)="linkProjectModal.cancel();">
250
                        <button class="uk-icon-button portal-button">
251
                        <span class="uk-icon">
252
                           <svg height="20" icon="copy" ratio="1" viewBox="0 0 20 20" width="20"
253
                                xmlns="http://www.w3.org/2000/svg"><rect fill="none" height="16" stroke="#000"
254
                                                                         width="12" x="3.5" y="2.5"></rect><polyline
255
                               fill="none" points="5 0.5 17.5 0.5 17.5 17" stroke="#000"></polyline></svg></span>
256
                        </button>
257
                        <div class="uk-margin-small-top">Research outcomes</div>
258
                      </a>
259
                    </div>
260
                  </div>
261
                </modal-alert>
262
              </li>
263
              <li *ngIf="isRouteAvailable('participate/deposit/learn-how')">
264
                <a class="uk-link-text uk-text-bold uk-text-uppercase"
265
                   routerLinkActive="router-link-active" routerLink="/participate/deposit/learn-how">
266
                  <span class="uk-icon uk-icon-button uk-button-secondary">
267
                    <svg width="20" height="20" viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg" ratio="1">
268
                      <polyline fill="none" stroke="#000" points="5 8 9.5 3.5 14 8 "></polyline>
269
                      <rect x="3" y="17" width="13" height="1"></rect>
270
                      <line fill="none" stroke="#000" x1="9.5" y1="15" x2="9.5" y2="4"></line>
271
                    </svg>
272
                  </span>
273
                  <span class="uk-margin-small-left"><u>Deposit your research</u></span>
274
                </a>
275
              </li>
276
              <li>
277
                <a class="uk-link-text uk-text-bold uk-text-uppercase" (click)="openShareResultsModal()">
278
                  <span class="uk-icon uk-icon-button uk-button-primary">
279
                    <svg width="20" height="20" viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg" icon="code"
280
                         ratio="1">
281
                      <polyline fill="none" stroke="#000" stroke-width="1.01" points="13,4 19,10 13,16"></polyline>
282
                      <polyline fill="none" stroke="#000" stroke-width="1.01" points="7,4 1,10 7,16"></polyline>
283
                    </svg>
284
                  </span>
285
                  <span class="uk-margin-small-left">Share results</span>
286
                </a>
287
                <modal-alert #shareResultsModal
288
                             [classTitle]="'landing-modal-header'" [classBody]="'uk-padding-remove landing-modal'">
289
                  <div class="uk-padding-small uk-margin-small-left uk-margin-small-right">
290
                    <div class="uk-padding-small uk-padding-remove-vertical">
291
                      <mat-form-field class="matSelectionFormField uk-width-1-1">
292
                        <mat-label>Select content type to share</mat-label>
293
                        <mat-select [(value)]="share_research_results_type"
294
                                    [disableOptionCentering]="true"
295
                                    panelClass="entitiesSelectionPanel"
296
                                    class="matSelection">
297
                          <!--                          <mat-option value="">Select content type</mat-option>-->
298
                          <mat-option value="result">All research outcomes</mat-option>
299
                          <mat-option value="publication">Publications</mat-option>
300
                          <mat-option value="dataset">Research data</mat-option>
301
                          <mat-option value="software">Software</mat-option>
302
                          <mat-option value="other">Other research products</mat-option>
303
                        </mat-select>
304
                      </mat-form-field>
305
                      <div *ngIf="share_research_results_type" class="uk-animation-slide-top-small">
306
                        <ng-container *ngTemplateOutlet="share_research_results_box;
307
                        context: {  dynamic_content: getDynamicContent(share_research_results_type) }">
308
                        </ng-container>
309
                      </div>
310
                    </div>
311
                  </div>
312
                </modal-alert>
313
              </li>
314
              <li>
315
                <a class="uk-link-text uk-text-bold uk-text-uppercase" (click)="openDownloadReportModal()">
316
                  <span class="uk-icon uk-icon-button uk-button-primary">
317
                    <svg width="20" height="20" viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg" icon="download"
318
                         ratio="1">
319
                      <polyline fill="none" stroke="#000" points="14,10 9.5,14.5 5,10"></polyline>
320
                      <rect x="3" y="17" width="13" height="1"></rect>
321
                      <line fill="none" stroke="#000" x1="9.5" y1="13.91" x2="9.5" y2="3"></line>
322
                    </svg>
323
                  </span>
324
                  <span class="uk-margin-small-left">Download report</span>
325
                </a>
326
                <modal-alert #downloadReportModal
327
                             [classTitle]="'landing-modal-header'" [classBody]="'uk-padding-remove landing-modal'">
328
                  <div class="uk-padding-small uk-margin-small-left uk-margin-small-right">
329
                    <div class="uk-padding-small uk-padding-remove-vertical">
330
                      <!--                      *ngIf="projectInfo.funding &&-->
331
                      <!--                      (fetchPublications.searchUtils.totalResults > 0 ||-->
332
                      <!--                      fetchDatasets.searchUtils.totalResults > 0 ||-->
333
                      <!--                      fetchSoftware.searchUtils.totalResults > 0 ||-->
334
                      <!--                      fetchOrps.searchUtils.totalResults > 0)"-->
335
                      <mat-form-field
336
                          class="matSelectionFormField uk-width-1-1">
337
                        <mat-label>Select content type report to download</mat-label>
338
                        <mat-select [(value)]="download_research_results_type"
339
                                    [disableOptionCentering]="true"
340
                                    panelClass="entitiesSelectionPanel"
341
                                    class="matSelection">
342
                          <!--                          <mat-option value="">Select content type</mat-option>-->
343
                          <mat-option value="results"
344
                                      [disabled]="!projectInfo.funding ||
345
                                                  (fetchPublications.searchUtils.totalResults == 0 &&
346
                                                  fetchDatasets.searchUtils.totalResults == 0 &&
347
                                                  fetchSoftware.searchUtils.totalResults == 0 &&
348
                                                  fetchOrps.searchUtils.totalResults == 0)"
349
                                      [attr.uk-tooltip]="(fetchPublications.searchUtils.totalResults == 0 || fetchPublications.searchUtils.status != errorCodes.DONE) ? 'cls: uk-active' : 'cls: uk-invisible'"
350
                                      title="No report available">
351
                            All research outcomes
352
                          </mat-option>
353
                          <mat-option value="publications"
354
                                      [disabled]="!projectInfo.funding || fetchPublications.searchUtils.totalResults == 0 || fetchPublications.searchUtils.status != errorCodes.DONE"
355
                                      [attr.uk-tooltip]="(fetchPublications.searchUtils.totalResults == 0 || fetchPublications.searchUtils.status != errorCodes.DONE) ? 'cls: uk-active' : 'cls: uk-invisible'"
356
                                      title="No report available">
357
                            Publications
358
                          </mat-option>
359
                          <mat-option value="datasets"
360
                                      [disabled]="!projectInfo.funding || fetchDatasets.searchUtils.totalResults == 0 || fetchDatasets.searchUtils.status != errorCodes.DONE"
361
                                      [attr.uk-tooltip]="(fetchDatasets.searchUtils.totalResults == 0 || fetchDatasets.searchUtils.status != errorCodes.DONE) ? 'cls: uk-active' : 'cls: uk-invisible'"
362
                                      title="No report available">
363
                            Research data
364
                          </mat-option>
365
                          <mat-option value="software"
366
                                      [disabled]="!projectInfo.funding || fetchSoftware.searchUtils.totalResults == 0 || fetchSoftware.searchUtils.status != errorCodes.DONE"
367
                                      [attr.uk-tooltip]="(fetchSoftware.searchUtils.totalResults == 0 || fetchSoftware.searchUtils.status != errorCodes.DONE) ? 'cls: uk-active' : 'cls: uk-invisible'"
368
                                      title="No report available">
369
                            Software
370
                          </mat-option>
371
                          <mat-option value="other"
372
                                      [disabled]="!projectInfo.funding || fetchOrps.searchUtils.totalResults == 0 || fetchOrps.searchUtils.status != errorCodes.DONE"
373
                                      [attr.uk-tooltip]="(fetchOrps.searchUtils.totalResults == 0 || fetchOrps.searchUtils.status != errorCodes.DONE) ? 'cls: uk-active' : 'cls: uk-invisible'"
374
                                      title="No report available">
375
                            Other research products
376
                          </mat-option>
377
                        </mat-select>
378
                      </mat-form-field>
379
                      <div *ngIf="download_research_results_type" class="uk-animation-slide-top-small">
380
                        <ng-container *ngTemplateOutlet="download_research_results_box;
381
                          context: {  type: download_research_results_type,
382
                                      fileName_type: getFileNameType(download_research_results_type),
383
                                      csvParams: getCsvParams(download_research_results_type) }">
384
                        </ng-container>
385
                      </div>
386

    
387
                      <div *ngIf="!projectInfo.funding ||
388
                          (fetchPublications.searchUtils.totalResults == 0 &&
389
                          fetchDatasets.searchUtils.totalResults == 0 &&
390
                          fetchSoftware.searchUtils.totalResults == 0 &&
391
                          fetchOrps.searchUtils.totalResults == 0)"
392
                           class="uk-text-muted">
393
                        No reports available
394
                      </div>
395
                    </div>
396
                  </div>
397
                </modal-alert>
398
              </li>
399
              <!-- Metrics -->
400
              <li *ngIf="hasMetrics" class="uk-margin-medium-top">
401
                <div class="uk-text-center uk-flex uk-flex-middle uk-flex-center">
402
                  <div [class.uk-hidden]="!(totalViews && totalDownloads && pageViews)">
403
                    <metrics [pageViews]="pageViews"
404
                             [id]="projectId" [entityType]="'projects'" [entity]="'project'"
405
                             [viewsFrameUrl]="viewsFrameUrl" [downloadsFrameUrl]="downloadsFrameUrl"
406
                             (metricsResults)="metricsResults($event)" [properties]=properties>
407
                    </metrics>
408
                  </div>
409
                </div>
410
              </li>
411

    
412

    
413
            </ul>
414
            <!--            <div class="uk-margin-small-top uk-text-muted uk-text-small uk-text-right">-->
415
            <!--              Last update of records in OpenAIRE: {{indexUpdateDate | date: 'MMM dd, yyyy'}}-->
416
            <!--            </div>-->
417

    
418
          </div>
419
        </div>
420

    
421
        <div *ngIf="projectInfo != null">
422
          <!--          *ngIf="numberOfTabs > 0; else loadingBlock"-->
423
          <div class="main-tabs-div">
424
            <ng-template #summary_tab>
425
              <!--              <my-tab [tabTitle]="'Project Summary'" [tabId]="'summary'" [active]="true">-->
426
              <div class="uk-grid uk-margin-remove">
427
                <div class="uk-width-expand uk-padding uk-inline">
428
                  <!-- Description -->
429
                  <div *ngIf="!hasPrimaryInfo" class="uk-width-expand uk-padding">
430
                    <div class="uk-animation-fade uk-alert uk-alert-primary" role="alert">
431
                      No summary information available
432
                    </div>
433
                  </div>
434
                  <div *ngIf="hasPrimaryInfo" class="uk-margin-medium-bottom">
435
                    <div class="uk-text-muted">Description</div>
436
                    <div class="uk-text-justify uk-height-max-medium uk-overflow-auto">
437
                      <span>{{projectInfo.description.substring(0, showNumDescription)}}</span>
438
                      <span *ngIf="showNumDescription == thresholdDescription &&
439
                                    projectInfo.description.length > thresholdDescription">...</span>
440
                    </div>
441
                    <div *ngIf="showNumDescription == thresholdDescription &&
442
                                    projectInfo.description.length > thresholdDescription" class="uk-text-right">
443
                      <a (click)="showNumDescription = projectInfo.description.length;">
444
                        Read more
445
                      </a>
446
                    </div>
447
                    <div *ngIf="projectInfo.description && showNumDescription > thresholdDescription"
448
                         class="uk-text-right">
449
                      <a (click)="showNumDescription = thresholdDescription;">
450
                        Read less
451
                      </a>
452
                    </div>
453
                  </div>
454
                </div>
455
                <div *ngIf="hasSecondaryInfo" class="uk-padding uk-inline uk-width-1-3@m right-column">
456
                  <!-- Organizations -->
457
                  <div class="uk-text-muted">Partners</div>
458
                  <div class="uk-margin-medium-bottom">
459
                    <div class="uk-height-max-medium uk-overflow-auto">
460
                            <span
461
                                *ngFor="let organization of projectInfo.organizations.slice(0, showNumOrganizations) let i=index"
462
                                [attr.uk-tooltip]="organization.acronym && organization.name ? 'pos:right; delay:10' : 'cls: uk-invisible'"
463
                                [title]="organization.name">
464
                              <a *ngIf="organization.id"
465
                                 [queryParams]="{organizationId: organization.id}" routerLinkActive="router-link-active"
466
                                 [routerLink]="properties.searchLinkToOrganization.split('?')[0]">
467
                                <u>{{(organization.acronym) ? organization.acronym : ''}}</u>
468
                                <u>{{(!organization.acronym && organization.name) ? organization.name : ''}}</u>
469
                              </a>
470
                              <span *ngIf="!organization.id">
471
                                <span *ngIf="organization.acronym">{{organization.acronym}}</span>
472
                                <span *ngIf="!organization.acronym && organization.name">{{organization.name}}</span>
473
                              </span>
474
                              <span *ngIf="(i < projectInfo.organizations.length-1)">, </span>
475
                            </span>
476
                      <span
477
                          *ngIf="showNumOrganizations == thresholdOrganizations &&  projectInfo.organizations.length > thresholdOrganizations">	... </span>
478
                    </div>
479
                    <div
480
                        *ngIf="showNumOrganizations == thresholdOrganizations && projectInfo.organizations.length > thresholdOrganizations"
481
                        class="uk-width-1-1 uk-text-right uk-margin-small-top">
482
                      <a (click)="showNumOrganizations = projectInfo.organizations.length;">
483
                        View all {{projectInfo.organizations.length | number}} organizations
484
                      </a>
485
                    </div>
486
                    <div *ngIf="showNumOrganizations > thresholdOrganizations"
487
                         class="uk-width-1-1 uk-text-right uk-margin-small-top">
488
                      <a (click)="showNumOrganizations = thresholdOrganizations;">View less organizations</a>
489
                    </div>
490
                  </div>
491
                </div>
492
                <!--<div *ngIf="!hasPrimaryInfo && !hasSecondaryInfo"
493
                     class="uk-width-expand uk-padding">
494
&lt;!&ndash;                    <div *ngIf="!tabsAreInitialized" class="uk-animation-fade uk-margin-top  uk-width-1-1" role="alert">&ndash;&gt;
495
&lt;!&ndash;                      <span class="loading-gif  uk-align-center" ></span>&ndash;&gt;
496
&lt;!&ndash;                    </div>&ndash;&gt;
497
                  <div class="uk-animation-fade uk-alert uk-alert-primary" role="alert">
498
                    No summary information available
499
                  </div>
500
                </div>-->
501
              </div>
502
              <!--              </my-tab>-->
503
            </ng-template>
504
            <ng-template #publications_tab>
505
              <!--              <my-tab  *ngIf="fetchPublications.searchUtils.totalResults > 0"-->
506
              <!--                       [tabTitle]="'Publications'" [tabNumber]="fetchPublications.searchUtils.totalResults"-->
507
              <!--                       [tabId]="'publications'">-->
508
              <div class="uk-grid uk-margin-remove">
509
                <div class="uk-width-expand uk-padding">
510
                  <search-tab [fetch]="fetchPublications" resultType="publication"
511
                              [params]="getParamsForSearchLink('publications')"
512
                              [searchLinkToAdvancedPage]="properties.searchLinkToAdvancedResults"
513
                              [properties]="properties">
514
                  </search-tab>
515
                </div>
516
                <!--                  <div class="uk-width-1-3@m uk-padding right-column">-->
517
                <!--                    <div>test publications</div>-->
518
                <!--                  </div>-->
519
              </div>
520
              <!--              </my-tab>-->
521
            </ng-template>
522
            <ng-template #datasets_tab>
523
              <!--              <my-tab  *ngIf="fetchDatasets.searchUtils.totalResults > 0"-->
524
              <!--                       [tabTitle]="'Research Data'" [tabNumber]="fetchDatasets.searchUtils.totalResults"-->
525
              <!--                       [tabId]="'datasets'">-->
526
              <div class="uk-grid uk-margin-remove">
527
                <div class="uk-width-expand uk-padding">
528
                  <search-tab [fetch]="fetchDatasets" resultType="dataset"
529
                              [params]="getParamsForSearchLink('datasets')"
530
                              [searchLinkToAdvancedPage]="properties.searchLinkToAdvancedResults"
531
                              [properties]="properties">
532
                  </search-tab>
533
                </div>
534
                <!--                  <div class="uk-width-1-3@m uk-padding right-column">-->
535
                <!--                    <div>test research data</div>-->
536
                <!--                  </div>-->
537
              </div>
538
              <!--              </my-tab>-->
539
            </ng-template>
540
            <ng-template #software_tab>
541
              <div class="uk-grid uk-margin-remove">
542
                <div class="uk-width-expand uk-padding">
543
                  <search-tab [fetch]="fetchSoftware" resultType="software"
544
                              [params]="getParamsForSearchLink('software')"
545
                              [searchLinkToAdvancedPage]="properties.searchLinkToAdvancedResults"
546
                              [properties]="properties">
547
                  </search-tab>
548
                </div>
549
                <!--                  <div class="uk-width-1-3@m uk-padding right-column">-->
550
                <!--                    <div>test software</div>-->
551
                <!--                  </div>-->
552
              </div>
553
            </ng-template>
554
            <ng-template #other_tab>
555
              <!--              <my-tab  *ngIf="fetchOrps.searchUtils.totalResults > 0"-->
556
              <!--                       [tabTitle]="'Other Research'" [tabNumber]="fetchOrps.searchUtils.totalResults"-->
557
              <!--                       [tabId]="'other'">-->
558
              <div class="uk-grid uk-margin-remove">
559
                <div class="uk-width-expand uk-padding">
560
                  <search-tab [fetch]="fetchOrps" resultType="other"
561
                              [params]="getParamsForSearchLink('other')"
562
                              [searchLinkToAdvancedPage]="properties.searchLinkToAdvancedResults"
563
                              [properties]="properties">
564
                  </search-tab>
565
                </div>
566
                <!--                  <div class="uk-width-1-3@m uk-padding right-column">-->
567
                <!--                    <div>test other research products</div>-->
568
                <!--                  </div>-->
569
              </div>
570
              <!--              </my-tab>-->
571
            </ng-template>
572
            <ng-template #dmps_tab>
573
              <div class="uk-padding">
574
                <search-tab [fetch]="fetchDmps" customTitle="Data Management Plans"
575
                            [params]="getParamsForSearchLink('publications', 'Data Management Plan')"
576
                            [searchLinkToAdvancedPage]="properties.searchLinkToAdvancedResults"
577
                            [properties]="properties">
578
                  <div class="uk-alert uk-alert-primary uk-margin-top">
579
                    <span *ngIf="fetchDmps.searchUtils.totalResults == 0">No Data Management Plans (DMPs) available. </span>
580
                    <span>Link existing DMPs with this project or start a new DMP in <a href="https://argos.openaire.eu/splash/" target="_blank">Argos</a>.</span>
581
                  </div>
582
                </search-tab>
583
              </div>
584
            </ng-template>
585
            <ng-template #statistics_tab>
586
              <!--              <my-tab *ngIf="(fetchPublications.searchUtils.totalResults > 0 || fetchDatasets.searchUtils.totalResults > 0-->
587
              <!--                       || fetchSoftware.searchUtils.totalResults > 0 || fetchOrps.searchUtils.totalResults > 0)"-->
588
              <!--                      [tabTitle]="'Statistics'" customClass="statistics" [tabId]="'statistics'">-->
589
              <div class="">
590
                <div class="uk-width-expand uk-padding">
591
                  <errorMessages [status]="[fetchPublications.searchUtils.status, fetchDatasets.searchUtils.status,
592
                                  fetchSoftware.searchUtils.status, fetchOrps.searchUtils.status]"
593
                                 [type]="'statistics'" tab_error_class=true></errorMessages>
594

    
595
                  <div
596
                      *ngIf="statsClicked &&
597
                              (fetchPublications.searchUtils.status == errorCodes.DONE || fetchDatasets.searchUtils.status == errorCodes.DONE
598
                              || fetchSoftware.searchUtils.status == errorCodes.DONE || fetchOrps.searchUtils.status == errorCodes.DONE)"
599
                      class="uk-grid uk-child-width-1-1 uk-child-width-1-2@m">
600
                    <div class="uk-padding uk-padding-remove-top">
601
                      <div *ngIf="!properties.useNewStatistisTool" class="uk-text-center uk-text-large">Produced
602
                        research
603
                        outcomes per year
604
                      </div>
605
                      <i-frame [url]=chartScientificResultsUrl></i-frame>
606
                    </div>
607
                    <div class="uk-padding uk-padding-remove-top">
608
                      <div *ngIf="!properties.useNewStatistisTool" class="uk-text-center uk-text-large">Access mode of
609
                        research
610
                        outcomes
611
                      </div>
612
                      <i-frame [url]=chartAccessModeUrl></i-frame>
613
                    </div>
614
                    <div class="uk-padding uk-padding-remove-top">
615
                      <div *ngIf="!properties.useNewStatistisTool" class="uk-text-center uk-text-large">Research
616
                        outcomes per datasource
617
                      </div>
618
                      <i-frame [url]=chartDatasourcesUrl></i-frame>
619
                    </div>
620
                  </div>
621
                </div>
622
              </div>
623
              <!--              </my-tab>-->
624
            </ng-template>
625

    
626
            <!--            [class]="numberOfTabs > 2 ? 'uk-visible@m' : ''"-->
627
            <my-tabs (selectedActiveTab)="onSelectActiveTab($event)">
628
              <!--              *ngIf="hasPrimaryInfo || hasSecondaryInfo"-->
629
              <!--                      [class]="(firstTab === 'summary')?'uk-active':''">-->
630
              <my-tab
631
                  tabTitle="Summary" [tabId]="'summary'"
632
                  class="uk-active">
633
                <ng-container *ngTemplateOutlet="summary_tab;"></ng-container>
634
              </my-tab>
635
              <!--              *ngIf="fetchPublications.searchUtils.totalResults > 0"-->
636
              <!--              [class]="(firstTab === 'publications')?'uk-active':''"-->
637
              <my-tab
638
                  [tabTitle]="'Publications'" [tabNumber]="fetchPublications.searchUtils.totalResults"
639
                  [tabId]="'publications'">
640
                <ng-container *ngTemplateOutlet="publications_tab;"></ng-container>
641
              </my-tab>
642
              <!--              *ngIf="fetchDatasets.searchUtils.totalResults > 0"-->
643
              <!--              [class]="(firstTab === 'datasets')?'uk-active':''"-->
644
              <my-tab
645
                  [tabTitle]="'Research Data'" [tabNumber]="fetchDatasets.searchUtils.totalResults"
646
                  [tabId]="'datasets'">
647
                <ng-container *ngTemplateOutlet="datasets_tab;"></ng-container>
648
              </my-tab>
649
              <!--              *ngIf="fetchSoftware.searchUtils.totalResults > 0"-->
650
              <!--              [class]="(firstTab === 'software')?'uk-active':''"-->
651
              <my-tab
652
                  [tabTitle]="'Software'" [tabNumber]="fetchSoftware.searchUtils.totalResults"
653
                  [tabId]="'software'">
654
                <ng-container *ngTemplateOutlet="software_tab;"></ng-container>
655
              </my-tab>
656
              <!--              *ngIf="fetchOrps.searchUtils.totalResults > 0"-->
657
              <!--              [class]="(firstTab === 'other')?'uk-active':''"-->
658
              <my-tab
659
                  [tabTitle]="'Other Research'" [tabNumber]="fetchOrps.searchUtils.totalResults"
660
                  [tabId]="'other'">
661
                <ng-container *ngTemplateOutlet="other_tab;"></ng-container>
662
              </my-tab>
663
              <my-tab
664
                  [tabTitle]="'Dmps'" [tabNumber]="fetchDmps.searchUtils.totalResults"
665
                  [tabId]="'dmps'">
666
                <ng-container *ngTemplateOutlet="dmps_tab;"></ng-container>
667
              </my-tab>
668
              <!--              [class]="(firstTab === 'statistics')?'uk-active':''"-->
669
              <my-tab *ngIf="(fetchPublications.searchUtils.totalResults > 0 || fetchDatasets.searchUtils.totalResults > 0
670
                       || fetchSoftware.searchUtils.totalResults > 0 || fetchOrps.searchUtils.totalResults > 0)"
671
                      [tabTitle]="'Statistics'" customClass="statistics" [tabId]="'statistics'"
672
              >
673
                <ng-container *ngTemplateOutlet="statistics_tab;"></ng-container>
674
              </my-tab>
675
            </my-tabs>
676

    
677
            <!--            *ngIf="numberOfTabs > 2"-->
678
            <my-small-tabs (selectedActiveTab)="onSelectActiveTab($event)">
679
              <!--              *ngIf="hasPrimaryInfo || hasSecondaryInfo"-->
680
              <!--              [class]="(firstTab === 'summary')?'uk-active':''"-->
681
              <my-tab
682
                  tabTitle="Summary" [tabId]="'summary'"
683
                  class="uk-active">
684
                <ng-container *ngTemplateOutlet="summary_tab;"></ng-container>
685
              </my-tab>
686
              <!--              *ngIf="fetchPublications.searchUtils.totalResults > 0"-->
687
              <!--              [class]="(firstTab === 'publications')?'uk-active':''"-->
688
              <my-tab
689
                  [tabTitle]="'Publications'" [tabNumber]="fetchPublications.searchUtils.totalResults"
690
                  [tabId]="'publications'">
691
                <ng-container *ngTemplateOutlet="publications_tab;"></ng-container>
692
              </my-tab>
693
              <!--              *ngIf="fetchDatasets.searchUtils.totalResults > 0"-->
694
              <!--              [class]="(firstTab === 'datasets')?'uk-active':''"-->
695
              <my-tab
696
                  [tabTitle]="'Research Data'" [tabNumber]="fetchDatasets.searchUtils.totalResults"
697
                  [tabId]="'datasets'">
698
                <ng-container *ngTemplateOutlet="datasets_tab;"></ng-container>
699
              </my-tab>
700
              <!--              *ngIf="fetchSoftware.searchUtils.totalResults > 0"-->
701
              <!--              [class]="(firstTab === 'software')?'uk-active':''"-->
702
              <my-tab
703
                  [tabTitle]="'Software'" [tabNumber]="fetchSoftware.searchUtils.totalResults"
704
                  [tabId]="'software'">
705
                <ng-container *ngTemplateOutlet="software_tab;"></ng-container>
706
              </my-tab>
707
              <!--              *ngIf="fetchOrps.searchUtils.totalResults > 0"-->
708
              <!--              [class]="(firstTab === 'other')?'uk-active':''"-->
709
              <my-tab
710
                  [tabTitle]="'Other Research'" [tabNumber]="fetchOrps.searchUtils.totalResults"
711
                  [tabId]="'other'">
712
                <ng-container *ngTemplateOutlet="other_tab;"></ng-container>
713
              </my-tab>
714
              <my-tab
715
                  [tabTitle]="'Dmps'" [tabNumber]="fetchDmps.searchUtils.totalResults"
716
                  [tabId]="'dmps'">
717
                <ng-container *ngTemplateOutlet="dmps_tab;"></ng-container>
718
              </my-tab>
719
              <!--              [class]="(firstTab === 'statistics')?'uk-active':''"-->
720
              <my-tab *ngIf="(fetchPublications.searchUtils.totalResults > 0 || fetchDatasets.searchUtils.totalResults > 0
721
                       || fetchSoftware.searchUtils.totalResults > 0 || fetchOrps.searchUtils.totalResults > 0)"
722
                      [tabTitle]="'Statistics'" customClass="statistics" [tabId]="'statistics'"
723
              >
724
                <ng-container *ngTemplateOutlet="statistics_tab;"></ng-container>
725
              </my-tab>
726
            </my-small-tabs>
727
          </div>
728
          <!--          <ng-template #loadingBlock>-->
729
          <!--            <div *ngIf="!tabsAreInitialized" class="uk-animation-fade uk-margin-top  uk-width-1-1" role="alert">-->
730
          <!--              <span class="loading-gif  uk-align-center" ></span>-->
731
          <!--            </div>-->
732
          <!--          </ng-template>-->
733

    
734
          <div class="uk-margin-small-top uk-flex">
735
            <!-- Last Index Info-->
736
            <div class="uk-width-2-3@m uk-width-1-2">
737
              <img src="assets/common-assets/graph.svg" style="opacity: 0.4" loading="lazy">
738
              <span class="uk-margin-small-left uk-text-baseline uk-text-muted">Powered by <a
739
                  href="https://graph.openaire.eu" class="graph-color">OpenAIRE Research Graph</a></span>
740
              <span *ngIf="indexUpdateDate" class="uk-text-baseline uk-text-muted">
741
                . Last update of records in OpenAIRE: {{indexUpdateDate | date: 'MMM dd, yyyy'}}
742
              </span>
743
            </div>
744
            <!--Feedback-->
745
            <div class="uk-width-expand uk-text-right">
746
              <span class="uk-text-muted">Any information missing or wrong?</span>
747
              <a (click)="showFeedback = true; scroll()" class="portal-link space">Report an Issue</a>
748
            </div>
749
          </div>
750
        </div>
751
        <helper *ngIf="pageContents && pageContents['bottom'] && pageContents['bottom'].length > 0"
752
                [texts]="pageContents['bottom']"></helper>
753
      </div>
754

    
755
      <!-- Statistics -->
756
      <modal-alert *ngIf="projectInfo &&
757
                        (fetchPublications.searchUtils.totalResults > 0 || fetchDatasets.searchUtils.totalResults > 0
758
                        || fetchSoftware.searchUtils.totalResults > 0 || fetchOrps.searchUtils.totalResults > 0)"
759
                   classBody="uk-width-xxlarge uk-padding-remove-right" #statisticsModal>
760
        <landing-header [properties]="properties" [title]="projectName"
761
                        [subTitle]="projectInfo.acronym ? projectInfo.title : ''"
762
                        [entityType]="'project'"
763
                        [startDate]="projectInfo.startDate"
764
                        [endDate]="projectInfo.endDate"
765
                        [status]="projectInfo.status">
766
        </landing-header>
767
        <div class="uk-margin-medium-top uk-margin-medium-right">
768
          <errorMessages [status]="[fetchPublications.searchUtils.status, fetchDatasets.searchUtils.status,
769
                                  fetchSoftware.searchUtils.status, fetchOrps.searchUtils.status]"
770
                         [type]="'statistics'" tab_error_class=true></errorMessages>
771

    
772
          <div
773
              *ngIf="statsClicked &&
774
          (fetchPublications.searchUtils.status == errorCodes.DONE || fetchDatasets.searchUtils.status == errorCodes.DONE
775
          || fetchSoftware.searchUtils.status == errorCodes.DONE || fetchOrps.searchUtils.status == errorCodes.DONE)">
776
            <div class="uk-padding uk-padding-remove-top">
777
              <div *ngIf="!properties.useNewStatistisTool" class="uk-text-center uk-text-large">Produced research
778
                outcomes per year
779
              </div>
780
              <i-frame [url]=chartScientificResultsUrl></i-frame>
781
            </div>
782
            <div class="uk-padding uk-padding-remove-top">
783
              <div *ngIf="!properties.useNewStatistisTool" class="uk-text-center uk-text-large">Access mode of research
784
                outcomes
785
              </div>
786
              <i-frame [url]=chartAccessModeUrl></i-frame>
787
            </div>
788
            <div class="uk-padding uk-padding-remove-top">
789
              <div *ngIf="!properties.useNewStatistisTool" class="uk-text-center uk-text-large">Research outcomes per
790
                datasource
791
              </div>
792
              <i-frame [url]=chartDatasourcesUrl></i-frame>
793
            </div>
794
          </div>
795
        </div>
796
      </modal-alert>
797
    </div>
798
  </div>
799
  <feedback *ngIf="projectInfo" [projectInfo]="projectInfo"
800
            [properties]="properties" [entityType]="'project'" [title]="projectName" [fields]="feedbackFields"
801
            [showForm]="showFeedback" (show)="showFeedback = $event"></feedback>
802
</div>
803

    
804
<modal-loading></modal-loading>
805
<modal-alert #AlertModalCsvError></modal-alert>
(1-1/5)