diff --git a/client/src/app/+videos/+video-edit/shared/thumbnail-manager/thumbnail-manager.component.html b/client/src/app/+videos/+video-edit/shared/thumbnail-manager/thumbnail-manager.component.html index 43cd7d45a..8eb68bb5c 100644 --- a/client/src/app/+videos/+video-edit/shared/thumbnail-manager/thumbnail-manager.component.html +++ b/client/src/app/+videos/+video-edit/shared/thumbnail-manager/thumbnail-manager.component.html @@ -27,7 +27,7 @@ [buttonTooltip]="getReactiveFileButtonTooltip()"> - @if (video) { + @if (canSelectFromVideo()) { } } diff --git a/client/src/app/+videos/+video-edit/shared/thumbnail-manager/thumbnail-manager.component.ts b/client/src/app/+videos/+video-edit/shared/thumbnail-manager/thumbnail-manager.component.ts index f82f4f0a4..0fe055269 100644 --- a/client/src/app/+videos/+video-edit/shared/thumbnail-manager/thumbnail-manager.component.ts +++ b/client/src/app/+videos/+video-edit/shared/thumbnail-manager/thumbnail-manager.component.ts @@ -13,7 +13,7 @@ import { import { ReactiveFileComponent } from '@app/shared/shared-forms/reactive-file.component' import { BytesPipe } from '@app/shared/shared-main/angular/bytes.pipe' import { EmbedComponent, EmbedVideoInput } from '@app/shared/shared-main/video/embed.component' -import { HTMLServerConfig } from '@peertube/peertube-models' +import { HTMLServerConfig, Video, VideoState } from '@peertube/peertube-models' import { imageToDataURL } from '@root-helpers/images' import { PeerTubePlayer } from '../../../../../standalone/embed-player-api/player' @@ -34,7 +34,7 @@ import { PeerTubePlayer } from '../../../../../standalone/embed-player-api/playe export class ThumbnailManagerComponent implements OnInit, ControlValueAccessor { @ViewChild('embed') embed: EmbedComponent - @Input() video: EmbedVideoInput + @Input() video: EmbedVideoInput & Pick imageSrc: string allowedExtensionsMessage = '' @@ -71,6 +71,10 @@ export class ThumbnailManagerComponent implements OnInit, ControlValueAccessor { return this.bytesPipe.transform(this.maxVideoImageSize) } + canSelectFromVideo () { + return this.video && !this.video.isLive && this.video.state.id === VideoState.PUBLISHED + } + getReactiveFileButtonTooltip () { return $localize`(extensions: ${this.videoImageExtensions}, ${this.maxSizeText}\: ${this.maxVideoImageSizeInBytes})` }