openaire-library/landingPages/organization/organization.component.html

248 lines
15 KiB
HTML

<div id="tm-main" class="landing uk-section uk-padding-remove-top tm-middle">
<div *ngIf="!showFeedback" uk-grid>
<div class="tm-main uk-width-1-1@s uk-width-1-1@m uk-width-1-1@l uk-row-first ">
<div class="uk-container uk-container-large uk-margin-medium-top organization">
<div *ngIf="warningMessage.length > 0" class="uk-alert uk-alert-warning uk-margin-large-top"
role="alert">{{warningMessage}}</div>
<div *ngIf="errorMessage.length > 0" class="uk-alert uk-alert-danger uk-margin-large-top"
role="alert">{{errorMessage}}</div>
<div [style.display]="showLoading ? 'inline' : 'none'"
class="uk-animation-fade uk-margin-large-top uk-width-1-1" role="alert"><span
class="loading-gif uk-align-center"></span></div>
<helper *ngIf="pageContents && pageContents['top'] && pageContents['top'].length > 0"
[texts]="pageContents['top']"></helper>
<div *ngIf="organizationInfo != null" class="uk-grid">
<div class="uk-width-2-3@m uk-width-1-1@s uk-margin-bottom">
<schema2jsonld *ngIf="organizationInfo" [data]=organizationInfo
[URL]="properties.baseLink+'/search/organization?organizationId='+organizationId"
type="organization"></schema2jsonld>
<landing-header [properties]="properties" [title]="organizationInfo.title.name"
[subTitle]="(organizationInfo.name
&& organizationInfo.title.name !== organizationInfo.name)?organizationInfo.name:null"
[entityType]="'organization'"></landing-header>
<div *ngIf="organizationInfo.deletedByInferenceIds"
class="uk-text-muted uk-text-small uk-text-right">
<a (click)="openDeletedByInference()">View all {{organizationInfo.deletedByInferenceIds.length}}
versions</a>
</div>
<ul class="uk-list">
<!-- Web Page -->
<li *ngIf="organizationInfo.title && organizationInfo.title.url">
<span class="uk-text-muted">Web page: </span>
<a [href]="organizationInfo.title.url" target="_blank">
<span>{{organizationInfo.title.url}}</span>
<span class="custom-external custom-icon space"></span>
</a>
</li>
<!-- Country -->
<li *ngIf="organizationInfo.country">
<span class="uk-text-muted">Country: </span>{{organizationInfo.country}}
</li>
</ul>
<div class="uk-margin-medium-top">
<div *ngIf="fetchProjects && fetchProjects.searchUtils.totalResults > 0"
class="uk-margin-top simple-buttons uk-flex uk-flex-middle">
<div *ngIf="fetchProjects && fetchProjects.searchUtils.totalResults > 0" (click)="openProjectsModal()"
class="clickable uk-margin-right">
<span class="uk-text-bold">{{fetchProjects.searchUtils.totalResults | number}}</span> Projects
</div>
</div>
<div
*ngIf="total.publications > 0 || total.datasets > 0 || total.software > 0 || total.other > 0 || total.dataproviders > 0"
class="uk-margin-top advanced-buttons uk-grid-small uk-child-width-1-4@s uk-child-width-1-2"
uk-height-match="target: .target; row: false"
uk-grid>
<div *ngIf="total.publications > 0">
<div class="uk-position-relative">
<!-- <a [queryParams]="routerHelper.createQueryParams(['organization', 'og', 'type'], [organizationId, 'and', 'publications'])"-->
<a [queryParams]="routerHelper.createQueryParams(['f0', 'fv0', 'type', 'qf'], ['relorganizationid', organizationId, 'publications', 'false'])"
[routerLink]="properties.searchLinkToAdvancedResults" target="_blank">
<span class="custom-external uk-position-top-right uk-margin-small-right uk-margin-small-top"></span>
<div class="header target uk-text-bold">Publications</div>
<div class="icon uk-position-center" uk-icon="icon: search;"></div>
<div class="footer target uk-position-relative">
<span class="uk-text-bold uk-position-center">{{total.publications | number}}</span>
</div>
</a>
</div>
</div>
<div *ngIf="total.datasets > 0">
<div class="uk-position-relative">
<a [queryParams]="routerHelper.createQueryParams(['f0', 'fv0', 'type', 'qf'], ['relorganizationid', organizationId, 'datasets', 'false'])"
[routerLink]="properties.searchLinkToAdvancedResults" target="_blank">
<span class="custom-external uk-position-top-right uk-margin-small-right uk-margin-small-top"></span>
<div class="header target uk-text-bold">Research Data</div>
<div class="icon uk-position-center" uk-icon="icon: search;"></div>
<div class="footer target uk-position-relative">
<span class="uk-text-bold uk-position-center">{{total.datasets | number}}</span>
</div>
</a>
</div>
</div>
<div *ngIf="total.software > 0">
<div class="uk-position-relative">
<a [queryParams]="routerHelper.createQueryParams(['f0', 'fv0', 'type', 'qf'], ['relorganizationid', organizationId, 'software', 'false'])"
[routerLink]="properties.searchLinkToAdvancedResults" target="_blank">
<span class="custom-external uk-position-top-right uk-margin-small-right uk-margin-small-top"></span>
<div class="header target uk-text-bold">Software</div>
<div class="icon uk-position-center" uk-icon="icon: search;"></div>
<div class="footer target uk-position-relative">
<span class="uk-text-bold uk-position-center">{{total.software | number}}</span>
</div>
</a>
</div>
</div>
<div *ngIf="total.other > 0">
<div class="uk-position-relative">
<a [queryParams]="routerHelper.createQueryParams(['f0', 'fv0', 'type', 'qf'], ['relorganizationid', organizationId, 'other', 'false'])"
[routerLink]="properties.searchLinkToAdvancedResults" target="_blank">
<span class="custom-external uk-position-top-right uk-margin-small-right uk-margin-small-top"></span>
<div class="header target uk-text-bold">Other Research Products</div>
<div class="icon uk-position-center" uk-icon="icon: search;"></div>
<div class="footer target uk-position-relative">
<span class="uk-text-bold uk-position-center">{{total.other | number}}</span>
</div>
</a>
</div>
</div>
<div *ngIf="total.dataproviders > 0">
<div class="uk-position-relative">
<a [queryParams]="routerHelper.createQueryParams(['f0', 'fv0'], ['relorganizationid', organizationId])"
[routerLink]="properties.searchLinkToAdvancedDataProviders" target="_blank">
<span class="custom-external uk-position-top-right uk-margin-small-right uk-margin-small-top"></span>
<div class="header target uk-text-bold">Content Providers</div>
<div class="icon uk-position-center" uk-icon="icon: search;"></div>
<div class="footer target uk-position-relative">
<span class="uk-text-bold uk-position-center">{{total.dataproviders | number}}</span>
</div>
</a>
</div>
</div>
</div>
</div>
<div class="uk-margin-small-top uk-flex uk-flex-bottom">
<img src="assets/common-assets/graph.svg" style="opacity: 0.4">
<span
class="uk-margin-small-left uk-text-small uk-text-baseline uk-text-muted">Powered by OpenAIRE Open Research Graph</span>
</div>
</div>
<div class="uk-width-1-3@m uk-width-1-1@s">
<div class="uk-card uk-card-default uk-padding-small">
<div>
<div class="sideInfoTitle uk-margin-small-bottom uk-margin-small-top">Share - Bookmark</div>
<addThis></addThis>
</div>
<div class="uk-margin-top">
<div class="sideInfoTitle uk-margin-small-bottom uk-margin-small-top">
Download report - based on the affiliation information
</div>
<div class="app-box uk-padding-small uk-margin-small-left uk-margin-small-right">
<div class="uk-animation-slide-top-small uk-padding-small uk-padding-remove-vertical">
<ul *ngIf="total.results > 0" class="uk-margin-remove-bottom uk-list">
<ng-container *ngFor="let contentType of contentTypes">
<li [attr.uk-tooltip]="total[contentType[0]] > 0 ? 'cls: uk-invisible' : 'cls: uk-active'"
title="No report available">
<a [class]="total[contentType[0]] > 0 ? 'clickable' : 'uk-disabled uk-link-muted'"
(click)="downloadFile(getCSVAffiliated(contentType[0]), contentType[0] + '-report')">
<span uk-icon="download"></span>
<span class="uk-text-capitalize uk-margin-small-left">{{contentType[1]}} (CSV)</span>
</a>
</li>
</ng-container>
</ul>
<div *ngIf="total.results == 0"
class="uk-text-muted">
No reports available
</div>
</div>
</div>
</div>
<div *ngIf="fetchProjects && fetchProjects.funders && fetchProjects.funders.length > 0"
class="uk-margin-top">
<div class="sideInfoTitle uk-margin-small-bottom uk-margin-small-top">
Funder report
</div>
<div class="app-box uk-padding-small uk-margin-small-left uk-margin-small-right">
<div class="uk-padding-small uk-padding-remove-vertical">
<div>
<mat-select [(value)]="funder"
[disableOptionCentering]="true"
class="matSelection" panelClass="matSelectionPanel">
<mat-option value="">Specify by Funder</mat-option>
<mat-option *ngFor="let element of fetchProjects.funders"
[value]="element">{{element.name}}
</mat-option>
</mat-select>
</div>
<div *ngIf="funder && funder != ''"
class="uk-animation-slide-top-small uk-margin-top">
<ul class="uk-margin-remove-bottom uk-list">
<li>
<a class="clickable"
(click)="downloadFile(getFunderProjects(), funder.name + '-projects-report')">
<span uk-icon="download"></span>
<span class="uk-text-capitalize uk-margin-small-left">projects (CSV)</span>
</a>
</li>
<li *ngFor="let contentType of contentTypes">
<a class="clickable"
(click)="confirmOpenApplyAll(contentType[0])">
<span uk-icon="download"></span>
<span class="uk-text-capitalize uk-margin-small-left">{{contentType[1]}} (CSV)</span>
</a>
</li>
</ul>
</div>
</div>
</div>
</div>
</div>
<div class="uk-margin-small-top uk-text-muted uk-text-small uk-text-right">
Last update of records in OpenAIRE: {{indexUpdateDate | date: 'MMM dd, yyyy'}}
</div>
</div>
</div>
<helper *ngIf="pageContents && pageContents['bottom'] && pageContents['bottom'].length > 0"
[texts]="pageContents['bottom']"></helper>
</div>
</div>
</div>
<feedback *ngIf="organizationInfo" [organizationInfo]="organizationInfo"
[properties]="properties" [entityType]="'organization'" [fields]="feedbackFields"
[showForm]="showFeedback" (show)="showFeedback = $event"></feedback>
</div>
<!-- Other versions -->
<modal-alert *ngIf="organizationInfo && organizationInfo.deletedByInferenceIds"
#AlertModalDeletedByInference classBody="uk-width-xxlarge uk-padding-remove-right">
<landing-header [properties]="properties" [title]="organizationInfo.title.name"
[subTitle]="(organizationInfo.name
&& organizationInfo.title.name !== organizationInfo.name)?organizationInfo.name:null"
[entityType]="'organization'"></landing-header>
<div class="uk-margin-medium-top uk-margin-medium-right">
<organizationsDeletedByInference *ngIf="deleteByInferenceOpened"
[id]="organizationInfo.objIdentifier"
[ids]="organizationInfo.deletedByInferenceIds"
[modal]="AlertModalDeletedByInference"
[type]="'organizations'">
</organizationsDeletedByInference>
</div>
</modal-alert>
<!-- Projects -->
<modal-alert *ngIf="organizationInfo && fetchProjects && fetchProjects.results"
#projectsModal classBody="uk-width-xxlarge uk-padding-remove-right">
<landing-header [properties]="properties" [title]="organizationInfo.title.name"
[subTitle]="(organizationInfo.name
&& organizationInfo.title.name !== organizationInfo.name)?organizationInfo.name:null"
[entityType]="'organization'">
</landing-header>
<div class="uk-margin-medium-top uk-margin-medium-right">
<projectsInModal [fetchProjects]="fetchProjects"
[modal]="projectsModal"
[organizationId]="organizationId"
[properties]=properties>
</projectsInModal>
</div>
</modal-alert>
<modal-loading></modal-loading>
<modal-alert #AlertModalApplyAll (alertOutput)="confirmCloseApplyAll()"></modal-alert>
<modal-alert #AlertModalCsvError></modal-alert>