753 lines
46 KiB
HTML
753 lines
46 KiB
HTML
<ng-template #share_research_results_box
|
|
let-dynamic_content="dynamic_content">
|
|
<ul class="uk-list uk-margin-remove-bottom">
|
|
<!-- class="uk-margin-top"-->
|
|
<li>
|
|
<!-- <a class="clickable"-->
|
|
<!-- uk-toggle="target: #dynamic_content_id; animation:uk-animation-fade"><span-->
|
|
<!-- class="uk-icon"><svg width="20" height="20" viewBox="0 0 20 20"-->
|
|
<!-- xmlns="http://www.w3.org/2000/svg" icon="code" ratio="1"><polyline-->
|
|
<!-- fill="none" stroke="#000" stroke-width="1.01" points="13,4 19,10 13,16"></polyline><polyline-->
|
|
<!-- fill="none" stroke="#000" stroke-width="1.01"-->
|
|
<!-- points="7,4 1,10 7,16"></polyline></svg></span> Include in your site (HTML)</a>-->
|
|
<!-- hidden class="uk-margin-small-top"-->
|
|
<div id="dynamic_content_id">
|
|
<pre class="box-content uk-padding-remove-bottom uk-margin-remove-bottom"><code
|
|
id="clipboard">{{dynamic_content}}</code></pre>
|
|
<div class="uk-grid uk-margin-small-top">
|
|
<a
|
|
class="clipboard_btn uk-padding-remove-left uk-margin-small-left uk-text-right uk-width-1-1"
|
|
data-clipboard-target="#clipboard" title="Copy to clipboard">
|
|
<button class="uk-button uk-button-small uk-button-secondary uk-icon">
|
|
<svg width="20" height="20" viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg" icon="copy" ratio="1">
|
|
<rect fill="none" stroke="#000" x="3.5" y="2.5" width="12" height="16"></rect>
|
|
<polyline fill="none" stroke="#000" points="5 0.5 17.5 0.5 17.5 17"></polyline>
|
|
</svg>
|
|
<span class="uk-margin-small-left">COPY</span>
|
|
</button>
|
|
</a>
|
|
</div>
|
|
<div class="uk-text-small uk-margin-small-top">
|
|
For further information contact us at
|
|
<u><a [href]="'mailto:'+properties.helpdeskEmail" class="uk-link-text">{{properties.helpdeskEmail}}</a></u>
|
|
</div>
|
|
|
|
</div>
|
|
</li>
|
|
</ul>
|
|
</ng-template>
|
|
<ng-template #download_research_results_box
|
|
let-type="type" let-fileName_type="fileName_type" let-csvParams="csvParams">
|
|
<ul class="uk-list uk-margin-remove-bottom">
|
|
<!-- class="uk-margin-top"-->
|
|
<li>
|
|
<a class="clickable"
|
|
(click)="downloadHtmlFile(type, 'funder-'+fileName_type+'-report')">
|
|
<!-- target="_blank"-->
|
|
<!-- href="/project-report?projectId={{projectId}}&size={{fetch.searchUtils.totalResults}}&type={{type}}">-->
|
|
<!-- <span class="uk-icon">-->
|
|
<!-- <svg width="20" height="20" viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg" icon="code" ratio="1">-->
|
|
<!-- <polyline fill="none" stroke="#000" stroke-width="1.01" points="13,4 19,10 13,16"></polyline>-->
|
|
<!-- <polyline fill="none" stroke="#000" stroke-width="1.01" points="7,4 1,10 7,16"></polyline></svg>-->
|
|
<!-- </span>-->
|
|
<span class="uk-icon">
|
|
<svg width="20" height="20" viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg" icon="download" ratio="1">
|
|
<polyline fill="none" stroke="#000" points="14,10 9.5,14.5 5,10"></polyline>
|
|
<rect x="3" y="17" width="13" height="1"></rect>
|
|
<line fill="none" stroke="#000" x1="9.5" y1="13.91" x2="9.5" y2="3"></line>
|
|
</svg>
|
|
</span>
|
|
Download {{projectInfo.funding.funderShortName}} report (HTML)
|
|
</a>
|
|
</li>
|
|
<li class="uk-margin-small-top">
|
|
<a class="clickable" (click)="downloadCsvFile(downloadURLAPI+csvParams, 'funder-'+fileName_type+'-report')">
|
|
<span class="uk-icon">
|
|
<svg width="20" height="20" viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg" icon="download" ratio="1">
|
|
<polyline fill="none" stroke="#000" points="14,10 9.5,14.5 5,10"></polyline>
|
|
<rect x="3" y="17" width="13" height="1"></rect>
|
|
<line fill="none" stroke="#000" x1="9.5" y1="13.91" x2="9.5" y2="3"></line>
|
|
</svg>
|
|
</span>
|
|
Download {{projectInfo.funding.funderShortName}} report (CSV)
|
|
</a>
|
|
</li>
|
|
</ul>
|
|
</ng-template>
|
|
|
|
<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 id="project" class="uk-container uk-container-large uk-margin-medium-top project">
|
|
<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="projectInfo != null" class="uk-grid uk-margin-remove-left uk-margin-large-bottom">
|
|
<div class="uk-width-2-3@m uk-width-1-1@s uk-margin-bottom uk-padding uk-padding-remove-left uk-padding-remove-vertical">
|
|
<schema2jsonld *ngIf="projectInfo" [data]=projectInfo
|
|
[URL]="properties.baseLink+properties.searchLinkToProject+projectId"
|
|
type="project"></schema2jsonld>
|
|
<landing-header [properties]="properties" [title]="projectName"
|
|
[subTitle]="projectInfo.acronym ? projectInfo.title : ''"
|
|
[entityType]="'project'"
|
|
[startDate]="projectInfo.startDate"
|
|
[endDate]="projectInfo.endDate"
|
|
[status]="projectInfo.status">
|
|
</landing-header>
|
|
<!-- Labels -->
|
|
<div class="uk-margin-top uk-margin-bottom">
|
|
<span *ngIf="projectInfo.openAccessMandatePublications != undefined && projectInfo.openAccessMandatePublications && projectInfo.openAccessMandateDatasets != undefined && projectInfo.openAccessMandateDatasets"
|
|
class="uk-label custom-label label-open" title="Open Access mandate for Publications and Research Data">
|
|
<span class="uk-visible@m">Open Access mandate for Publications and Research Data</span>
|
|
<span class="uk-hidden@m">Open Access mandate for ...</span>
|
|
</span>{{" "}}
|
|
<span *ngIf="projectInfo.openAccessMandatePublications != undefined && projectInfo.openAccessMandatePublications && (projectInfo.openAccessMandateDatasets == undefined || !projectInfo.openAccessMandateDatasets)"
|
|
class="uk-label custom-label label-open" title="Open Access mandate for Publications">
|
|
Open Access mandate for Publications
|
|
</span>{{" "}}
|
|
<span *ngIf="projectInfo.openAccessMandateDatasets != undefined && projectInfo.openAccessMandateDatasets && (projectInfo.openAccessMandatePublications == undefined || !projectInfo.openAccessMandatePublications)"
|
|
class="uk-label custom-label label-open" title="Open Access mandate for Research Data">
|
|
Open Access mandate for Research Data
|
|
</span>{{" "}}
|
|
<span *ngIf="projectInfo.funding && projectInfo.funding.funderName" class="uk-label custom-label label-funder" title="Funder">
|
|
{{projectInfo.funding.funderName}}
|
|
</span>{{" "}}
|
|
<span *ngIf="projectInfo.specialClause39"
|
|
class="uk-label custom-label label-sc39" title="Special Clause 39">
|
|
Special Clause 39
|
|
</span>{{" "}}
|
|
</div>
|
|
<ul class="basic-info uk-list uk-margin-bottom left-border">
|
|
<li *ngIf="projectInfo.funding">
|
|
<span *ngIf="projectInfo.funding.funderName" class="uk-margin-right">
|
|
<span class="uk-text-muted">Funder: </span>
|
|
<span class="uk-text-bold">{{projectInfo.funding.funderName}}</span>
|
|
</span>
|
|
<span *ngIf="projectInfo.funding.code" class="uk-margin-right uk-display-inline-block">
|
|
<span class="uk-text-muted">Project code: </span>
|
|
{{projectInfo.funding.code}}
|
|
</span>
|
|
<span *ngIf="projectInfo.funding.callIdentifier" class="uk-display-inline-block">
|
|
<span class="uk-text-muted">Call for proposal: </span>
|
|
{{projectInfo.funding.callIdentifier}}
|
|
</span>
|
|
</li>
|
|
<li *ngIf="projectInfo.funding">
|
|
<span *ngIf="projectInfo.funding.fundingStream" class="uk-margin-right">
|
|
<span class="uk-text-muted">Funded under: </span>
|
|
{{projectInfo.funding.fundingStream}}
|
|
</span>
|
|
<span *ngIf="projectInfo.funding.budget" class="uk-margin-right uk-display-inline-block">
|
|
<span class="uk-text-muted">Overall Budget: </span>
|
|
{{projectInfo.funding.budget | number}}
|
|
<span *ngIf="projectInfo.funding.currency">{{projectInfo.funding.currency}}</span>
|
|
</span>
|
|
<span *ngIf="projectInfo.funding.contribution" class="uk-display-inline-block">
|
|
<span class="uk-text-muted">Funder Contribution: </span>
|
|
{{projectInfo.funding.contribution | number}}
|
|
<span *ngIf="projectInfo.funding.currency">{{projectInfo.funding.currency}}</span>
|
|
</span>
|
|
</li>
|
|
<li *ngIf="projectInfo.status" class="uk-margin-right">
|
|
<span>
|
|
<span class="uk-text-muted">Status: </span>
|
|
{{projectInfo.status}}
|
|
</span>
|
|
</li>
|
|
<li *ngIf="projectInfo.startDate || projectInfo.endDate" class="uk-width-2-5">
|
|
<progress *ngIf="projectInfo.startDate && projectInfo.endDate"
|
|
class="uk-progress portal-progress uk-margin-small-top uk-margin-remove-bottom"
|
|
[value]="(projectInfo.currentDate > projectInfo.startDate ? projectInfo.currentDate-projectInfo.startDate : 0)"
|
|
[max]="projectInfo.endDate-projectInfo.startDate">
|
|
</progress>
|
|
<div class="uk-grid">
|
|
<span *ngIf="projectInfo.startDate" class="uk-width-1-2">
|
|
<div class="uk-text-muted">Start Date</div>
|
|
<div>{{projectInfo.startDate | date: 'dd MMM yyyy'}}</div>
|
|
</span>
|
|
<span *ngIf="projectInfo.endDate" [class]="'uk-width-1-2 ' + (projectInfo.startDate ? 'uk-text-right' : '')">
|
|
<div class="uk-text-muted">End Date</div>
|
|
<div>{{projectInfo.endDate | date: 'dd MMM yyyy'}}</div>
|
|
</span>
|
|
</div>
|
|
</li>
|
|
<li *ngIf="projectInfo.urlInfo ">
|
|
<span class="uk-button-text">
|
|
<a target="_blank" href="{{projectInfo.url}}">
|
|
{{projectInfo.urlInfo}}
|
|
</a>
|
|
</span>
|
|
</li>
|
|
</ul>
|
|
<ul class="uk-list uk-margin-bottom">
|
|
<li *ngIf="(projectInfo.openAccessMandatePublications != undefined && !projectInfo.openAccessMandatePublications)
|
|
|| (projectInfo.openAccessMandateDatasets != undefined && !projectInfo.openAccessMandateDatasets)">
|
|
<div>Open Access mandate</div>
|
|
<div>
|
|
<span *ngIf="projectInfo.openAccessMandatePublications != undefined && !projectInfo.openAccessMandatePublications"
|
|
class="uk-margin-right">
|
|
<span class="uk-text-muted">Publications: </span>
|
|
<!-- <span *ngIf="projectInfo.openAccessMandatePublications">Yes</span>-->
|
|
<span>No</span>
|
|
</span>
|
|
<span *ngIf="projectInfo.openAccessMandateDatasets != undefined && !projectInfo.openAccessMandateDatasets">
|
|
<span class="uk-text-muted">Research Data: </span>
|
|
<!-- <span *ngIf="projectInfo.openAccessMandateDatasets">Yes</span>-->
|
|
<span>No</span>
|
|
</span>
|
|
</div>
|
|
</li>
|
|
</ul>
|
|
</div>
|
|
|
|
<div class="uk-width-1-3@m uk-width-1-1@s uk-padding-remove">
|
|
<ul class="user-actions uk-list uk-card uk-card-default uk-padding">
|
|
<!-- NEW-->
|
|
<li><addThis></addThis></li>
|
|
<li *ngIf="isRouteAvailable('participate/direct-claim')">
|
|
<a class="uk-link-text uk-text-bold uk-text-uppercase" (click)="openLinkProjectModal()">
|
|
<span class="uk-icon-button portal-button uk-icon">
|
|
<svg width="20" height="20" viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg" data-svg="link"><path
|
|
fill="none" stroke="#000" stroke-width="1.1"
|
|
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
|
|
fill="none" stroke="#000" stroke-width="1.1"
|
|
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
|
|
fill="none" stroke="#000" stroke-width="1.1"
|
|
d="M7.925,11.875 L11.925,7.975"></path>
|
|
</svg>
|
|
</span>
|
|
<span class="uk-margin-small-left">Link this project to...</span>
|
|
</a>
|
|
<modal-alert #linkProjectModal
|
|
[classTitle]="'landing-modal-header'" [classBody]="'uk-padding-remove landing-modal'">
|
|
<!-- <div class="uk-modal-title landing-modal-header">-->
|
|
<!-- <button class="uk-modal-close-default uk-float-right" (click)='linkProjectModal.cancel()' uk-close></button>-->
|
|
<!-- <h4 class="modal-title" id="myModalLabel">{{linkProjectModal.alertTitle}}</h4>-->
|
|
<!-- </div>-->
|
|
<div class="uk-padding uk-padding-remove-vertical uk-margin-medium uk-text-center ">
|
|
<div>
|
|
<a [queryParams]="routerHelper.createQueryParams(['id','type','linkTo'],[projectId,
|
|
'project','result'])"
|
|
routerLinkActive="router-link-active" routerLink="/participate/direct-claim">
|
|
<button class="uk-icon-button portal-button">
|
|
<span class="uk-icon">
|
|
<svg height="20" icon="copy" ratio="1" viewBox="0 0 20 20" width="20"
|
|
xmlns="http://www.w3.org/2000/svg"><rect fill="none" height="16" stroke="#000"
|
|
width="12" x="3.5" y="2.5"></rect><polyline
|
|
fill="none" points="5 0.5 17.5 0.5 17.5 17" stroke="#000"></polyline></svg></span>
|
|
</button>
|
|
<div class="uk-margin-small-top">Research outcomes</div>
|
|
</a>
|
|
</div>
|
|
</div>
|
|
</modal-alert>
|
|
</li>
|
|
<li *ngIf="isRouteAvailable('participate/deposit/learn-how')">
|
|
<a class="uk-link-text uk-text-bold uk-text-uppercase"
|
|
routerLinkActive="router-link-active" routerLink="/participate/deposit/learn-how">
|
|
<span class="uk-icon uk-icon-button uk-button-secondary">
|
|
<svg width="20" height="20" viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg" ratio="1">
|
|
<polyline fill="none" stroke="#000" points="5 8 9.5 3.5 14 8 "></polyline>
|
|
<rect x="3" y="17" width="13" height="1"></rect>
|
|
<line fill="none" stroke="#000" x1="9.5" y1="15" x2="9.5" y2="4"></line>
|
|
</svg>
|
|
</span>
|
|
<span class="uk-margin-small-left"><u>Deposit your research</u></span>
|
|
</a>
|
|
</li>
|
|
<li>
|
|
<a class="uk-link-text uk-text-bold uk-text-uppercase" (click)="openShareResultsModal()">
|
|
<span class="uk-icon uk-icon-button uk-button-primary">
|
|
<svg width="20" height="20" viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg" icon="code" ratio="1">
|
|
<polyline fill="none" stroke="#000" stroke-width="1.01" points="13,4 19,10 13,16"></polyline>
|
|
<polyline fill="none" stroke="#000" stroke-width="1.01" points="7,4 1,10 7,16"></polyline>
|
|
</svg>
|
|
</span>
|
|
<span class="uk-margin-small-left">Share results</span>
|
|
</a>
|
|
<modal-alert #shareResultsModal
|
|
[classTitle]="'landing-modal-header'" [classBody]="'uk-padding-remove landing-modal'">
|
|
<div class="uk-padding-small uk-margin-small-left uk-margin-small-right">
|
|
<div class="uk-padding-small uk-padding-remove-vertical">
|
|
<mat-form-field class="matSelectionFormField uk-width-1-1">
|
|
<mat-label>Select content type to share</mat-label>
|
|
<mat-select #matSelect modal-select [matSelect]="matSelect"
|
|
[(value)]="share_research_results_type"
|
|
[disableOptionCentering]="true"
|
|
panelClass="entitiesSelectionPanel"
|
|
class="matSelection">
|
|
<!-- <mat-option value="">Select content type</mat-option>-->
|
|
<mat-option value="result">All research outcomes</mat-option>
|
|
<mat-option value="publication">Publications</mat-option>
|
|
<mat-option value="dataset">Research data</mat-option>
|
|
<mat-option value="software">Software</mat-option>
|
|
<mat-option value="other">Other research products</mat-option>
|
|
</mat-select>
|
|
</mat-form-field>
|
|
<div *ngIf="share_research_results_type" class="uk-animation-slide-top-small">
|
|
<ng-container *ngTemplateOutlet="share_research_results_box;
|
|
context: { dynamic_content: getDynamicContent(share_research_results_type) }">
|
|
</ng-container>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</modal-alert>
|
|
</li>
|
|
<li>
|
|
<a class="uk-link-text uk-text-bold uk-text-uppercase" (click)="openDownloadReportModal()">
|
|
<span class="uk-icon uk-icon-button uk-button-primary">
|
|
<svg width="20" height="20" viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg" icon="download" ratio="1">
|
|
<polyline fill="none" stroke="#000" points="14,10 9.5,14.5 5,10"></polyline>
|
|
<rect x="3" y="17" width="13" height="1"></rect>
|
|
<line fill="none" stroke="#000" x1="9.5" y1="13.91" x2="9.5" y2="3"></line>
|
|
</svg>
|
|
</span>
|
|
<span class="uk-margin-small-left">Download report</span>
|
|
</a>
|
|
<modal-alert #downloadReportModal
|
|
[classTitle]="'landing-modal-header'" [classBody]="'uk-padding-remove landing-modal'">
|
|
<div class="uk-padding-small uk-margin-small-left uk-margin-small-right">
|
|
<div class="uk-padding-small uk-padding-remove-vertical">
|
|
<!-- *ngIf="projectInfo.funding &&-->
|
|
<!-- (fetchPublications.searchUtils.totalResults > 0 ||-->
|
|
<!-- fetchDatasets.searchUtils.totalResults > 0 ||-->
|
|
<!-- fetchSoftware.searchUtils.totalResults > 0 ||-->
|
|
<!-- fetchOrps.searchUtils.totalResults > 0)"-->
|
|
<mat-form-field
|
|
class="matSelectionFormField uk-width-1-1">
|
|
<mat-label>Select content type report to download</mat-label>
|
|
<mat-select #matSelect modal-select [matSelect]="matSelect"
|
|
[(value)]="download_research_results_type"
|
|
[disableOptionCentering]="true"
|
|
panelClass="entitiesSelectionPanel"
|
|
class="matSelection">
|
|
<!-- <mat-option value="">Select content type</mat-option>-->
|
|
<mat-option value="results"
|
|
[disabled]="!projectInfo.funding ||
|
|
(fetchPublications.searchUtils.totalResults == 0 &&
|
|
fetchDatasets.searchUtils.totalResults == 0 &&
|
|
fetchSoftware.searchUtils.totalResults == 0 &&
|
|
fetchOrps.searchUtils.totalResults == 0)"
|
|
[attr.uk-tooltip]="(fetchPublications.searchUtils.totalResults == 0 || fetchPublications.searchUtils.status != errorCodes.DONE) ? 'cls: uk-active' : 'cls: uk-invisible'"
|
|
title="No report available">
|
|
All research outcomes
|
|
</mat-option>
|
|
<mat-option value="publications"
|
|
[disabled]="!projectInfo.funding || fetchPublications.searchUtils.totalResults == 0 || fetchPublications.searchUtils.status != errorCodes.DONE"
|
|
[attr.uk-tooltip]="(fetchPublications.searchUtils.totalResults == 0 || fetchPublications.searchUtils.status != errorCodes.DONE) ? 'cls: uk-active' : 'cls: uk-invisible'"
|
|
title="No report available">
|
|
Publications
|
|
</mat-option>
|
|
<mat-option value="datasets"
|
|
[disabled]="!projectInfo.funding || fetchDatasets.searchUtils.totalResults == 0 || fetchDatasets.searchUtils.status != errorCodes.DONE"
|
|
[attr.uk-tooltip]="(fetchDatasets.searchUtils.totalResults == 0 || fetchDatasets.searchUtils.status != errorCodes.DONE) ? 'cls: uk-active' : 'cls: uk-invisible'"
|
|
title="No report available">
|
|
Research data
|
|
</mat-option>
|
|
<mat-option value="software"
|
|
[disabled]="!projectInfo.funding || fetchSoftware.searchUtils.totalResults == 0 || fetchSoftware.searchUtils.status != errorCodes.DONE"
|
|
[attr.uk-tooltip]="(fetchSoftware.searchUtils.totalResults == 0 || fetchSoftware.searchUtils.status != errorCodes.DONE) ? 'cls: uk-active' : 'cls: uk-invisible'"
|
|
title="No report available">
|
|
Software
|
|
</mat-option>
|
|
<mat-option value="other"
|
|
[disabled]="!projectInfo.funding || fetchOrps.searchUtils.totalResults == 0 || fetchOrps.searchUtils.status != errorCodes.DONE"
|
|
[attr.uk-tooltip]="(fetchOrps.searchUtils.totalResults == 0 || fetchOrps.searchUtils.status != errorCodes.DONE) ? 'cls: uk-active' : 'cls: uk-invisible'"
|
|
title="No report available">
|
|
Other research products
|
|
</mat-option>
|
|
</mat-select>
|
|
</mat-form-field>
|
|
<div *ngIf="download_research_results_type" class="uk-animation-slide-top-small">
|
|
<ng-container *ngTemplateOutlet="download_research_results_box;
|
|
context: { type: download_research_results_type,
|
|
fileName_type: getFileNameType(download_research_results_type),
|
|
csvParams: getCsvParams(download_research_results_type) }">
|
|
</ng-container>
|
|
</div>
|
|
|
|
<div *ngIf="!projectInfo.funding ||
|
|
(fetchPublications.searchUtils.totalResults == 0 &&
|
|
fetchDatasets.searchUtils.totalResults == 0 &&
|
|
fetchSoftware.searchUtils.totalResults == 0 &&
|
|
fetchOrps.searchUtils.totalResults == 0)"
|
|
class="uk-text-muted">
|
|
No reports available
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</modal-alert>
|
|
</li>
|
|
<!-- Metrics -->
|
|
<li *ngIf="hasMetrics" class="uk-margin-medium-top">
|
|
<div class="uk-text-center uk-flex uk-flex-middle uk-flex-center">
|
|
<div>
|
|
<metrics [pageViews]="pageViews"
|
|
[id]="projectId" [entityType]="'projects'" [entity]="'project'"
|
|
[viewsFrameUrl]="viewsFrameUrl" [downloadsFrameUrl]="downloadsFrameUrl"
|
|
(metricsResults)="metricsResults($event)" [properties]=properties>
|
|
</metrics>
|
|
</div>
|
|
</div>
|
|
</li>
|
|
|
|
|
|
</ul>
|
|
<!-- <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>
|
|
|
|
<div *ngIf="projectInfo != null">
|
|
<!-- *ngIf="numberOfTabs > 0; else loadingBlock"-->
|
|
<div class="main-tabs-div">
|
|
<ng-template #summary_tab>
|
|
<!-- <my-tab [tabTitle]="'Project Summary'" [tabId]="'summary'" [active]="true">-->
|
|
<div class="uk-grid uk-margin-remove">
|
|
<div *ngIf="hasPrimaryInfo" class="uk-width-expand uk-padding uk-inline">
|
|
<!-- Description -->
|
|
<div *ngIf="projectInfo.description" class="uk-margin-medium-bottom">
|
|
<div class="uk-text-muted">Description</div>
|
|
<div class="uk-text-justify uk-height-max-medium uk-overflow-auto">
|
|
<span>{{projectInfo.description.substring(0, showNumDescription)}}</span>
|
|
<span *ngIf="showNumDescription == thresholdDescription &&
|
|
projectInfo.description.length > thresholdDescription">...</span>
|
|
</div>
|
|
<div *ngIf="showNumDescription == thresholdDescription &&
|
|
projectInfo.description.length > thresholdDescription" class="uk-text-right">
|
|
<a (click)="showNumDescription = projectInfo.description.length;">
|
|
Read more
|
|
</a>
|
|
</div>
|
|
<div *ngIf="projectInfo.description && showNumDescription > thresholdDescription"
|
|
class="uk-text-right">
|
|
<a (click)="showNumDescription = thresholdDescription;">
|
|
Read less
|
|
</a>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div *ngIf="hasSecondaryInfo"
|
|
[class]="'uk-padding uk-inline ' + (hasPrimaryInfo?'uk-width-1-3@m right-column': 'uk-width-expand')">
|
|
<!-- Organizations -->
|
|
<div class="uk-text-muted">Organizations</div>
|
|
<div class="uk-margin-medium-bottom">
|
|
<div class="uk-height-max-medium uk-overflow-auto">
|
|
<span *ngFor="let organization of projectInfo.organizations.slice(0, showNumOrganizations) let i=index"
|
|
[attr.uk-tooltip]="organization.acronym && organization.name ? 'pos:right; delay:10' : 'cls: uk-invisible'"
|
|
[title]="organization.name">
|
|
<a *ngIf="organization.id"
|
|
[queryParams]="{organizationId: organization.id}" routerLinkActive="router-link-active"
|
|
routerLink="/search/organization">
|
|
<u>{{(organization.acronym) ? organization.acronym : ''}}</u>
|
|
<u>{{(!organization.acronym && organization.name) ? organization.name : ''}}</u>
|
|
</a>
|
|
<span *ngIf="!organization.id">
|
|
<span *ngIf="organization.acronym">{{organization.acronym}}</span>
|
|
<span *ngIf="!organization.acronym && organization.name">{{organization.name}}</span>
|
|
</span>
|
|
<span *ngIf="(i < projectInfo.organizations.length-1)">, </span>
|
|
</span>
|
|
<span *ngIf="showNumOrganizations == thresholdOrganizations && projectInfo.organizations.length > thresholdOrganizations"> ... </span>
|
|
</div>
|
|
<div *ngIf="showNumOrganizations == thresholdOrganizations && projectInfo.organizations.length > thresholdOrganizations"
|
|
class="uk-width-1-1 uk-text-right uk-margin-small-top">
|
|
<a (click)="showNumOrganizations = projectInfo.organizations.length;">
|
|
View all {{projectInfo.organizations.length | number}} organizations
|
|
</a>
|
|
</div>
|
|
<div *ngIf="showNumOrganizations > thresholdOrganizations"
|
|
class="uk-width-1-1 uk-text-right uk-margin-small-top">
|
|
<a (click)="showNumOrganizations = thresholdOrganizations;">View less organizations</a>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div *ngIf="!hasPrimaryInfo && !hasSecondaryInfo"
|
|
class="uk-width-expand uk-padding">
|
|
<!-- <div *ngIf="!tabsAreInitialized" class="uk-animation-fade uk-margin-top uk-width-1-1" role="alert">-->
|
|
<!-- <span class="loading-gif uk-align-center" ></span>-->
|
|
<!-- </div>-->
|
|
<div class="uk-animation-fade uk-alert uk-alert-primary" role="alert">
|
|
No summary information available
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<!-- </my-tab>-->
|
|
</ng-template>
|
|
<ng-template #publications_tab>
|
|
<!-- <my-tab *ngIf="fetchPublications.searchUtils.totalResults > 0"-->
|
|
<!-- [tabTitle]="'Publications'" [tabNumber]="fetchPublications.searchUtils.totalResults"-->
|
|
<!-- [tabId]="'publications'">-->
|
|
<div class="uk-grid uk-margin-remove">
|
|
<div class="uk-width-expand uk-padding">
|
|
<search-tab [fetch]="fetchPublications" resultType="publication"
|
|
[params]="getParamsForSearchLink('publications')"
|
|
[searchLinkToAdvancedPage]="properties.searchLinkToAdvancedResults"
|
|
[properties]="properties">
|
|
</search-tab>
|
|
</div>
|
|
<!-- <div class="uk-width-1-3@m uk-padding right-column">-->
|
|
<!-- <div>test publications</div>-->
|
|
<!-- </div>-->
|
|
</div>
|
|
<!-- </my-tab>-->
|
|
</ng-template>
|
|
<ng-template #datasets_tab>
|
|
<!-- <my-tab *ngIf="fetchDatasets.searchUtils.totalResults > 0"-->
|
|
<!-- [tabTitle]="'Research Data'" [tabNumber]="fetchDatasets.searchUtils.totalResults"-->
|
|
<!-- [tabId]="'datasets'">-->
|
|
<div class="uk-grid uk-margin-remove">
|
|
<div class="uk-width-expand uk-padding">
|
|
<search-tab [fetch]="fetchDatasets" resultType="dataset"
|
|
[params]="getParamsForSearchLink('datasets')"
|
|
[searchLinkToAdvancedPage]="properties.searchLinkToAdvancedResults"
|
|
[properties]="properties">
|
|
</search-tab>
|
|
</div>
|
|
<!-- <div class="uk-width-1-3@m uk-padding right-column">-->
|
|
<!-- <div>test research data</div>-->
|
|
<!-- </div>-->
|
|
</div>
|
|
<!-- </my-tab>-->
|
|
</ng-template>
|
|
<ng-template #software_tab>
|
|
<div class="uk-grid uk-margin-remove">
|
|
<div class="uk-width-expand uk-padding">
|
|
<search-tab [fetch]="fetchSoftware" resultType="software"
|
|
[params]="getParamsForSearchLink('software')"
|
|
[searchLinkToAdvancedPage]="properties.searchLinkToAdvancedResults"
|
|
[properties]="properties">
|
|
</search-tab>
|
|
</div>
|
|
<!-- <div class="uk-width-1-3@m uk-padding right-column">-->
|
|
<!-- <div>test software</div>-->
|
|
<!-- </div>-->
|
|
</div>
|
|
</ng-template>
|
|
<ng-template #other_tab>
|
|
<!-- <my-tab *ngIf="fetchOrps.searchUtils.totalResults > 0"-->
|
|
<!-- [tabTitle]="'Other Research'" [tabNumber]="fetchOrps.searchUtils.totalResults"-->
|
|
<!-- [tabId]="'other'">-->
|
|
<div class="uk-grid uk-margin-remove">
|
|
<div class="uk-width-expand uk-padding">
|
|
<search-tab [fetch]="fetchOrps" resultType="other"
|
|
[params]="getParamsForSearchLink('other')"
|
|
[searchLinkToAdvancedPage]="properties.searchLinkToAdvancedResults"
|
|
[properties]="properties">
|
|
</search-tab>
|
|
</div>
|
|
<!-- <div class="uk-width-1-3@m uk-padding right-column">-->
|
|
<!-- <div>test other research products</div>-->
|
|
<!-- </div>-->
|
|
</div>
|
|
<!-- </my-tab>-->
|
|
</ng-template>
|
|
<ng-template #statistics_tab>
|
|
<!-- <my-tab *ngIf="(fetchPublications.searchUtils.totalResults > 0 || fetchDatasets.searchUtils.totalResults > 0-->
|
|
<!-- || fetchSoftware.searchUtils.totalResults > 0 || fetchOrps.searchUtils.totalResults > 0)"-->
|
|
<!-- [tabTitle]="'Statistics'" [statistics]="true" [tabId]="'statistics'">-->
|
|
<div class="">
|
|
<div class="uk-width-expand uk-padding">
|
|
<errorMessages [status]="[fetchPublications.searchUtils.status, fetchDatasets.searchUtils.status,
|
|
fetchSoftware.searchUtils.status, fetchOrps.searchUtils.status]"
|
|
[type]="'statistics'" tab_error_class=true></errorMessages>
|
|
|
|
<div
|
|
*ngIf="statsClicked &&
|
|
(fetchPublications.searchUtils.status == errorCodes.DONE || fetchDatasets.searchUtils.status == errorCodes.DONE
|
|
|| fetchSoftware.searchUtils.status == errorCodes.DONE || fetchOrps.searchUtils.status == errorCodes.DONE)"
|
|
class="uk-grid uk-child-width-1-1 uk-child-width-1-2@m">
|
|
<div class="uk-padding uk-padding-remove-top">
|
|
<div *ngIf="!properties.useNewStatistisTool" class="uk-text-center uk-text-large">Produced research
|
|
outcomes per year</div>
|
|
<i-frame [url]=chartScientificResultsUrl></i-frame>
|
|
</div>
|
|
<div class="uk-padding uk-padding-remove-top">
|
|
<div *ngIf="!properties.useNewStatistisTool" class="uk-text-center uk-text-large">Access mode of research
|
|
outcomes</div>
|
|
<i-frame [url]=chartAccessModeUrl></i-frame>
|
|
</div>
|
|
<div class="uk-padding uk-padding-remove-top">
|
|
<div *ngIf="!properties.useNewStatistisTool" class="uk-text-center uk-text-large">Research outcomes per datasource</div>
|
|
<i-frame [url]=chartDatasourcesUrl></i-frame>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<!-- </my-tab>-->
|
|
</ng-template>
|
|
|
|
<!-- [class]="numberOfTabs > 2 ? 'uk-visible@m' : ''"-->
|
|
<my-tabs (selectedActiveTab)="onSelectActiveTab($event)">
|
|
<!-- *ngIf="hasPrimaryInfo || hasSecondaryInfo"-->
|
|
<!-- [class]="(firstTab === 'summary')?'uk-active':''">-->
|
|
<my-tab
|
|
[tabTitle]="'Project Summary'" [tabId]="'summary'"
|
|
class="uk-active">
|
|
<ng-container *ngTemplateOutlet="summary_tab;"></ng-container>
|
|
</my-tab>
|
|
<!-- *ngIf="fetchPublications.searchUtils.totalResults > 0"-->
|
|
<!-- [class]="(firstTab === 'publications')?'uk-active':''"-->
|
|
<my-tab
|
|
[tabTitle]="'Publications'" [tabNumber]="fetchPublications.searchUtils.totalResults"
|
|
[tabId]="'publications'">
|
|
<ng-container *ngTemplateOutlet="publications_tab;"></ng-container>
|
|
</my-tab>
|
|
<!-- *ngIf="fetchDatasets.searchUtils.totalResults > 0"-->
|
|
<!-- [class]="(firstTab === 'datasets')?'uk-active':''"-->
|
|
<my-tab
|
|
[tabTitle]="'Research Data'" [tabNumber]="fetchDatasets.searchUtils.totalResults"
|
|
[tabId]="'datasets'" >
|
|
<ng-container *ngTemplateOutlet="datasets_tab;"></ng-container>
|
|
</my-tab>
|
|
<!-- *ngIf="fetchSoftware.searchUtils.totalResults > 0"-->
|
|
<!-- [class]="(firstTab === 'software')?'uk-active':''"-->
|
|
<my-tab
|
|
[tabTitle]="'Software'" [tabNumber]="fetchSoftware.searchUtils.totalResults"
|
|
[tabId]="'software'" >
|
|
<ng-container *ngTemplateOutlet="software_tab;"></ng-container>
|
|
</my-tab>
|
|
<!-- *ngIf="fetchOrps.searchUtils.totalResults > 0"-->
|
|
<!-- [class]="(firstTab === 'other')?'uk-active':''"-->
|
|
<my-tab
|
|
[tabTitle]="'Other Research'" [tabNumber]="fetchOrps.searchUtils.totalResults"
|
|
[tabId]="'other'" >
|
|
<ng-container *ngTemplateOutlet="other_tab;"></ng-container>
|
|
</my-tab>
|
|
<!-- [class]="(firstTab === 'statistics')?'uk-active':''"-->
|
|
<my-tab *ngIf="(fetchPublications.searchUtils.totalResults > 0 || fetchDatasets.searchUtils.totalResults > 0
|
|
|| fetchSoftware.searchUtils.totalResults > 0 || fetchOrps.searchUtils.totalResults > 0)"
|
|
[tabTitle]="'Statistics'" [statistics]="true" [tabId]="'statistics'"
|
|
>
|
|
<ng-container *ngTemplateOutlet="statistics_tab;"></ng-container>
|
|
</my-tab>
|
|
</my-tabs>
|
|
|
|
<!-- *ngIf="numberOfTabs > 2"-->
|
|
<my-small-tabs (selectedActiveTab)="onSelectActiveTab($event)">
|
|
<!-- *ngIf="hasPrimaryInfo || hasSecondaryInfo"-->
|
|
<!-- [class]="(firstTab === 'summary')?'uk-active':''"-->
|
|
<my-tab
|
|
[tabTitle]="'Project Summary'" [tabId]="'summary'"
|
|
class="uk-active">
|
|
<ng-container *ngTemplateOutlet="summary_tab;"></ng-container>
|
|
</my-tab>
|
|
<!-- *ngIf="fetchPublications.searchUtils.totalResults > 0"-->
|
|
<!-- [class]="(firstTab === 'publications')?'uk-active':''"-->
|
|
<my-tab
|
|
[tabTitle]="'Publications'" [tabNumber]="fetchPublications.searchUtils.totalResults"
|
|
[tabId]="'publications'">
|
|
<ng-container *ngTemplateOutlet="publications_tab;"></ng-container>
|
|
</my-tab>
|
|
<!-- *ngIf="fetchDatasets.searchUtils.totalResults > 0"-->
|
|
<!-- [class]="(firstTab === 'datasets')?'uk-active':''"-->
|
|
<my-tab
|
|
[tabTitle]="'Research Data'" [tabNumber]="fetchDatasets.searchUtils.totalResults"
|
|
[tabId]="'datasets'" >
|
|
<ng-container *ngTemplateOutlet="datasets_tab;"></ng-container>
|
|
</my-tab>
|
|
<!-- *ngIf="fetchSoftware.searchUtils.totalResults > 0"-->
|
|
<!-- [class]="(firstTab === 'software')?'uk-active':''"-->
|
|
<my-tab
|
|
[tabTitle]="'Software'" [tabNumber]="fetchSoftware.searchUtils.totalResults"
|
|
[tabId]="'software'" >
|
|
<ng-container *ngTemplateOutlet="software_tab;"></ng-container>
|
|
</my-tab>
|
|
<!-- *ngIf="fetchOrps.searchUtils.totalResults > 0"-->
|
|
<!-- [class]="(firstTab === 'other')?'uk-active':''"-->
|
|
<my-tab
|
|
[tabTitle]="'Other Research'" [tabNumber]="fetchOrps.searchUtils.totalResults"
|
|
[tabId]="'other'" >
|
|
<ng-container *ngTemplateOutlet="other_tab;"></ng-container>
|
|
</my-tab>
|
|
<!-- [class]="(firstTab === 'statistics')?'uk-active':''"-->
|
|
<my-tab *ngIf="(fetchPublications.searchUtils.totalResults > 0 || fetchDatasets.searchUtils.totalResults > 0
|
|
|| fetchSoftware.searchUtils.totalResults > 0 || fetchOrps.searchUtils.totalResults > 0)"
|
|
[tabTitle]="'Statistics'" [statistics]="true" [tabId]="'statistics'"
|
|
>
|
|
<ng-container *ngTemplateOutlet="statistics_tab;"></ng-container>
|
|
</my-tab>
|
|
</my-small-tabs>
|
|
</div>
|
|
<!-- <ng-template #loadingBlock>-->
|
|
<!-- <div *ngIf="!tabsAreInitialized" class="uk-animation-fade uk-margin-top uk-width-1-1" role="alert">-->
|
|
<!-- <span class="loading-gif uk-align-center" ></span>-->
|
|
<!-- </div>-->
|
|
<!-- </ng-template>-->
|
|
|
|
<div class="uk-margin-small-top uk-flex">
|
|
<!-- Last Index Info-->
|
|
<div class="uk-width-2-3@m uk-width-1-2">
|
|
<img src="assets/common-assets/graph.svg" style="opacity: 0.4">
|
|
<span class="uk-margin-small-left uk-text-baseline uk-text-muted">Powered by OpenAIRE Open Research Graph</span>
|
|
<span *ngIf="indexUpdateDate" class="uk-text-baseline uk-text-muted">
|
|
. Last update of records in OpenAIRE: {{indexUpdateDate | date: 'MMM dd, yyyy'}}
|
|
</span>
|
|
</div>
|
|
<!--Feedback-->
|
|
<div class="uk-width-expand uk-text-right">
|
|
<span class="uk-text-muted">Any information missing or wrong?</span>
|
|
<a (click)="showFeedback = true; scroll()" class="portal-link space">Report an Issue</a>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<helper *ngIf="pageContents && pageContents['bottom'] && pageContents['bottom'].length > 0"
|
|
[texts]="pageContents['bottom']"></helper>
|
|
</div>
|
|
|
|
<!-- Statistics -->
|
|
<modal-alert *ngIf="projectInfo &&
|
|
(fetchPublications.searchUtils.totalResults > 0 || fetchDatasets.searchUtils.totalResults > 0
|
|
|| fetchSoftware.searchUtils.totalResults > 0 || fetchOrps.searchUtils.totalResults > 0)"
|
|
classBody="uk-width-xxlarge uk-padding-remove-right" #statisticsModal>
|
|
<landing-header [properties]="properties" [title]="projectName"
|
|
[subTitle]="projectInfo.acronym ? projectInfo.title : ''"
|
|
[entityType]="'project'"
|
|
[startDate]="projectInfo.startDate"
|
|
[endDate]="projectInfo.endDate"
|
|
[status]="projectInfo.status">
|
|
</landing-header>
|
|
<div class="uk-margin-medium-top uk-margin-medium-right">
|
|
<errorMessages [status]="[fetchPublications.searchUtils.status, fetchDatasets.searchUtils.status,
|
|
fetchSoftware.searchUtils.status, fetchOrps.searchUtils.status]"
|
|
[type]="'statistics'" tab_error_class=true></errorMessages>
|
|
|
|
<div
|
|
*ngIf="statsClicked &&
|
|
(fetchPublications.searchUtils.status == errorCodes.DONE || fetchDatasets.searchUtils.status == errorCodes.DONE
|
|
|| fetchSoftware.searchUtils.status == errorCodes.DONE || fetchOrps.searchUtils.status == errorCodes.DONE)">
|
|
<div class="uk-padding uk-padding-remove-top">
|
|
<div *ngIf="!properties.useNewStatistisTool" class="uk-text-center uk-text-large">Produced research
|
|
outcomes per year</div>
|
|
<i-frame [url]=chartScientificResultsUrl></i-frame>
|
|
</div>
|
|
<div class="uk-padding uk-padding-remove-top">
|
|
<div *ngIf="!properties.useNewStatistisTool" class="uk-text-center uk-text-large">Access mode of research
|
|
outcomes</div>
|
|
<i-frame [url]=chartAccessModeUrl></i-frame>
|
|
</div>
|
|
<div class="uk-padding uk-padding-remove-top">
|
|
<div *ngIf="!properties.useNewStatistisTool" class="uk-text-center uk-text-large">Research outcomes per datasource</div>
|
|
<i-frame [url]=chartDatasourcesUrl></i-frame>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</modal-alert>
|
|
</div>
|
|
</div>
|
|
<feedback *ngIf="projectInfo" [projectInfo]="projectInfo"
|
|
[properties]="properties" [entityType]="'project'" [title]="projectName" [fields]="feedbackFields"
|
|
[showForm]="showFeedback" (show)="showFeedback = $event"></feedback>
|
|
</div>
|
|
|
|
<modal-loading></modal-loading>
|
|
<modal-alert #AlertModalCsvError></modal-alert> |