[Trunk|Library]

Data source Landing Page:
                add component showPublisher with sherpa/Romeo link
                parse journal information from datasource


git-svn-id: https://svn.driver.research-infrastructures.eu/driver/dnet40/modules/uoa-services-library/trunk/ng-openaire-library/src/app@55729 d315682c-612b-4755-9ff5-7f18f6832af3
This commit is contained in:
argiro.kokogiannaki 2019-05-27 10:36:09 +00:00
parent 3f189ff1b6
commit 034e2ee330
7 changed files with 57 additions and 19 deletions

View File

@ -44,6 +44,8 @@
</span>
<ul class="uk-list">
<showPublisher
[journal]="dataProviderInfo.journal"></showPublisher>
<li *ngIf="dataProviderInfo.aggregationStatus && dataProviderInfo.aggregationStatus.fundedContent && dataProviderInfo.aggregationStatus.fundedContent != -1"><span class="uk-text-bold">Results with funding information: </span>
{{dataProviderInfo.aggregationStatus.fundedContent | number}}
</li>

View File

@ -36,13 +36,14 @@ import {FreeGuard} from'../../login/freeGuard.guard';
import {IsRouteEnabled} from '../../error/isRouteEnabled.guard';
import {Schema2jsonldModule} from '../../sharedComponents/schema2jsonld/schema2jsonld.module';
import { SEOServiceModule } from '../../sharedComponents/SEO/SEOService.module';
import {ShowPublisherModule} from "../landing-utils/showPublisher.module";
@NgModule({
imports:
[CommonModule, FormsModule, RouterModule,
TabResultModule, IFrameModule, ErrorMessagesModule, MetricsModule, LandingModule,
DataProvidersServiceModule, DatasetsServiceModule, ProjectsServiceModule, PublicationsServiceModule,
SoftwareServiceModule, OrpsServiceModule, PagingModule, Schema2jsonldModule, SEOServiceModule],
SoftwareServiceModule, OrpsServiceModule, PagingModule, Schema2jsonldModule, SEOServiceModule, ShowPublisherModule],
declarations:
[PublicationsTabComponent, DatasetsTabComponent, StatisticsTabComponent, ProjectsTabComponent, DatasourcesTabComponent, OrganizationsTabComponent,
RelatedDatasourcesTabComponent, DataProviderComponent, SoftwareTabComponent, OrpsTabComponent

View File

@ -27,7 +27,8 @@ export class DataProviderService {
res['oaf:datasource']['openairecompatibility'],
res['oaf:datasource']['collectedfrom'],
res['oaf:datasource']['accessinfopackage'],
res['oaf:datasource']['rels']['rel']
res['oaf:datasource']['rels']['rel'],
res['oaf:datasource']['journal'] //6
])
.map(res => this.parseDataProviderInfo(res));
@ -213,6 +214,17 @@ export class DataProviderService {
}
}
}
if(data[6] != null) {
this.dataProviderInfo.journal = {"journal": "", "issn": "", "lissn": "", "eissn": ""};
this.dataProviderInfo.journal['journal'] = data[6].content;
this.dataProviderInfo.journal['issn'] = data[6]['issn'];
this.dataProviderInfo.journal['lissn'] = data[6]['lissn'];
this.dataProviderInfo.journal['eissn'] = data[6]['eissn'];
}else{
this.dataProviderInfo.journal = null;
this.dataProviderInfo.journal = {"journal": "", "issn": "", "lissn": "", "eissn": ""};
}
return this.dataProviderInfo;
}

View File

@ -13,13 +13,14 @@ import {PublishedInComponent} from './publishedIn.component';
import {AvailableOnComponent} from './availableOn.component';
import {TabTableComponent} from './tabTable.component';
import {ShowPublisherComponent} from "./showPublisher.component";
import {ShowPublisherModule} from "./showPublisher.module";
@NgModule({
imports: [
CommonModule, FormsModule, RouterModule, PagingModule
CommonModule, FormsModule, RouterModule, PagingModule, ShowPublisherModule
],
declarations: [
ShowPublisherComponent,
ShowAuthorsComponent,ShowIdentifiersComponent,ShowSubjectsComponent,
FundedByComponent,PublishedInComponent,AvailableOnComponent,TabTableComponent
],

View File

@ -32,40 +32,43 @@ import {Component, Input} from '@angular/core';
><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['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['lissn']">lissn: {{journal['lissn']}}
><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['issn'] || journal['eissn'] || journal['lissn']">)</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: Publisher copyright policies & self-archiving">
<span class="custom-external custom-icon"
uk-tooltip="title: Publisher copyright policies & self-archiving">
<a target="_blank"
[href]="sherpaUrl+(journal['issn']?journal['issn']:(journal['eissn']?journal['eissn']:journal['lissn'] ))">
Link to Sherpa/RoMEO</a></span>
</li>
`
`
})
export class ShowPublisherComponent {
@Input() publisher;
@Input() journal;
@Input() sherpaUrl= 'http://www.sherpa.ac.uk/romeo/search.php?issn=';
@Input() sherpaUrl = 'http://www.sherpa.ac.uk/romeo/search.php?issn=';
constructor() {
}
ngOnInit() {}
ngOnInit() {
}
}

View File

@ -0,0 +1,18 @@
import {NgModule} from '@angular/core';
import {CommonModule} from '@angular/common';
import {ShowPublisherComponent} from "./showPublisher.component";
@NgModule({
imports: [
CommonModule
],
declarations: [
ShowPublisherComponent
],
providers:[
],
exports: [
ShowPublisherComponent
]
})
export class ShowPublisherModule { }

View File

@ -9,6 +9,7 @@ export class DataProviderInfo {
r3DataId: string;
originalId: string;
countries: string[];
journal: {"journal": "", "issn": string, "lissn": string, "eissn": string};
aggregationStatus: {"fundedContent": string, "indexRecords": string, "fulltexts": string}; //collected from datasource api