78 lines
3.7 KiB
TypeScript
78 lines
3.7 KiB
TypeScript
import {Component, Input} from '@angular/core';
|
|
import {EnvProperties} from "../../utils/properties/env-properties";
|
|
|
|
@Component({
|
|
selector: 'showPublisher',
|
|
template: `
|
|
<li *ngIf="publisher"><span class="uk-text-bold">Publisher: </span> {{publisher}}</li>
|
|
<li *ngIf="journal &&
|
|
(journal['journal'] || journal['issn'] || journal['lissn']
|
|
|| journal['volume'] || journal['eissn'] || journal['issue'])">
|
|
<span class="uk-text-bold">Journal: </span>
|
|
<span *ngIf="journal['journal']">{{journal['journal']}}</span
|
|
><span *ngIf="journal['journal'] && (journal['volume'] || journal['issue'])">,</span>
|
|
<span *ngIf="journal['volume']"
|
|
> volume
|
|
<span *ngIf="journal['volume'] > 0">{{journal['volume'] | number}}</span
|
|
><span *ngIf="!(journal['volume'] > 0)">{{journal['volume']}}</span
|
|
><span *ngIf="journal['issue'] || journal['start_page'] || journal['end_page']">,</span>
|
|
</span>
|
|
<span *ngIf="journal['issue']"
|
|
> issue
|
|
<span *ngIf="journal['issue'] > 0">{{journal['issue'] | number}}</span
|
|
><span *ngIf="!(journal['issue'] > 0)">{{journal['issue']}}</span
|
|
><span *ngIf="journal['start_page'] || journal['end_page']">,</span>
|
|
</span>
|
|
<span *ngIf="(journal['volume'] || journal['issue']) &&
|
|
(journal['start_page'] && journal['end_page'])"> pages </span>
|
|
<span *ngIf="(journal['volume'] || journal['issue']) &&
|
|
((journal['start_page'] && !journal['end_page']) ||
|
|
(!journal['start_page'] && journal['end_page']))">page</span>
|
|
<span *ngIf="journal['start_page']"
|
|
><span *ngIf="journal['start_page'] > 0">{{journal['start_page'] | number}}</span
|
|
><span *ngIf="!(journal['start_page'] > 0)">{{journal['start_page']}}</span
|
|
></span
|
|
><span *ngIf="journal['start_page'] && journal['end_page']">-</span
|
|
><span *ngIf="journal['end_page']"
|
|
><span *ngIf="journal['end_page'] > 0">{{journal['end_page'] | number}}</span
|
|
><span *ngIf="!(journal['end_page'] > 0)">{{journal['end_page']}}</span
|
|
></span>
|
|
<span *ngIf=" journal['journal'] && (journal['issn'] || journal['eissn'] || journal['lissn'])"> (</span
|
|
><span *ngIf="journal['issn']">issn: {{journal['issn']}}<span
|
|
*ngIf="journal['eissn'] || journal['lissn']">, </span
|
|
></span
|
|
><span *ngIf="journal['eissn']"> eissn: {{journal['eissn']}}<span *ngIf="journal['lissn']">, </span
|
|
></span
|
|
><span *ngIf="journal && journal['lissn']"> lissn: {{journal['lissn']}}
|
|
></span
|
|
><span *ngIf=" journal['journal'] && (journal['issn'] || journal['eissn'] || journal['lissn'])">)</span>
|
|
</li>
|
|
<li *ngIf="journal && (journal['issn'] ||
|
|
journal['lissn'] || journal['eissn'] )">
|
|
<span class="custom-external custom-icon"
|
|
uk-tooltip="title: View information on Sherpa/RoMEO ">
|
|
<a target="_blank"
|
|
[href]="sherpaUrl+(journal['issn']?journal['issn']:(journal['eissn']?journal['eissn']:journal['lissn'] ))">
|
|
Publisher copyright policies & self-archiving <img src="assets/common-assets/common/SHERPA-RoMEO-short-logo.gif" width=16 height=16 alt=""></a>
|
|
</span>
|
|
</li>
|
|
|
|
`
|
|
})
|
|
|
|
export class ShowPublisherComponent {
|
|
@Input() publisher;
|
|
@Input() journal;
|
|
@Input() sherpaUrl = 'http://www.sherpa.ac.uk/romeo/search.php?issn=';
|
|
@Input() properties:EnvProperties;
|
|
|
|
|
|
constructor() {
|
|
|
|
}
|
|
|
|
ngOnInit() {
|
|
}
|
|
|
|
}
|