diff --git a/dmp-frontend/src/app/ui/dmp/overview/dmp-overview.component.ts b/dmp-frontend/src/app/ui/dmp/overview/dmp-overview.component.ts index fdff10d68..6848e176e 100644 --- a/dmp-frontend/src/app/ui/dmp/overview/dmp-overview.component.ts +++ b/dmp-frontend/src/app/ui/dmp/overview/dmp-overview.component.ts @@ -154,7 +154,8 @@ export class DmpOverviewComponent extends BaseComponent implements OnInit { .subscribe( repos => { this.depositRepos = repos; - }); + }, + error => this.depositRepos = []); } onFetchingDeletedCallbackError(redirectRoot: string) { @@ -649,13 +650,19 @@ export class DmpOverviewComponent extends BaseComponent implements OnInit { } createDoiLink(doiModel: DoiModel): string { - if(doiModel.repositoryId == "Zenodo"){ - const doiarr = doiModel.doi.split('.'); - const id = doiarr[doiarr.length - 1]; - return this.depositRepos.find(r => r.repositoryId == doiModel.repositoryId).repositoryRecordUrl + id; + const recordUrl = this.depositRepos.find(r => r.repositoryId == doiModel.repositoryId).repositoryRecordUrl; + if(typeof recordUrl !== "undefined"){ + if(doiModel.repositoryId == "Zenodo"){ + const doiarr = doiModel.doi.split('.'); + const id = doiarr[doiarr.length - 1]; + return this.depositRepos.find(r => r.repositoryId == doiModel.repositoryId).repositoryRecordUrl + id; + } + else{ + return this.depositRepos.find(r => r.repositoryId == doiModel.repositoryId).repositoryRecordUrl + doiModel.doi; + } } else{ - return this.depositRepos.find(r => r.repositoryId == doiModel.repositoryId).repositoryRecordUrl + doiModel.doi; + return ""; } }