84 lines
3.2 KiB
HTML
84 lines
3.2 KiB
HTML
<div class="attribute attribute-privacy">
|
|
<span i18n class="attribute-label">Privacy</span>
|
|
<span class="attribute-value">{{ video.privacy.label }}</span>
|
|
</div>
|
|
|
|
<div *ngIf="video.isLocal === false" class="attribute attribute-origin">
|
|
<span i18n class="attribute-label">Origin</span>
|
|
<a
|
|
class="attribute-value" target="_blank" rel="noopener noreferrer"
|
|
routerLink="/search" [queryParams]="{ host: getVideoHost() }"
|
|
>{{ video.originInstanceHost }}</a>
|
|
|
|
<a
|
|
i18n-title title="Open the video on the origin instance"
|
|
target="_blank" rel="noopener noreferrer" [href]="video.url"
|
|
>
|
|
<my-global-icon iconName="external-link"></my-global-icon>
|
|
</a>
|
|
</div>
|
|
|
|
<div *ngIf="!!video.importedFrom" class="attribute attribute-imported-from">
|
|
<span i18n class="attribute-label">Imported from</span>
|
|
<a
|
|
class="attribute-value"
|
|
target="_blank"
|
|
rel="noopener noreferrer"
|
|
[href]="video.importedFrom"
|
|
>
|
|
{{ video.importedFrom }}<my-global-icon iconName="external-link"></my-global-icon>
|
|
</a>
|
|
</div>
|
|
|
|
<div *ngIf="!!video.originallyPublishedAt" class="attribute attribute-originally-published-at">
|
|
<span i18n class="attribute-label">Originally published</span>
|
|
<span class="attribute-value">{{ video.originallyPublishedAt | date: 'dd MMMM yyyy' }}</span>
|
|
</div>
|
|
|
|
<div class="attribute attribute-category">
|
|
<span i18n class="attribute-label">Category</span>
|
|
<span *ngIf="!video.category.id" class="attribute-value">{{ video.category.label }}</span>
|
|
<a
|
|
*ngIf="video.category.id" class="attribute-value"
|
|
[routerLink]="[ '/search' ]" [queryParams]="{ categoryOneOf: [ video.category.id ] }"
|
|
>{{ video.category.label }}</a>
|
|
</div>
|
|
|
|
<div class="attribute attribute-licence">
|
|
<span i18n class="attribute-label">Licence</span>
|
|
<span *ngIf="!video.licence.id" class="attribute-value">{{ video.licence.label }}</span>
|
|
<a
|
|
*ngIf="video.licence.id" class="attribute-value"
|
|
[routerLink]="[ '/search' ]" [queryParams]="{ licenceOneOf: [ video.licence.id ] }"
|
|
>{{ video.licence.label }}</a>
|
|
</div>
|
|
|
|
<div class="attribute attribute-language">
|
|
<span i18n class="attribute-label">Language</span>
|
|
<span *ngIf="!video.language.id" class="attribute-value">{{ video.language.label }}</span>
|
|
<a
|
|
*ngIf="video.language.id" class="attribute-value"
|
|
[routerLink]="[ '/search' ]" [queryParams]="{ languageOneOf: [ video.language.id ] }"
|
|
>{{ video.language.label }}</a>
|
|
</div>
|
|
|
|
<div class="attribute attribute-tags">
|
|
<span i18n class="attribute-label">Tags</span>
|
|
<a
|
|
*ngFor="let tag of getVideoTags()"
|
|
class="attribute-value" [routerLink]="[ '/search' ]" [queryParams]="{ tagsOneOf: [ tag ] }"
|
|
>{{ tag }}</a>
|
|
</div>
|
|
|
|
<div class="attribute attribute-duration" *ngIf="!video.isLive">
|
|
<span i18n class="attribute-label">Duration</span>
|
|
<span class="attribute-value">{{ video.duration | myDurationFormatter }}</span>
|
|
</div>
|
|
|
|
<div class="attribute attribute-plugin" *ngFor="let metadata of pluginMetadata">
|
|
<span class="attribute-label">{{ metadata.label }}</span>
|
|
|
|
<span *ngIf="metadata.value" class="attribute-value">{{ metadata.value }}</span>
|
|
<span *ngIf="metadata.safeHTML" class="attribute-value" [innerHTML]="metadata.safeHTML"></span>
|
|
</div>
|