Project

General

Profile

1
<div id="tm-main" class="landing uk-section uk-padding-remove-top tm-middle">
2
  <div *ngIf="!showFeedback" class="uk-grid">
3
    <div class="tm-main uk-width-1-1@s uk-width-1-1@m  uk-width-1-1@l uk-row-first ">
4
      <div class="uk-container uk-container-large uk-margin-medium-top organization">
5
        <div *ngIf="warningMessage.length > 0" class="uk-alert uk-alert-warning  uk-margin-large-top"
6
             role="alert">{{warningMessage}}</div>
7
        <div *ngIf="errorMessage.length > 0" class="uk-alert uk-alert-danger  uk-margin-large-top"
8
             role="alert">{{errorMessage}}</div>
9
        <div [style.display]="showLoading ? 'inline' : 'none'"
10
             class="uk-animation-fade uk-margin-large-top  uk-width-1-1" role="alert"><span
11
            class="loading-gif  uk-align-center"></span></div>
12
        <helper *ngIf="pageContents && pageContents['top'] && pageContents['top'].length > 0"
13
                [texts]="pageContents['top']"></helper>
14
        <div *ngIf="organizationInfo != null" class="uk-grid uk-margin-remove">
15
          <div class="uk-width-2-3@m uk-width-1-1@s uk-padding uk-padding-remove-left uk-padding-remove-vertical uk-margin-bottom">
16
            <schema2jsonld *ngIf="organizationInfo" [data]=organizationInfo
17
                           [URL]="properties.domain + properties.baseLink+this.properties.searchLinkToOrganization+organizationInfo.relcanId"
18
                           type="organization"></schema2jsonld>
19
            <landing-header [properties]="properties" [title]="organizationInfo.title.name"
20
                            titleClass="uk-margin-remove-bottom"
21
                            [subTitle]="(organizationInfo.name
22
                            && organizationInfo.title.name !== organizationInfo.name)?organizationInfo.name:null"
23
                            [entityType]="'organization'"></landing-header>
24
            <div *ngIf="organizationInfo.deletedByInferenceIds">
25
              <a (click)="openDeletedByInference()">View all {{organizationInfo.deletedByInferenceIds.length}}
26
                versions</a>
27
            </div>
28
            <ul class="uk-list basic-info">
29
              <!-- Web Page -->
30
              <li *ngIf="organizationInfo.title && organizationInfo.title.url">
31
                <span class="uk-text-muted">Web page: </span>
32
                <a [href]="organizationInfo.title.url" target="_blank">
33
                  <span>{{organizationInfo.title.url}}</span>
34
                  <span class="custom-external custom-icon space"></span>
35
                </a>
36
              </li>
37
              <!-- Country -->
38
              <li *ngIf="organizationInfo.country && !organizationInfo.country.toLowerCase().includes('unknown')">
39
                <span class="uk-text-muted">Country: </span>{{organizationInfo.country}}
40
              </li>
41
            </ul>
42
          </div>
43
          <div class="uk-width-1-3@m uk-width-1-1@s uk-padding-remove">
44
            <ul class="user-actions uk-list uk-card uk-card-default uk-padding">
45
              <!-- Share -->
46
              <li>
47
                <addThis></addThis>
48
              </li>
49
              <li>
50
                <a class="uk-link-text uk-text-bold uk-text-uppercase" (click)="openDownloadReportModal()">
51
                  <span class="uk-icon-button uk-button-primary uk-icon">
52
                    <svg width="20" height="20" viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg"
53
                         data-svg="download"><polyline fill="none" stroke="#000"
54
                                                       points="14,10 9.5,14.5 5,10"></polyline><rect x="3" y="17"
55
                                                                                                     width="13"
56
                                                                                                     height="1"></rect><line
57
                        fill="none" stroke="#000" x1="9.5" y1="13.91" x2="9.5" y2="3"></line>
58
                    </svg>
59
                  </span>
60
                  <span class="uk-margin-small-left">Download content lists</span>
61
                </a>
62
              </li>
63
              <li *ngIf="fetchProjects && fetchProjects.funders && fetchProjects.funders.length > 0">
64
                <a class="uk-link-text uk-text-bold uk-text-uppercase" (click)="openDownloadFunderReportModal()">
65
                  <span class="uk-icon-button uk-button-primary uk-icon">
66
                    <svg width="20" height="20" viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg"
67
                         data-svg="download"><polyline fill="none" stroke="#000"
68
                                                       points="14,10 9.5,14.5 5,10"></polyline><rect x="3" y="17"
69
                                                                                                     width="13"
70
                                                                                                     height="1"></rect><line
71
                        fill="none" stroke="#000" x1="9.5" y1="13.91" x2="9.5" y2="3"></line>
72
                    </svg>
73
                  </span>
74
                  <span class="uk-margin-small-left">Download project lists</span>
75
                </a>
76
              </li>
77
            </ul>
78
          </div>
79
          <div class="uk-padding-remove-left uk-width-1-1 uk-margin-large-top">
80
<!--            <ng-template #loadingBlock>-->
81
<!--              <div *ngIf="!tabsAreInitialized" class="uk-animation-fade uk-margin-top  uk-width-1-1" role="alert">-->
82
<!--                <span class="loading-gif  uk-align-center"></span>-->
83
<!--              </div>-->
84
<!--            </ng-template>-->
85
<!--            *ngIf="numberOfTabs > 0; else loadingBlock"-->
86
            <div class="main-tabs-div">
87
              <!--Tab Templates-->
88
              <ng-template #projects_tab>
89
                <div class="uk-grid uk-margin-remove">
90
                  <div class="uk-width-expand uk-padding">
91
                    <projectsInModal [fetchProjects]="fetchProjects"
92
                                     [organizationId]="organizationId"
93
                                     [properties]=properties>
94
                    </projectsInModal>
95
                  </div>
96
                  <!--<div class="uk-width-1-3@m uk-width-1-1 right-column uk-padding-remove"></div>-->
97
                </div>
98
              </ng-template>
99
              <ng-template #data_providers_tab>
100
                <div class="uk-grid uk-margin-remove">
101
                  <div class="uk-width-expand uk-padding">
102
                    <search-tab [fetch]="fetchDataproviders" resultType="dataprovider"
103
                                [params]="getParamsForSearchLink()"
104
                                [searchLinkToAdvancedPage]="properties.searchLinkToAdvancedDataProviders"
105
                                [properties]="properties">
106
                    </search-tab>
107
                  </div>
108
                  <!--<div class="uk-width-1-3@m uk-width-1-1 right-column uk-padding-remove"></div>-->
109
                </div>
110
              </ng-template>
111
              <ng-template #publications_tab>
112
                <div class="uk-grid uk-margin-remove">
113
                  <div class="uk-width-expand uk-padding">
114
                    <search-tab [fetch]="fetchPublications" resultType="publication"
115
                                [params]="getParamsForSearchLink('publications')"
116
                                [searchLinkToAdvancedPage]="properties.searchLinkToAdvancedResults"
117
                                [properties]="properties">
118
                    </search-tab>
119
                  </div>
120
                  <!--<div class="uk-width-1-3@m uk-width-1-1 right-column uk-padding-remove"></div>-->
121
                </div>
122
              </ng-template>
123
              <ng-template #datasets_tab>
124
                <div class="uk-grid uk-margin-remove">
125
                  <div class="uk-width-expand uk-padding">
126
                    <search-tab [fetch]="fetchDatasets" resultType="dataset"
127
                                [params]="getParamsForSearchLink('datasets')"
128
                                [searchLinkToAdvancedPage]="properties.searchLinkToAdvancedResults"
129
                                [properties]="properties">
130
                    </search-tab>
131
                  </div>
132
                  <!--<div class="uk-width-1-3@m uk-width-1-1 right-column uk-padding-remove"></div>-->
133
                </div>
134
              </ng-template>
135
              <ng-template #software_tab>
136
                <div class="uk-grid uk-margin-remove">
137
                  <div class="uk-width-expand uk-padding">
138
                    <search-tab [fetch]="fetchSoftware" resultType="software"
139
                                [params]="getParamsForSearchLink('software')"
140
                                [searchLinkToAdvancedPage]="properties.searchLinkToAdvancedResults"
141
                                [properties]="properties">
142
                    </search-tab>
143
                  </div>
144
                  <!--<div class="uk-width-1-3@m uk-width-1-1 right-column uk-padding-remove"></div>-->
145
                </div>
146
              </ng-template>
147
              <ng-template #other_tab>
148
                <div class="uk-grid uk-margin-remove">
149
                  <div class="uk-width-expand uk-padding">
150
                    <search-tab [fetch]="fetchOrps" resultType="other"
151
                                [params]="getParamsForSearchLink('other')"
152
                                [searchLinkToAdvancedPage]="properties.searchLinkToAdvancedResults"
153
                                [properties]="properties">
154
                    </search-tab>
155
                  </div>
156
                  <!--<div class="uk-width-1-3@m uk-width-1-1 right-column uk-padding-remove"></div>-->
157
                </div>
158
              </ng-template>
159
<!--              [class]="numberOfTabs > 2 ? 'uk-visible@m' : ''"-->
160
              <my-tabs (selectedActiveTab)="onSelectActiveTab($event)">
161
                <my-tab
162
                  [tabNumber]="fetchProjects.searchUtils.totalResults"
163
                  [tabTitle]="'Funding / Projects'"
164
                  [tabId]="'projects'" class="uk-active">
165
                  <ng-container *ngTemplateOutlet="projects_tab;"></ng-container>
166
                </my-tab>
167
                <!--                [class]="(firstTab === 'dataProviders')?'uk-active':''"-->
168
                <my-tab *ngIf="fetchDataproviders && fetchDataproviders.searchUtils.totalResults > 0"
169
                        [tabNumber]="fetchDataproviders.searchUtils.totalResults"
170
                        [tabTitle]="'Content Providers'"
171
                        [tabId]="'dataProviders'">
172
                  <ng-container *ngTemplateOutlet="data_providers_tab;"></ng-container>
173
                </my-tab>
174
                <!--                [class]="(firstTab === 'publications')?'uk-active':''"-->
175
                <my-tab *ngIf="fetchPublications && fetchPublications.searchUtils.totalResults > 0"
176
                        [tabNumber]="fetchPublications.searchUtils.totalResults"
177
                        [tabTitle]="'Publications'"
178
                        [tabId]="'publications'">
179
                  <ng-container *ngTemplateOutlet="publications_tab;"></ng-container>
180
                </my-tab>
181
                <!--                [class]="(firstTab === 'datasets')?'uk-active':''"-->
182
                <my-tab *ngIf="fetchDatasets && fetchDatasets.searchUtils.totalResults > 0"
183
                        [tabNumber]="fetchDatasets.searchUtils.totalResults"
184
                        [tabTitle]="'Research Data'"
185
                        [tabId]="'datasets'">
186
                  <ng-container *ngTemplateOutlet="datasets_tab;"></ng-container>
187
                </my-tab>
188
                <!--                [class]="(firstTab === 'software')?'uk-active':''"-->
189
                <my-tab *ngIf="fetchSoftware && fetchSoftware.searchUtils.totalResults > 0"
190
                        [tabNumber]="fetchSoftware.searchUtils.totalResults"
191
                        [tabTitle]="'Software'"
192
                        [tabId]="'software'">
193
                  <ng-container *ngTemplateOutlet="software_tab;"></ng-container>
194
                </my-tab>
195
                <!--                [class]="(firstTab === 'other')?'uk-active':''"-->
196
                <my-tab *ngIf="fetchOrps && fetchOrps.searchUtils.totalResults > 0"
197
                        [tabNumber]="fetchOrps.searchUtils.totalResults"
198
                        [tabTitle]="'Other Research'"
199
                        [tabId]="'other'">
200
                  <ng-container *ngTemplateOutlet="other_tab;"></ng-container>
201
                </my-tab>
202
              </my-tabs>
203
<!--              *ngIf="numberOfTabs > 2" class="uk-hidden@m"-->
204
              <my-small-tabs
205
                             (selectedActiveTab)="onSelectActiveTab($event)">
206
<!--                *ngIf="fetchProjects && fetchProjects.searchUtils.totalResults > 0"-->
207
<!--                [class]="(firstTab === 'projects')?'uk-active':''"-->
208
                <my-tab
209
                        [tabNumber]="fetchProjects.searchUtils.totalResults"
210
                        [tabTitle]="'Funding / Projects'"
211
                        [tabId]="'projects'" class="uk-active">
212
                  <ng-container *ngTemplateOutlet="projects_tab;"></ng-container>
213
                </my-tab>
214
<!--                [class]="(firstTab === 'dataProviders')?'uk-active':''"-->
215
                <my-tab *ngIf="fetchDataproviders && fetchDataproviders.searchUtils.totalResults > 0"
216
                        [tabNumber]="fetchDataproviders.searchUtils.totalResults"
217
                        [tabTitle]="'Content Providers'"
218
                        [tabId]="'dataProviders'">
219
                  <ng-container *ngTemplateOutlet="data_providers_tab;"></ng-container>
220
                </my-tab>
221
<!--                [class]="(firstTab === 'publications')?'uk-active':''"-->
222
                <my-tab *ngIf="fetchPublications && fetchPublications.searchUtils.totalResults > 0"
223
                        [tabNumber]="fetchPublications.searchUtils.totalResults"
224
                        [tabTitle]="'Publications'"
225
                        [tabId]="'publications'">
226
                  <ng-container *ngTemplateOutlet="publications_tab;"></ng-container>
227
                </my-tab>
228
<!--                [class]="(firstTab === 'datasets')?'uk-active':''"-->
229
                <my-tab *ngIf="fetchDatasets && fetchDatasets.searchUtils.totalResults > 0"
230
                        [tabNumber]="fetchDatasets.searchUtils.totalResults"
231
                        [tabTitle]="'Research Data'"
232
                        [tabId]="'datasets'">
233
                  <ng-container *ngTemplateOutlet="datasets_tab;"></ng-container>
234
                </my-tab>
235
<!--                [class]="(firstTab === 'software')?'uk-active':''"-->
236
                <my-tab *ngIf="fetchSoftware && fetchSoftware.searchUtils.totalResults > 0"
237
                        [tabNumber]="fetchSoftware.searchUtils.totalResults"
238
                        [tabTitle]="'Software'"
239
                        [tabId]="'software'">
240
                  <ng-container *ngTemplateOutlet="software_tab;"></ng-container>
241
                </my-tab>
242
<!--                [class]="(firstTab === 'other')?'uk-active':''"-->
243
                <my-tab *ngIf="fetchOrps && fetchOrps.searchUtils.totalResults > 0"
244
                        [tabNumber]="fetchOrps.searchUtils.totalResults"
245
                        [tabTitle]="'Other Research'"
246
                        [tabId]="'other'">
247
                  <ng-container *ngTemplateOutlet="other_tab;"></ng-container>
248
                </my-tab>
249
              </my-small-tabs>
250
            </div>
251
            <div class="uk-margin-small-top uk-flex">
252
              <!-- Last Index Info-->
253
              <div class="uk-width-2-3@m uk-width-1-2">
254
                <img src="assets/common-assets/graph.svg" style="opacity: 0.4">
255
                <span class="uk-margin-small-left uk-text-baseline uk-text-muted">Powered by <a href="https://graph.openaire.eu" class="graph-color">OpenAIRE Research Graph</a></span>
256
                <span *ngIf="indexUpdateDate" class="uk-text-baseline uk-text-muted">
257
                . Last update of records in OpenAIRE: {{indexUpdateDate | date: 'MMM dd, yyyy'}}
258
              </span>
259
              </div>
260
              <!--Feedback-->
261
              <div class="uk-width-expand uk-text-right">
262
                <span class="uk-text-muted">Any information missing or wrong?</span>
263
                <a (click)="showFeedback = true; scroll()" class="portal-link space">Report an Issue</a>
264
              </div>
265
            </div>
266
          </div>
267
        </div>
268
      </div>
269
      <helper *ngIf="pageContents && pageContents['bottom'] && pageContents['bottom'].length > 0"
270
              [texts]="pageContents['bottom']"></helper>
271
    </div>
272
  </div>
273
  <feedback *ngIf="organizationInfo" [organizationInfo]="organizationInfo"
274
            [properties]="properties" [entityType]="'organization'" [fields]="feedbackFields"
275
            [showForm]="showFeedback" (show)="showFeedback = $event"></feedback>
276
</div>
277
<!-- Other versions -->
278
<modal-alert *ngIf="organizationInfo && organizationInfo.deletedByInferenceIds"
279
             #AlertModalDeletedByInference classBody="uk-width-xxlarge uk-padding-remove-right">
280
  <landing-header [properties]="properties" [title]="organizationInfo.title.name"
281
                  [subTitle]="(organizationInfo.name && organizationInfo.title.name !== organizationInfo.name)?organizationInfo.name:null"
282
                  titleClass="title-grey-background"
283
                  [entityType]="'organization'"></landing-header>
284
  <div class="uk-margin-medium-top uk-margin-medium-right">
285
    <organizationsDeletedByInference *ngIf="deleteByInferenceOpened"
286
                                     [id]="organizationInfo.objIdentifier"
287
                                     [ids]="organizationInfo.deletedByInferenceIds"
288
                                     [modal]="AlertModalDeletedByInference"
289
                                     [type]="'organizations'">
290
    </organizationsDeletedByInference>
291
  </div>
292
</modal-alert>
293
<!-- Download report -->
294
<modal-alert #downloadReportModal [classTitle]="'landing-modal-header uk-padding-small'"
295
             [classBody]="'uk-padding-remove landing-modal'">
296
  <div class="uk-padding">
297
    <div class="uk-animation-slide-top-small">
298
      <ul *ngIf="total > 0" class="uk-margin-remove-bottom uk-list">
299
        <li [attr.uk-tooltip]="total > 0 ? 'cls: uk-invisible' : 'cls: uk-active'"
300
            title="No report available">
301
          <a [class]="total > 0 ? 'clickable' : 'uk-disabled uk-link-muted'"
302
             (click)="downloadFile(getCSVAffiliated('results'), 'results' + '-report')">
303
            <span uk-icon="download"></span>
304
            <span class="uk-text-capitalize uk-margin-small-left">all research outcomes (CSV)</span>
305
          </a>
306
        </li>
307
        <li [attr.uk-tooltip]="fetchPublications.searchUtils.totalResults > 0 ? 'cls: uk-invisible' : 'cls: uk-active'"
308
            title="No report available">
309
          <a [class]="fetchPublications.searchUtils.totalResults > 0 ? 'clickable' : 'uk-disabled uk-link-muted'"
310
             (click)="downloadFile(getCSVAffiliated('publications'), 'publications' + '-report')">
311
            <span uk-icon="download"></span>
312
            <span class="uk-text-capitalize uk-margin-small-left">publications (CSV)</span>
313
          </a>
314
        </li>
315
        <li [attr.uk-tooltip]="fetchDatasets.searchUtils.totalResults > 0 ? 'cls: uk-invisible' : 'cls: uk-active'"
316
            title="No report available">
317
          <a [class]="fetchDatasets.searchUtils.totalResults > 0 ? 'clickable' : 'uk-disabled uk-link-muted'"
318
             (click)="downloadFile(getCSVAffiliated('datasets'), 'datasets' + '-report')">
319
            <span uk-icon="download"></span>
320
            <span class="uk-text-capitalize uk-margin-small-left">research data (CSV)</span>
321
          </a>
322
        </li>
323
        <li [attr.uk-tooltip]="fetchSoftware.searchUtils.totalResults > 0 ? 'cls: uk-invisible' : 'cls: uk-active'"
324
            title="No report available">
325
          <a [class]="fetchSoftware.searchUtils.totalResults > 0 ? 'clickable' : 'uk-disabled uk-link-muted'"
326
             (click)="downloadFile(getCSVAffiliated('software'), 'software' + '-report')">
327
            <span uk-icon="download"></span>
328
            <span class="uk-text-capitalize uk-margin-small-left">software (CSV)</span>
329
          </a>
330
        </li>
331
        <li [attr.uk-tooltip]="fetchOrps.searchUtils.totalResults > 0 ? 'cls: uk-invisible' : 'cls: uk-active'"
332
            title="No report available">
333
          <a [class]="fetchOrps.searchUtils.totalResults > 0 ? 'clickable' : 'uk-disabled uk-link-muted'"
334
             (click)="downloadFile(getCSVAffiliated('other'), 'other' + '-report')">
335
            <span uk-icon="download"></span>
336
            <span class="uk-text-capitalize uk-margin-small-left">other research products (CSV)</span>
337
          </a>
338
        </li>
339
      </ul>
340
      <div *ngIf="total == 0"
341
           class="uk-text-muted">
342
        No reports available
343
      </div>
344
    </div>
345
  </div>
346
</modal-alert>
347
<!-- Download Funder report -->
348
<modal-alert #downloadFunderReportModal [classTitle]="'landing-modal-header uk-padding-small'"
349
             [classBody]="'uk-padding-remove landing-modal'">
350
  <div *ngIf="fetchProjects.funders && fetchProjects.funders.length > 0" class="uk-padding">
351
    <div class="uk-animation-slide-top-small">
352
      <div>
353
        <mat-form-field class="matSelectionFormField uk-width-1-1">
354
          <mat-label>Select a funder to download report</mat-label>
355
          <mat-select [(value)]="funder"
356
                      [disableOptionCentering]="true"
357
                      class="matSelection" panelClass="matSelectionPanel">
358
            <mat-option *ngFor="let element of fetchProjects.funders"
359
                        [value]="element">{{element.name}}
360
            </mat-option>
361
          </mat-select>
362
        </mat-form-field>
363
      </div>
364
      <div *ngIf="funder && funder != ''"
365
           class="uk-animation-slide-top-small uk-margin-top">
366
        <ul class="uk-margin-remove-bottom uk-list">
367
          <li>
368
            <a class="clickable"
369
               (click)="downloadFile(getFunderProjects(), funder.name + '-projects-report')">
370
              <span uk-icon="download"></span>
371
              <span class="uk-text-capitalize uk-margin-small-left">projects (CSV)</span>
372
            </a>
373
          </li>
374
          <li *ngFor="let contentType of contentTypes">
375
            <a class="clickable"
376
               (click)="confirmOpenApplyAll(contentType[0])">
377
              <span uk-icon="download"></span>
378
              <span class="uk-text-capitalize uk-margin-small-left">{{contentType[1]}} (CSV)</span>
379
            </a>
380
          </li>
381
        </ul>
382
      </div>
383
    </div>
384
  </div>
385
</modal-alert>
386
<modal-loading></modal-loading>
387
<modal-alert #AlertModalApplyAll (alertOutput)="confirmCloseApplyAll()"></modal-alert>
388
<modal-alert #AlertModalCsvError></modal-alert>
(1-1/3)