diff --git a/client/src/app/+videos/+video-edit/shared/video-caption-edit-modal/video-caption-edit-modal.component.html b/client/src/app/+videos/+video-edit/shared/video-caption-edit-modal/video-caption-edit-modal.component.html index 4543b93d8..be6f676c2 100644 --- a/client/src/app/+videos/+video-edit/shared/video-caption-edit-modal/video-caption-edit-modal.component.html +++ b/client/src/app/+videos/+video-edit/shared/video-caption-edit-modal/video-caption-edit-modal.component.html @@ -17,7 +17,7 @@
- {{ formErrors.description }} + {{ formErrors.captionFileContent }}
diff --git a/client/src/app/+videos/+video-edit/shared/video-caption-edit-modal/video-caption-edit-modal.component.ts b/client/src/app/+videos/+video-edit/shared/video-caption-edit-modal/video-caption-edit-modal.component.ts index d2232a38e..f74f3c5ea 100644 --- a/client/src/app/+videos/+video-edit/shared/video-caption-edit-modal/video-caption-edit-modal.component.ts +++ b/client/src/app/+videos/+video-edit/shared/video-caption-edit-modal/video-caption-edit-modal.component.ts @@ -1,5 +1,4 @@ import { Component, ElementRef, EventEmitter, Input, OnInit, Output, ViewChild } from '@angular/core' - import { VIDEO_CAPTION_FILE_CONTENT_VALIDATOR } from '@app/shared/form-validators/video-captions-validators' import { FormReactive, FormValidatorService } from '@app/shared/shared-forms' import { VideoCaptionEdit, VideoCaptionService, VideoCaptionWithPathEdit } from '@app/shared/shared-main' @@ -23,7 +22,6 @@ export class VideoCaptionEditModalComponent extends FormReactive implements OnIn videoCaptionLanguages: VideoConstant[] = [] private openedModal: NgbModalRef - private closingModal = false constructor ( protected formValidatorService: FormValidatorService, @@ -44,25 +42,21 @@ export class VideoCaptionEditModalComponent extends FormReactive implements OnIn loadCaptionContent () { const { captionPath } = this.videoCaption - if (captionPath) { - this.videoCaptionService.getCaptionContent({ - captionPath - }).subscribe((res) => { + if (!captionPath) return + + this.videoCaptionService.getCaptionContent({ captionPath }) + .subscribe(res => { this.form.patchValue({ captionFileContent: res }) }) - } } show () { - this.closingModal = false - this.openedModal = this.modalService.open(this.modal, { centered: true, keyboard: false }) } hide () { - this.closingModal = true this.openedModal.close() } @@ -70,14 +64,11 @@ export class VideoCaptionEditModalComponent extends FormReactive implements OnIn this.hide() } - isReplacingExistingCaption () { - return true - } - updateCaption () { const format = 'vtt' const languageId = this.videoCaption.language.id const languageObject = this.videoCaptionLanguages.find(l => l.id === languageId) + this.captionEdited.emit({ language: languageObject, captionfile: new File([ this.form.value['captionFileContent'] ], `${languageId}.${format}`, { diff --git a/client/src/app/+videos/+video-edit/shared/video-edit.component.ts b/client/src/app/+videos/+video-edit/shared/video-edit.component.ts index 0f4d0619b..2801fc519 100644 --- a/client/src/app/+videos/+video-edit/shared/video-edit.component.ts +++ b/client/src/app/+videos/+video-edit/shared/video-edit.component.ts @@ -59,7 +59,7 @@ export class VideoEditComponent implements OnInit, OnDestroy { @Input() userVideoChannels: SelectChannelItem[] = [] @Input() forbidScheduledPublication = true - @Input() videoCaptions: (VideoCaptionWithPathEdit)[] = [] + @Input() videoCaptions: VideoCaptionWithPathEdit[] = [] @Input() waitTranscodingEnabled = true @Input() type: VideoEditType diff --git a/client/src/app/shared/shared-main/video-caption/video-caption.service.ts b/client/src/app/shared/shared-main/video-caption/video-caption.service.ts index 67eb09e4d..00ebe5bc6 100644 --- a/client/src/app/shared/shared-main/video-caption/video-caption.service.ts +++ b/client/src/app/shared/shared-main/video-caption/video-caption.service.ts @@ -7,8 +7,8 @@ import { objectToFormData, sortBy } from '@app/helpers' import { VideoService } from '@app/shared/shared-main/video' import { peertubeTranslate } from '@shared/core-utils/i18n' import { ResultList, VideoCaption } from '@shared/models' -import { VideoCaptionEdit } from './video-caption-edit.model' import { environment } from '../../../../environments/environment' +import { VideoCaptionEdit } from './video-caption-edit.model' @Injectable() export class VideoCaptionService { @@ -69,6 +69,6 @@ export class VideoCaptionService { } getCaptionContent ({ captionPath }: Pick) { - return this.authHttp.get(`${environment.originServerUrl}${captionPath}`, { responseType: 'text' }) + return this.authHttp.get(environment.originServerUrl + captionPath, { responseType: 'text' }) } }