mirror of
https://github.com/DSpace/dspace-angular.git
synced 2025-10-07 01:54:15 +00:00

committed by
github-actions[bot]
![github-actions[bot]](/assets/img/avatar_default.png)
parent
60ff9a9c79
commit
5173b28b5a
@@ -18,7 +18,10 @@
|
||||
|
||||
<!-- Render value as a link (href and label) -->
|
||||
<ng-template #link let-value="value">
|
||||
<a class="dont-break-out ds-simple-metadata-link" target="_blank" [href]="value">
|
||||
<a class="dont-break-out ds-simple-metadata-link"
|
||||
[href]="value"
|
||||
[attr.target]="getLinkAttributes(value).target"
|
||||
[attr.rel]="getLinkAttributes(value).rel">
|
||||
{{value}}
|
||||
</a>
|
||||
</ng-template>
|
||||
|
@@ -134,4 +134,16 @@ export class MetadataValuesComponent implements OnChanges {
|
||||
hasInternalLink(linkValue: string): boolean {
|
||||
return linkValue.startsWith(environment.ui.baseUrl);
|
||||
}
|
||||
|
||||
/**
|
||||
* This method performs a validation and determines the target of the url.
|
||||
* @returns - Returns the target url.
|
||||
*/
|
||||
getLinkAttributes(urlValue: string): { target: string, rel: string } {
|
||||
if (this.hasInternalLink(urlValue)) {
|
||||
return { target: '_self', rel: '' };
|
||||
} else {
|
||||
return { target: '_blank', rel: 'noopener noreferrer' };
|
||||
}
|
||||
}
|
||||
}
|
||||
|
Reference in New Issue
Block a user