[Library | Trunk]: Add again provider link on download from

git-svn-id: https://svn.driver.research-infrastructures.eu/driver/dnet40/modules/uoa-services-library/trunk/ng-openaire-library/src/app@59169 d315682c-612b-4755-9ff5-7f18f6832af3
This commit is contained in:
k.triantafyllou 2020-07-27 10:48:05 +00:00
parent af11a8e948
commit bbc8ec2a34
4 changed files with 97 additions and 88 deletions

View File

@ -1,6 +1,5 @@
import {Component, Input} from '@angular/core';
import {HelperFunctions} from "../../utils/HelperFunctions.class";
import {EnvProperties} from "../../utils/properties/env-properties";
import {HostedByCollectedFrom} from "../../utils/result-preview/result-preview";
import {properties} from "../../../../environments/environment";
@ -8,8 +7,7 @@ import {properties} from "../../../../environments/environment";
selector: 'availableOn',
template: `
<div class="download-from uk-height-max-large uk-overflow-auto uk-margin-small-bottom">
<a *ngFor="let available of availableOn.slice(0, showNum) let i=index"
[href]="available.downloadUrl[0]" target="_blank"
<div *ngFor="let available of availableOn.slice(0, showNum) let i=index"
class="uk-flex uk-flex-top"
[title]="available.bestAccessMode ? available.bestAccessMode : 'Not available'">
<span class="uk-margin-small-right">
@ -23,11 +21,11 @@ import {properties} from "../../../../environments/environment";
[{{(i + 1) | number}}]
</a>
</span>
<span *ngIf="available.downloadUrl.length === 1"
<a *ngIf="available.downloadUrl.length === 1" [href]="available.downloadUrl[0]" target="_blank"
class="title">
{{available.downloadName}}
<span class="custom-external custom-icon space"></span>
</span>
</a>
<span *ngIf="!available.downloadUrl || available.downloadUrl.length === 0" class="title">
{{available.downloadName}}
</span>
@ -38,12 +36,12 @@ import {properties} from "../../../../environments/environment";
</div>
<div *ngIf="available.collectedName">
<span>Provider: </span>
<span>
<a *ngIf="available.collectedId" [routerLink]="dataProviderUrl" [queryParams]="{datasourceId: available.collectedId}">
{{available.collectedName}}
</span>
</a>
</div>
</div>
</a>
</div>
</div>
<div *ngIf="showNum > threshold" class="uk-margin-bottom">
<a (click)="showNum = threshold;" class="uk-flex uk-flex-middle uk-flex-center">

View File

@ -34,12 +34,9 @@ declare var UIkit: any;
</mat-form-field>
<div *ngIf="selectedStyle">
<div id="citation" class="box-content uk-margin-small-top uk-overflow-auto uk-padding-small" [innerHTML]=citationText></div>
<button class="clipboard_btn uk-button uk-button-small copy uk-margin-small-top uk-icon uk-float-right"
<button class="clipboard_btn uk-button uk-button-primary uk-button-small copy uk-margin-small-top uk-icon uk-float-right"
data-clipboard-target="#citation" title="Copy to clipboard">
<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="custom-icon custom-copy-white"></span>
<span class="uk-margin-small-left">COPY</span>
</button>
</div>

View File

@ -29,16 +29,15 @@ import {properties} from "../../../../environments/environment";
<b class="uk-margin-top">{{author.fullName}}</b>
<div>
<div class="uk-text-muted uk-margin-small-bottom uk-margin-small-top">ORCID</div>
<div uk-height-match="target: .target">
<input #element class="uk-padding-small uk-padding-remove-vertical uk-disabled target" name="code" [value]="author.orcid">
<button [class]="'uk-button target uk-button-small uk-icon copy orcid_clipboard_btn_auhtor_'+i"
(click)="copyToClipboard(element)" title="Copy to clipboard">
<svg width="20" height="20" viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg" data-svg="copy">
<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>
</button>
<a class="uk-button custom-icon-button target uk-button-icon uk-margin-small-left"
<div>
<div class="orcid uk-display-inline-block">
<input #element class="uk-padding-small uk-padding-remove-vertical uk-disabled" style="min-height: 38px" name="code" [value]="author.orcid">
<button [class]="'uk-button uk-button-primary uk-button-small uk-icon copy orcid_clipboard_btn_auhtor_'+i" style="min-height: 40px"
(click)="copyToClipboard(element)" title="Copy to clipboard">
<span class="custom-icon custom-copy-white"></span>
</button>
</div>
<a class="uk-button uk-button-primary custom-icon-button target uk-button-icon uk-margin-small-left"
title="Visit author in Orcid" [href]="properties.orcidURL+author.orcid" target="_blank">
<span class="custom-icon custom-external-white"></span>
</a>
@ -49,8 +48,8 @@ import {properties} from "../../../../environments/environment";
<div class="uk-margin-top">
Search <b>{{author.fullName}}</b> in OpenAIRE
</div>
<div class="uk-text-center uk-margin-small uk-margin-large-left uk-margin-large-right">
<a class="uk-button uk-button-small portal-button uk-padding-remove-top uk-padding-remove-bottom uk-width-1-1"
<div class="uk-text-center uk-margin-top uk-margin-large-left uk-margin-large-right">
<a class="uk-button uk-text-bold portal-button uk-padding-remove-top uk-padding-remove-bottom uk-width-1-1"
(click)="onClick()"
[queryParams]="routerHelper.createQueryParams(['orcid','oc'],[author['orcid'],'and'])"
routerLinkActive="router-link-active" [routerLink]="properties.searchLinkToAdvancedResults">

View File

@ -15,7 +15,8 @@
{{beforeTitle.join(' . ')}}
</span>
<span *ngIf="result.embargoEndDate && result.embargoEndDate != ''">
<span *ngIf="beforeTitle.length > 0"> . </span> Embargo End Date: {{result.embargoEndDate | date: 'dd MMM yyyy'}}
<span
*ngIf="beforeTitle.length > 0"> . </span> Embargo End Date: {{result.embargoEndDate | date: 'dd MMM yyyy'}}
</span>
</div>
<!-- Title -->
@ -36,7 +37,8 @@
[no title available]
</div>
</a>
<div *ngIf="!result.id || (result.resultType == 'dataprovider' && result.compatibilityUNKNOWN)" class="uk-width-expand">
<div *ngIf="!result.id || (result.resultType == 'dataprovider' && result.compatibilityUNKNOWN)"
class="uk-width-expand">
<div *ngIf="(result.title) || result.acronym">
<span *ngIf="result.acronym">
{{result.acronym}}
@ -49,11 +51,11 @@
[no title available]
</div>
</div>
<hr *ngIf="result.websiteURL && promoteWebsiteURL">
<hr *ngIf="result.websiteURL && promoteWebsiteURL">
</h5>
</div>
<!-- Funder -->
<div *ngIf="result.funderShortname || result.code" class="uk-margin-small-bottom uk-text-small">
<div *ngIf="result.funderShortname || result.code" class="uk-margin-small-bottom">
<span *ngIf="result.funderShortname">
<span class="uk-text-muted">Funder: </span>
{{result.funderShortname}}
@ -62,14 +64,14 @@
<span class="uk-text-muted">Project Code: </span>
{{result.code}}
</span>
<!-- Currently not parsed -->
<!-- <span *ngIf="result.callIdentifier" [class.uk-margin-left]="(result.funderShortname || result.code)">-->
<!-- <span class="uk-text-muted">Call for proposal: </span>-->
<!-- {{result.callIdentifier}}-->
<!-- </span>-->
<!-- Currently not parsed -->
<!-- <span *ngIf="result.callIdentifier" [class.uk-margin-left]="(result.funderShortname || result.code)">-->
<!-- <span class="uk-text-muted">Call for proposal: </span>-->
<!-- {{result.callIdentifier}}-->
<!-- </span>-->
</div>
<!-- Funder Budget -->
<div *ngIf="result.budget || result.contribution" class="uk-margin-small-bottom uk-text-small">
<div *ngIf="result.budget || result.contribution" class="uk-margin-small-bottom">
<span *ngIf="result.budget">
<span class="uk-text-muted">Overall Budget: </span>
{{result.budget | number}}
@ -105,7 +107,7 @@
title="Open Access mandate for Publications and Research Data">
Open Access mandate for Publications and Research Data
</span>{{' '}}
<span *ngIf="result.languages && result.languages.length > 0">
<span *ngIf="result.languages && result.languages.length > 0">
<span *ngFor="let language of result.languages"
class="uk-label custom-label label-language " title="Language">
{{language}}
@ -130,22 +132,23 @@
{{' '}}
</div>
<!-- Authors -->
<div *ngIf="result.authors" class="uk-flex uk-text-small">
<div class="uk-text-muted">Authors: </div>
<showAuthors class="space" [authors]="result.authors" [authorsLimit]=10 [modal]="modal" [showAll]=false></showAuthors>
<div *ngIf="result.authors" class="uk-flex uk-margin-small-bottom">
<div class="uk-text-muted">Authors:</div>
<showAuthors class="space" [authors]="result.authors" [authorsLimit]=10 [modal]="modal"
[showAll]=false [small]="false"></showAuthors>
</div>
<!-- Identifiers -->
<div *ngIf="result.identifiers && result.identifiers.size > 0" class="uk-margin-bottom">
<div *ngIf="result.identifiers && result.identifiers.size > 0" class="uk-margin-small-bottom">
<showIdentifiers [identifiers]="result.identifiers" [properties]="properties"></showIdentifiers>
</div>
<!-- Publisher -->
<div *ngIf="result.publisher && result.publisher != ''" class="uk-text-small uk-margin-small-bottom">
<div *ngIf="result.publisher && result.publisher != ''" class="uk-margin-small-bottom">
<span class="uk-text-muted">Publisher: </span>
{{result.publisher}}
</div>
<!-- Countries -->
<div *ngIf="result.countries && result.countries.length > 0"
class="uk-text-small uk-margin-small-bottom">
class="uk-margin-small-bottom">
<span class="uk-text-muted">{{(result.countries.length == 1) ? 'Country' : 'Countries'}}: </span>
<span *ngFor="let country of result.countries.slice(0,10) let i = index">
{{country}}{{(i < (result.countries.slice(0, 10).length - 1)) ? ", " : ""}}
@ -153,7 +156,7 @@
</span>
</div>
<!-- Projects -->
<div *ngIf="result.projects && result.projects.length > 0" class="uk-text-small uk-margin-small-bottom">
<div *ngIf="result.projects && result.projects.length > 0" class="uk-margin-small-bottom">
<span class="uk-text-muted"> Project: </span>
<span *ngFor="let project of result.projects.slice(0,10) let i=index">
<span>
@ -170,7 +173,7 @@
</div>
<!-- Organizations -->
<div *ngIf="showOrganizations && result.organizations && result.organizations.length > 0"
class="uk-text-small uk-margin-small-bottom">
class="uk-margin-small-bottom">
<span class="uk-text-muted">Partners: </span>
<span *ngFor="let organization of result.organizations.slice(0,10) let i=index">
<span>{{organization.name}}</span>
@ -179,7 +182,7 @@
<span *ngIf="result.organizations.length > 10">...</span>
</div>
<!-- Website URL -->
<div *ngIf="result.websiteURL && result.websiteURL != '' && !promoteWebsiteURL" class="uk-text-small uk-margin-small-bottom">
<div *ngIf="result.websiteURL && result.websiteURL != '' && !promoteWebsiteURL" class="uk-margin-small-bottom">
<span class="uk-text-muted">Website URL: </span>
<span>
<a href="{{result.websiteURL}}" target="_blank" class="custom-external custom-icon">
@ -188,7 +191,7 @@
</span>
</div>
<!-- OAI-PMH URL-->
<div *ngIf="result.OAIPMHURL && result.OAIPMHURL != ''" class="uk-text-small uk-margin-small-bottom">
<div *ngIf="result.OAIPMHURL && result.OAIPMHURL != ''" class="uk-margin-small-bottom">
<span class="uk-text-muted">OAI-PMH URL: </span>
<span>
<a href="{{result.OAIPMHURL}}" target="_blank" class="custom-external custom-icon">
@ -198,7 +201,7 @@
</div>
<!-- Subjects -->
<div *ngIf="showSubjects && result.subjects && result.subjects.length > 0"
class="uk-text-small uk-margin-small-bottom">
class="uk-margin-small-bottom">
<span class="uk-text-muted">Subject: </span>
<span *ngFor="let subject of result.subjects.slice(0,10) let i = index">
<span>{{subject}}</span>
@ -210,7 +213,7 @@
</div>
<!-- Description -->
<div *ngIf="result.description" class="uk-margin-small-bottom multi-line-ellipsis lines-3">
<p class="uk-text-small uk-text-muted">
<p class="uk-text-muted">
{{result.description}}
</p>
</div>
@ -218,8 +221,8 @@
<div *ngIf="result.hostedBy_collectedFrom && result.hostedBy_collectedFrom.length > 0"
class="uk-margin-small-bottom download-from">
<div *ngFor="let from of result.hostedBy_collectedFrom"
[title]="from.bestAccessMode ? from.bestAccessMode : 'Not available'"
class="uk-flex">
[title]="from.bestAccessMode ? from.bestAccessMode : 'Not available'"
class="uk-flex">
<span class="uk-margin-small-right">
<img [src]="from.icon">
</span>
@ -244,11 +247,11 @@
</span>
<span class="provider uk-display-inline-block">
<span class="uk-text-muted">Provider: </span>
<!-- target="_blank"-->
<!-- target="_blank"-->
<a *ngIf="from.collectedId" [routerLink]="dataProviderUrl" [queryParams]="{datasourceId: from.collectedId}"
[href]="from.downloadUrl[0]" (click)="onClick();">
{{from.collectedName}}
<!-- <span class="custom-external space"></span>-->
<!-- <span class="custom-external space"></span>-->
</a>
<span *ngIf="!from.collectedId">
{{from.collectedName}}
@ -261,61 +264,73 @@
<!-- Impact Factors-->
<span *ngIf="result.pop_inf && result.DOI" class="uk-flex uk-flex-middle">
<!--Popularity -->
<a title = "Popularity" class="popularity-{{result.pop_inf[0]}} uk-margin-right uk-flex uk-flex-middle">
<svg xmlns="http://www.w3.org/2000/svg" width="10.749" height="14.33" viewBox="0 0 10.749 14.33"><defs><!--<style>.a{fill:#d51717;}</style>--></defs><path class="a" d="M10.382.67a14.44,14.44,0,0,1,.5,3.225A2.331,2.331,0,0,1,8.589,6.4,2.445,2.445,0,0,1,6.15,3.895l.02-.242A9.25,9.25,0,0,0,4,9.625a5.375,5.375,0,0,0,10.749,0A11.5,11.5,0,0,0,10.382.67ZM9.18,12.985a2.134,2.134,0,0,1-2.163-2.11A2.1,2.1,0,0,1,8.9,8.779a5.181,5.181,0,0,0,3.1-1.733,9.374,9.374,0,0,1,.4,2.714A3.226,3.226,0,0,1,9.18,12.985Z" transform="translate(-4 -0.67)"/></svg>
<a title="Popularity" class="popularity-{{result.pop_inf[0]}} uk-margin-right uk-flex uk-flex-middle">
<svg xmlns="http://www.w3.org/2000/svg" width="10.749" height="14.33" viewBox="0 0 10.749 14.33"><defs><!--<style>.a{fill:#d51717;}</style>--></defs><path
class="a"
d="M10.382.67a14.44,14.44,0,0,1,.5,3.225A2.331,2.331,0,0,1,8.589,6.4,2.445,2.445,0,0,1,6.15,3.895l.02-.242A9.25,9.25,0,0,0,4,9.625a5.375,5.375,0,0,0,10.749,0A11.5,11.5,0,0,0,10.382.67ZM9.18,12.985a2.134,2.134,0,0,1-2.163-2.11A2.1,2.1,0,0,1,8.9,8.779a5.181,5.181,0,0,0,3.1-1.733,9.374,9.374,0,0,1,.4,2.714A3.226,3.226,0,0,1,9.18,12.985Z"
transform="translate(-4 -0.67)"/></svg>
<span class="uk-margin-small-left"
>
{{" "+result.pop_inf[2]+
{{" " + result.pop_inf[2] +
" popularity" }}</span>
</a>
<div
class="default-dropdown uk-margin-remove-top uk-padding-medium"
uk-dropdown="pos: bottom-left; mode:click" style="min-width: 70px !important;">
class="default-dropdown uk-margin-remove-top uk-padding-medium"
uk-dropdown="pos: bottom-left; mode:click" style="min-width: 70px !important;">
<span class=" uk-flex uk-flex-middle">
<span class="popularity-{{result.pop_inf[0]}}">
<span class="popularity-{{result.pop_inf[0]}}">
<svg xmlns="http://www.w3.org/2000/svg" width="20.234" height="26.974"
viewBox="0 0 20.234 26.974"><defs> </defs><path class="a" d="M16.014.67a27.181,27.181,0,0,1,.936,6.07c0,2.605-1.707,4.717-4.312,4.717A4.6,4.6,0,0,1,8.047,6.74l.038-.455A17.411,17.411,0,0,0,4,17.527a10.117,10.117,0,0,0,20.234,0A21.643,21.643,0,0,0,16.014.67ZM13.75,23.85A4.016,4.016,0,0,1,9.678,19.88c0-2.049,1.328-3.49,3.554-3.946a9.753,9.753,0,0,0,5.843-3.263,17.645,17.645,0,0,1,.746,5.109,6.072,6.072,0,0,1-6.07,6.07Z" transform="translate(-4 -0.67)"/></svg>
viewBox="0 0 20.234 26.974"><defs> </defs><path class="a"
d="M16.014.67a27.181,27.181,0,0,1,.936,6.07c0,2.605-1.707,4.717-4.312,4.717A4.6,4.6,0,0,1,8.047,6.74l.038-.455A17.411,17.411,0,0,0,4,17.527a10.117,10.117,0,0,0,20.234,0A21.643,21.643,0,0,0,16.014.67ZM13.75,23.85A4.016,4.016,0,0,1,9.678,19.88c0-2.049,1.328-3.49,3.554-3.946a9.753,9.753,0,0,0,5.843-3.263,17.645,17.645,0,0,1,.746,5.109,6.072,6.072,0,0,1-6.07,6.07Z"
transform="translate(-4 -0.67)"/></svg>
</span>
<span class=" uk-margin-small-left uk-text-large"
>{{" "+result.pop_inf[2]+
<span class=" uk-margin-small-left uk-text-large">{{" " + result.pop_inf[2] +
" popularity" }}</span>
<span
class="uk-margin-small-top uk-margin-small-left">{{" "+(result.pop_inf[0]=='A'?'In top 0.01%':'')+(result.pop_inf[0]=='B'?'In top 1%':'')+(result.pop_inf[0]=='C'?'In bottom 99%':'')}}</span>
class="uk-margin-small-top uk-margin-small-left">{{" " + (result.pop_inf[0] == 'A' ? 'In top 0.01%' : '') + (result.pop_inf[0] == 'B' ? 'In top 1%' : '') + (result.pop_inf[0] == 'C' ? 'In bottom 99%' : '')}}</span>
</span>
<div class="uk-text-muted uk-margin uk-text-small">Popularity: Citation-based measure reflecting the current impact.</div>
<div class="uk-text-muted uk-margin">Popularity: Citation-based measure reflecting the current impact.</div>
<div>
<a title ="Link to Bip!Finder" class=" uk-float-right" target="_blank" href =
"https://bip.imis.athena-innovation.gr/site/details?id={{result.DOI}}">View more details</a>
<a title="Link to Bip!Finder" class="uk-float-right" target="_blank"
href="https://bip.imis.athena-innovation.gr/site/details?id={{result.DOI}}">View more details</a>
</div>
</div>
<!--Influence -->
<a title = "Influence" class="influence-{{result.pop_inf[1]}} uk-flex uk-flex-middle">
<svg xmlns="http://www.w3.org/2000/svg" width="12.667" height="14" viewBox="0 0 12.667 14"><defs><!--<style>.a{fill:#e1920a;}</style>--></defs><path class="a" d="M3.333,7v4.667h2V7Zm4,0v4.667h2V7ZM2,15H14.667V13H2Zm9.333-8v4.667h2V7Zm-3-6L2,4.333V5.667H14.667V4.333Z" transform="translate(-2 -1)"/></svg>
<span class="uk-margin-small-left"
>{{" "+result.pop_inf[3]+
" influence" }}</span>
</a>
<div
class="default-dropdown uk-margin-remove-top uk-padding-medium"
uk-dropdown="pos: bottom-left; mode:click" style="min-width: 70px !important;">
</div>
<!--Influence -->
<a title="Influence" class="influence-{{result.pop_inf[1]}} uk-flex uk-flex-middle">
<svg xmlns="http://www.w3.org/2000/svg" width="12.667" height="14" viewBox="0 0 12.667 14">
<defs><!--<style>.a{fill:#e1920a;}</style>--></defs>
<path class="a"
d="M3.333,7v4.667h2V7Zm4,0v4.667h2V7ZM2,15H14.667V13H2Zm9.333-8v4.667h2V7Zm-3-6L2,4.333V5.667H14.667V4.333Z"
transform="translate(-2 -1)"/>
</svg>
<span class="uk-margin-small-left"
>{{" " + result.pop_inf[3] +
" influence" }}</span>
</a>
<div
class="default-dropdown uk-margin-remove-top uk-padding-medium"
uk-dropdown="pos: bottom-left; mode:click" style="min-width: 70px !important;">
<span class=" uk-flex uk-flex-middle">
<span class="influence-{{result.pop_inf[1]}}">
<svg xmlns="http://www.w3.org/2000/svg" width="24.299" height="26.857" viewBox="0 0 24.299 26.857"><defs><style>.a{fill:#464646;}</style></defs><path class="a" d="M4.558,12.51v8.952H8.394V12.51Zm7.673,0v8.952h3.837V12.51ZM2,27.857H26.3V24.02H2ZM19.9,12.51v8.952h3.837V12.51ZM14.149,1,2,7.394V9.952H26.3V7.394Z" transform="translate(-2 -1)"/></svg>
<span class="influence-{{result.pop_inf[1]}}">
<svg xmlns="http://www.w3.org/2000/svg" width="24.299" height="26.857" viewBox="0 0 24.299 26.857"><defs><style>.a {
fill: #464646;
}</style></defs><path class="a"
d="M4.558,12.51v8.952H8.394V12.51Zm7.673,0v8.952h3.837V12.51ZM2,27.857H26.3V24.02H2ZM19.9,12.51v8.952h3.837V12.51ZM14.149,1,2,7.394V9.952H26.3V7.394Z"
transform="translate(-2 -1)"/></svg>
</span>
<span class=" uk-margin-small-left uk-text-large"
>{{result.pop_inf[3]+
>{{result.pop_inf[3] +
" influence" }}</span>
<span
class="uk-margin-small-top uk-margin-small-left">{{" "+(result.pop_inf[1]=='A'?'In top 0.01%':'')+(result.pop_inf[1]=='B'?'In top 1%':'')+(result.pop_inf[1]=='C'?'In bottom 99%':'')}}</span>
class="uk-margin-small-top uk-margin-small-left">{{" " + (result.pop_inf[1] == 'A' ? 'In top 0.01%' : '') + (result.pop_inf[1] == 'B' ? 'In top 1%' : '') + (result.pop_inf[1] == 'C' ? 'In bottom 99%' : '')}}</span>
</span>
<div class="uk-text-muted uk-margin uk-text-small">Influence: Citation-based measure reflecting the total impact.</div>
<div>
<a title ="Link to Bip!Finder" class=" uk-float-right" target="_blank" href =
"https://bip.imis.athena-innovation.gr/site/details?id={{result.DOI}}">View more details</a>
</div>
</div>
</span>
<div class="uk-text-muted uk-margin">Influence: Citation-based measure reflecting the total impact.</div>
<div>
<a title="Link to Bip!Finder" class=" uk-float-right" target="_blank" href=
"https://bip.imis.athena-innovation.gr/site/details?id={{result.DOI}}">View more details</a>
</div>
</div>
</span>
</div>