348 lines
20 KiB
HTML
348 lines
20 KiB
HTML
<div id="tm-main" class="landing uk-section uk-padding-remove tm-middle">
|
|
<div class="tm-main">
|
|
<div class="organization">
|
|
<div *ngIf="!showFeedback" class="uk-grid uk-margin-remove-left" uk-grid>
|
|
<!-- left column -->
|
|
<div id="landing-left-sidebar" *ngIf="organizationInfo" class="uk-visible@s uk-padding-remove-horizontal">
|
|
<div class="uk-flex uk-flex-column uk-flex-right uk-sticky"
|
|
uk-sticky="bottom: true" [attr.offset]="offset">
|
|
<div class="uk-margin-large-bottom uk-align-center">
|
|
<div class="uk-text-meta uk-text-uppercase">Actions</div>
|
|
<ul class="uk-list">
|
|
<!-- Share -->
|
|
<li class="uk-text-center">
|
|
<a (click)="openAddThisModal()" [title]="'Share this '+openaireEntities.ORGANIZATION+' in your social networks'"
|
|
[attr.uk-tooltip]="'pos: right; cls: uk-active uk-text-small uk-padding-small'">
|
|
<span class="uk-icon-button uk-icon landing-action-button landing-action-button-portal">
|
|
<icon name="share" visuallyHidden="share"></icon>
|
|
</span>
|
|
</a>
|
|
</li>
|
|
<!-- Download -->
|
|
<li class="uk-text-center"
|
|
[title]="'Download reports'"
|
|
[attr.uk-tooltip]="'pos: right; cls: uk-active uk-text-small uk-padding-small'">
|
|
<a class="uk-link-text uk-text-bold uk-text-uppercase" (click)="buildFunderOptions(); openDownloadReportsModal()">
|
|
<span class="uk-icon-button uk-icon landing-action-button landing-action-button-portal">
|
|
<icon name="download" visuallyHidden="download"></icon>
|
|
</span>
|
|
</a>
|
|
</li>
|
|
</ul>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<!-- center/right column -->
|
|
<div class="uk-width-expand uk-padding-remove uk-background-default">
|
|
<div *ngIf="errorMessage.length > 0 || showLoading" class="uk-container uk-flex uk-flex-center uk-height-viewport uk-position-relative">
|
|
<div *ngIf="errorMessage.length > 0" class="uk-alert uk-alert-danger uk-width-2-3 uk-margin-xlarge-top"
|
|
role="alert">{{errorMessage}}</div>
|
|
<div *ngIf="showLoading" class="uk-position-center">
|
|
<loading></loading>
|
|
</div>
|
|
</div>
|
|
|
|
<!-- Graph and feedback -->
|
|
<ng-template #graph_and_feedback_template>
|
|
<div class="uk-flex uk-margin-small-top uk-margin-small-bottom" [class.uk-invisible]="!organizationInfo">
|
|
<!-- Last Index Info-->
|
|
<div class="uk-width-2-3@m uk-width-1-2">
|
|
<icon name="graph" customClass="text-graph"></icon>
|
|
<span class="uk-margin-small-left uk-text-baseline">
|
|
<span class="uk-text-meta">Powered by </span>
|
|
<a href="https://graph.openaire.eu" target="_blank" class="text-graph">OpenAIRE Research Graph</a>
|
|
</span>
|
|
<span *ngIf="indexUpdateDate" class="uk-text-baseline uk-text-meta">
|
|
. Last update of records in OpenAIRE: {{indexUpdateDate | date: 'MMM dd, yyyy'}}
|
|
</span>
|
|
</div>
|
|
<!--Feedback-->
|
|
<div *ngIf="properties.reCaptchaSiteKey" class="uk-width-expand uk-text-right">
|
|
<span class="uk-text-meta uk-text-xsmall">See an issue?</span>
|
|
<a (click)="showFeedback = true; scroll()" class="uk-text-xsmall"> Report it here</a>
|
|
</div>
|
|
</div>
|
|
</ng-template>
|
|
<div #graph_and_feedback id="graph_and_feedback" class="uk-padding uk-padding-remove-vertical uk-blur-background uk-text-xsmall uk-visible@m"
|
|
uk-sticky="bottom: true;" [attr.offset]="graph_offset">
|
|
<ng-container *ngTemplateOutlet="graph_and_feedback_template"></ng-container>
|
|
</div>
|
|
|
|
<div class="uk-margin-large-left uk-margin-large-right" [style]="'margin-bottom: '+graph_height+'px'">
|
|
<ng-container *ngIf="organizationInfo">
|
|
<!-- Main content -->
|
|
<div [attr.style]="'margin-top: '+(graph_height? 'calc(40px + 20px - '+graph_height+'px)': '40px')">
|
|
<!-- Schema -->
|
|
<schema2jsonld *ngIf="organizationInfo" [data]=organizationInfo
|
|
[URL]="properties.domain + properties.baseLink+this.properties.searchLinkToOrganization+organizationInfo.relcanId"
|
|
type="organization">
|
|
</schema2jsonld>
|
|
<!-- Actions for mobile viewport -->
|
|
<div class="uk-flex uk-flex-right uk-margin-medium-bottom uk-hidden@s">
|
|
<div class="uk-margin-small-right">
|
|
<a (click)="openAddThisModal()" [title]="'Share this '+openaireEntities.ORGANIZATION+' in your social networks'"
|
|
[attr.uk-tooltip]="'pos: right; cls: uk-active uk-text-small uk-padding-small'">
|
|
<span class="uk-icon-button uk-icon landing-action-button landing-action-button-portal">
|
|
<icon name="share" visuallyHidden="share"></icon>
|
|
</span>
|
|
</a>
|
|
</div>
|
|
<div [title]="'Download reports'"
|
|
[attr.uk-tooltip]="'pos: right; cls: uk-active uk-text-small uk-padding-small'">
|
|
<a class="uk-link-text uk-text-bold uk-text-uppercase" (click)="buildFunderOptions(); openDownloadReportsModal()">
|
|
<span class="uk-icon-button uk-icon landing-action-button landing-action-button-portal">
|
|
<icon name="download" visuallyHidden="download"></icon>
|
|
</span>
|
|
</a>
|
|
</div>
|
|
</div>
|
|
<!-- Helper -->
|
|
<helper *ngIf="pageContents && pageContents['top'] && pageContents['top'].length > 0"
|
|
[texts]="pageContents['top']"></helper>
|
|
<!-- Versions -->
|
|
<span *ngIf="organizationInfo.deletedByInferenceIds" class="uk-text-primary uk-flex uk-flex-middle">
|
|
<icon flex="true" ratio="0.8" name="auto_awesome_motion"></icon>
|
|
<a (click)="openDeletedByInference()" class="uk-text-primary uk-text-small uk-margin-small-left">
|
|
View all {{organizationInfo.deletedByInferenceIds.length}} versions
|
|
</a>
|
|
</span>
|
|
<!-- Landing header -->
|
|
<landing-header [properties]="properties" [title]="organizationInfo.title.name"
|
|
[subTitle]="(organizationInfo.name
|
|
&& organizationInfo.title.name !== organizationInfo.name)?organizationInfo.name:null"
|
|
[entityType]="'organization'">
|
|
</landing-header>
|
|
<!-- Basic info -->
|
|
<div class="uk-text-small">
|
|
<!-- Web Page -->
|
|
<div *ngIf="organizationInfo.title && organizationInfo.title.url" class="uk-margin-small-bottom uk-display-inline-block">
|
|
<span class="uk-text-meta">Web page: </span>
|
|
<a [href]="organizationInfo.title.url" target="_blank" class="uk-button uk-button-text uk-text-lowercase uk-text-normal custom-external">
|
|
{{organizationInfo.title.url}}
|
|
</a>
|
|
</div>
|
|
<!-- Country -->
|
|
<div *ngIf="organizationInfo.country && !organizationInfo.country.toLowerCase().includes('unknown')">
|
|
<span class="uk-text-meta">Country: </span>{{organizationInfo.country}}
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<!-- Tabs section -->
|
|
<div id="main-tabs-div" class="uk-sticky uk-blur-background"
|
|
uk-sticky="bottom: true; media: @m" [attr.offset]="offset">
|
|
<div class="uk-padding uk-padding-remove-horizontal uk-padding-remove-bottom">
|
|
<!-- <showTitle *ngIf="stickyHeader" [titleName]="organizationInfo.title.name" classNames="uk-margin-remove-bottom" class="uk-visible@m"></showTitle>-->
|
|
<landing-header *ngIf="stickyHeader" class="uk-visible@m"
|
|
[properties]="properties" [title]="organizationInfo.title.name"
|
|
[subTitle]="(organizationInfo.name
|
|
&& organizationInfo.title.name !== organizationInfo.name)?organizationInfo.name:null"
|
|
[entityType]="'organization'" isSticky="true">
|
|
</landing-header>
|
|
<my-tabs (selectedActiveTab)="onSelectActiveTab($event)" [offsetForSticky]="offset" [(isSticky)]="stickyHeader">
|
|
<my-tab [active]="true" [tabTitle]="'Funding / ' +openaireEntities.PROJECTS" [tabId]="'projects'"
|
|
[tabNumber]="fetchProjects.searchUtils.totalResults > 0 ? fetchProjects.searchUtils.totalResults : ''">
|
|
</my-tab>
|
|
<my-tab *ngIf="fetchDataproviders && fetchDataproviders.searchUtils.totalResults > 0"
|
|
[tabTitle]="openaireEntities.DATASOURCES" [tabId]="'dataProviders'"
|
|
[tabNumber]="fetchDataproviders.searchUtils.totalResults">
|
|
</my-tab>
|
|
<my-tab *ngIf="fetchPublications && fetchPublications.searchUtils.totalResults > 0"
|
|
[tabNumber]="fetchPublications.searchUtils.totalResults"
|
|
[tabTitle]="openaireEntities.PUBLICATIONS" [tabId]="'publications'">
|
|
</my-tab>
|
|
<my-tab *ngIf="fetchDatasets && fetchDatasets.searchUtils.totalResults > 0"
|
|
[tabNumber]="fetchDatasets.searchUtils.totalResults"
|
|
[tabTitle]="openaireEntities.DATASETS" [tabId]="'datasets'">
|
|
</my-tab>
|
|
<my-tab *ngIf="fetchSoftware && fetchSoftware.searchUtils.totalResults > 0"
|
|
[tabNumber]="fetchSoftware.searchUtils.totalResults"
|
|
[tabTitle]="openaireEntities.SOFTWARE" [tabId]="'software'">
|
|
</my-tab>
|
|
<my-tab *ngIf="fetchOrps && fetchOrps.searchUtils.totalResults > 0"
|
|
[tabNumber]="fetchOrps.searchUtils.totalResults"
|
|
[tabTitle]="openaireEntities.OTHER" [tabId]="'other'">
|
|
</my-tab>
|
|
</my-tabs>
|
|
</div>
|
|
</div>
|
|
<!-- Tabs content section -->
|
|
<div id="landing-sections" class="uk-text-small">
|
|
<div id="projects" class="landing-section landing-section-height-auto uk-padding uk-padding-remove-horizontal">
|
|
<projectsInModal [fetchProjects]="fetchProjects"
|
|
[organizationId]="organizationId" [properties]=properties>
|
|
</projectsInModal>
|
|
</div>
|
|
<div *ngIf="fetchDataproviders && fetchDataproviders.searchUtils.totalResults > 0"
|
|
id="dataProviders" class="landing-section uk-padding uk-padding-remove-horizontal">
|
|
<search-tab [fetch]="fetchDataproviders" resultType="dataprovider"
|
|
[params]="getParamsForSearchLink()"
|
|
[searchLinkToAdvancedPage]="properties.searchLinkToAdvancedDataProviders"
|
|
[properties]="properties">
|
|
</search-tab>
|
|
</div>
|
|
<div *ngIf="fetchPublications && fetchPublications.searchUtils.totalResults > 0"
|
|
id="publications" class="landing-section uk-padding uk-padding-remove-horizontal">
|
|
<search-tab [fetch]="fetchPublications" resultType="publication"
|
|
[params]="getParamsForSearchLink('publications')"
|
|
[searchLinkToAdvancedPage]="properties.searchLinkToAdvancedResults"
|
|
[properties]="properties">
|
|
</search-tab>
|
|
</div>
|
|
<div *ngIf="fetchDatasets && fetchDatasets.searchUtils.totalResults > 0"
|
|
id="datasets" class="landing-section uk-padding uk-padding-remove-horizontal">
|
|
<search-tab [fetch]="fetchDatasets" resultType="dataset"
|
|
[params]="getParamsForSearchLink('datasets')"
|
|
[searchLinkToAdvancedPage]="properties.searchLinkToAdvancedResults"
|
|
[properties]="properties">
|
|
</search-tab>
|
|
</div>
|
|
<div *ngIf="fetchSoftware && fetchSoftware.searchUtils.totalResults > 0"
|
|
id="software" class="landing-section uk-padding uk-padding-remove-horizontal">
|
|
<search-tab [fetch]="fetchSoftware" resultType="software"
|
|
[params]="getParamsForSearchLink('software')"
|
|
[searchLinkToAdvancedPage]="properties.searchLinkToAdvancedResults"
|
|
[properties]="properties">
|
|
</search-tab>
|
|
</div>
|
|
<div *ngIf="fetchOrps && fetchOrps.searchUtils.totalResults > 0"
|
|
id="other" class="landing-section uk-padding uk-padding-remove-horizontal">
|
|
<search-tab [fetch]="fetchOrps" resultType="other"
|
|
[params]="getParamsForSearchLink('other')"
|
|
[searchLinkToAdvancedPage]="properties.searchLinkToAdvancedResults"
|
|
[properties]="properties">
|
|
</search-tab>
|
|
</div>
|
|
</div>
|
|
<div class="uk-text-xsmall uk-hidden@m">
|
|
<ng-container *ngTemplateOutlet="graph_and_feedback_template"></ng-container>
|
|
</div>
|
|
<!-- Helper -->
|
|
<helper *ngIf="pageContents && pageContents['bottom'] && pageContents['bottom'].length > 0"
|
|
[texts]="pageContents['bottom']">
|
|
</helper>
|
|
</ng-container>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<!-- Feedback -->
|
|
<feedback *ngIf="organizationInfo && properties.reCaptchaSiteKey" [organizationInfo]="organizationInfo"
|
|
[properties]="properties" [entityType]="'organization'" [fields]="feedbackFields"
|
|
[(showForm)]="showFeedback">
|
|
</feedback>
|
|
</div>
|
|
|
|
<!-- MODALS -->
|
|
<!-- Other versions -->
|
|
<modal-alert #AlertModalDeletedByInference *ngIf="organizationInfo && organizationInfo.deletedByInferenceIds" large="true">
|
|
<organizationsDeletedByInference *ngIf="deleteByInferenceOpened"
|
|
[id]="organizationInfo.objIdentifier"
|
|
[ids]="organizationInfo.deletedByInferenceIds"
|
|
[modal]="AlertModalDeletedByInference"
|
|
[type]="'organizations'">
|
|
</organizationsDeletedByInference>
|
|
</modal-alert>
|
|
<!-- Share -->
|
|
<modal-alert *ngIf="organizationInfo" #addThisModal classBody="uk-flex uk-flex-center uk-flex-middle">
|
|
<addThis></addThis>
|
|
</modal-alert>
|
|
<!-- Download -->
|
|
<modal-alert *ngIf="organizationInfo" #downloadReportsModal large="true">
|
|
<div class="uk-padding-small uk-margin-small-left uk-margin-small-right">
|
|
<div class="uk-padding-small uk-padding-remove-vertical">
|
|
<div class="uk-grid uk-grid-divider uk-child-width-1-2@m" uk-grid uk-height-match=".subtitle">
|
|
<div class="uk-animation-slide-top-small">
|
|
<div class="subtitle uk-flex uk-flex-middle">
|
|
<span class="uk-text-nowrap">Content report</span>
|
|
</div>
|
|
<ul class="uk-list uk-margin-remove-bottom" *ngIf="total > 0">
|
|
<li [attr.uk-tooltip]="total > 0 ? 'cls: uk-invisible' : 'cls: uk-active'"
|
|
title="No report available">
|
|
<div class="uk-flex uk-flex-middle uk-button uk-button-link uk-text-normal"
|
|
[class]="total > 0 ? '' : 'uk-disabled uk-text-muted'"
|
|
(click)="downloadFile(getCSVAffiliated('results'), openaireEntities.RESULTS_FILE + '-report')">
|
|
<icon name="download" flex="true" class="uk-margin-small-right"></icon>
|
|
all {{openaireEntities.RESULTS}} (CSV)
|
|
</div>
|
|
</li>
|
|
<li [attr.uk-tooltip]="fetchPublications.searchUtils.totalResults > 0 ? 'cls: uk-invisible' : 'cls: uk-active'"
|
|
title="No report available">
|
|
<div class="uk-flex uk-flex-middle uk-button uk-button-link uk-text-normal"
|
|
[class]="fetchPublications.searchUtils.totalResults > 0 ? '' : 'uk-disabled uk-text-muted'"
|
|
(click)="downloadFile(getCSVAffiliated('publications'), openaireEntities.PUBLICATIONS_FILE + '-report')">
|
|
<icon name="download" flex="true" class="uk-margin-small-right"></icon>
|
|
{{openaireEntities.PUBLICATIONS}} (CSV)
|
|
</div>
|
|
</li>
|
|
<li [attr.uk-tooltip]="fetchDatasets.searchUtils.totalResults > 0 ? 'cls: uk-invisible' : 'cls: uk-active'"
|
|
title="No report available">
|
|
<div class="uk-flex uk-flex-middle uk-button uk-button-link uk-text-normal"
|
|
[class]="fetchDatasets.searchUtils.totalResults > 0 ? '' : 'uk-disabled uk-text-muted'"
|
|
(click)="downloadFile(getCSVAffiliated('datasets'), openaireEntities.DATASETS_FILE + '-report')">
|
|
<icon name="download" flex="true" class="uk-margin-small-right"></icon>
|
|
{{openaireEntities.DATASETS}} (CSV)
|
|
</div>
|
|
</li>
|
|
<li [attr.uk-tooltip]="fetchSoftware.searchUtils.totalResults > 0 ? 'cls: uk-invisible' : 'cls: uk-active'"
|
|
title="No report available">
|
|
<div class="uk-flex uk-flex-middle uk-button uk-button-link uk-text-normal"
|
|
[class]="fetchSoftware.searchUtils.totalResults > 0 ? '' : 'uk-disabled uk-text-muted'"
|
|
(click)="downloadFile(getCSVAffiliated('software'), openaireEntities.SOFTWARE_FILE + '-report')">
|
|
<icon name="download" flex="true" class="uk-margin-small-right"></icon>
|
|
{{openaireEntities.SOFTWARE}} (CSV)
|
|
</div>
|
|
</li>
|
|
<li [attr.uk-tooltip]="fetchOrps.searchUtils.totalResults > 0 ? 'cls: uk-invisible' : 'cls: uk-active'"
|
|
title="No report available">
|
|
<div class="uk-flex uk-flex-middle uk-button uk-button-link uk-text-normal"
|
|
[class]="fetchOrps.searchUtils.totalResults > 0 ? '' : 'uk-disabled uk-text-muted'"
|
|
(click)="downloadFile(getCSVAffiliated('other'), openaireEntities.OTHER_FILE + '-report')">
|
|
<icon name="download" flex="true" class="uk-margin-small-right"></icon>
|
|
{{openaireEntities.OTHER}} (CSV)
|
|
</div>
|
|
</li>
|
|
</ul>
|
|
<div *ngIf="total == 0" class="uk-text-muted uk-margin-top">
|
|
No reports available
|
|
</div>
|
|
</div>
|
|
<div>
|
|
<div class="subtitle uk-flex uk-flex-middle">
|
|
<span class="uk-text-nowrap">Funder report</span>
|
|
<div input type="select" placeholder="Select a funder to download report" inputClass="flat x-small" class="uk-width-1-1 uk-margin-small-left"
|
|
[options]="funderOptions" [(value)]="funder" *ngIf="fetchProjects.funders && fetchProjects.funders.length > 0">
|
|
</div>
|
|
</div>
|
|
<div *ngIf="fetchProjects.funders && fetchProjects.funders.length > 0">
|
|
<div class="uk-animation-slide-top-small uk-margin-top" *ngIf="funder && funder != ''">
|
|
<ul class="uk-list uk-margin-remove-bottom">
|
|
<li>
|
|
<div class="uk-flex uk-flex-middle uk-button uk-button-link uk-text-normal"
|
|
(click)="downloadFile(getFunderProjects(), funder.name + '-'+openaireEntities.PROJECTS_FILE+'-report')">
|
|
<icon name="download" flex="true" class="uk-margin-small-right"></icon>
|
|
{{openaireEntities.PROJECTS}} (CSV)
|
|
</div>
|
|
</li>
|
|
<li *ngFor="let contentType of contentTypes">
|
|
<div class="uk-flex uk-flex-middle uk-button uk-button-link uk-text-normal"
|
|
(click)="confirmOpenApplyAll(contentType[0], contentType[2])">
|
|
<icon name="download" flex="true" class="uk-margin-small-right"></icon>
|
|
{{contentType[1]}} (CSV)
|
|
</div>
|
|
</li>
|
|
</ul>
|
|
</div>
|
|
</div>
|
|
<div *ngIf="!fetchProjects.funders || fetchProjects.funders.length == 0" class="uk-text-muted uk-margin-top">
|
|
No reports available
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</modal-alert>
|
|
<modal-alert #AlertModalApplyAll (alertOutput)="confirmCloseApplyAll()"></modal-alert>
|
|
<modal-alert #AlertModalCsvError></modal-alert>
|
|
<modal-loading></modal-loading>
|