X-Git-Url: https://git.immae.eu/?a=blobdiff_plain;f=client%2Fsrc%2Fapp%2F%2Bvideos%2F%2Bvideo-edit%2Fvideo-add-components%2Fvideo-import-url.component.ts;h=7a9fe369f108e96e41adf35256a23477a9f83c50;hb=71fb8b5a344a91ecf9ecc98b6acebeb96d41b834;hp=da25663d75eaae43d954ae20685ac5f22ac341e3;hpb=a02b93ce756d646a59cef57b5e4ff53c2bb30bec;p=github%2FChocobozzz%2FPeerTube.git diff --git a/client/src/app/+videos/+video-edit/video-add-components/video-import-url.component.ts b/client/src/app/+videos/+video-edit/video-add-components/video-import-url.component.ts index da25663d7..7a9fe369f 100644 --- a/client/src/app/+videos/+video-edit/video-add-components/video-import-url.component.ts +++ b/client/src/app/+videos/+video-edit/video-add-components/video-import-url.component.ts @@ -1,14 +1,14 @@ import { map, switchMap } from 'rxjs/operators' -import { Component, EventEmitter, OnInit, Output } from '@angular/core' +import { AfterViewInit, Component, EventEmitter, OnInit, Output } from '@angular/core' import { Router } from '@angular/router' -import { AuthService, CanComponentDeactivate, Notifier, ServerService } from '@app/core' +import { AuthService, CanComponentDeactivate, HooksService, Notifier, ServerService } from '@app/core' import { getAbsoluteAPIUrl, scrollToTop } from '@app/helpers' import { FormValidatorService } from '@app/shared/shared-forms' import { VideoCaptionService, VideoEdit, VideoImportService, VideoService } from '@app/shared/shared-main' -import { VideoSend } from './video-send' import { LoadingBarService } from '@ngx-loading-bar/core' -import { I18n } from '@ngx-translate/i18n-polyfill' import { VideoPrivacy, VideoUpdate } from '@shared/models' +import { hydrateFormFromVideo } from '../shared/video-edit-utils' +import { VideoSend } from './video-send' @Component({ selector: 'my-video-import-url', @@ -18,7 +18,7 @@ import { VideoPrivacy, VideoUpdate } from '@shared/models' './video-send.scss' ] }) -export class VideoImportUrlComponent extends VideoSend implements OnInit, CanComponentDeactivate { +export class VideoImportUrlComponent extends VideoSend implements OnInit, AfterViewInit, CanComponentDeactivate { @Output() firstStepDone = new EventEmitter() @Output() firstStepError = new EventEmitter() @@ -43,7 +43,7 @@ export class VideoImportUrlComponent extends VideoSend implements OnInit, CanCom protected videoCaptionService: VideoCaptionService, private router: Router, private videoImportService: VideoImportService, - private i18n: I18n + private hooks: HooksService ) { super() } @@ -52,6 +52,10 @@ export class VideoImportUrlComponent extends VideoSend implements OnInit, CanCom super.ngOnInit() } + ngAfterViewInit () { + this.hooks.runAction('action:video-url-import.init', 'video-edit') + } + canDeactivate () { return { canDeactivate: true } } @@ -64,7 +68,7 @@ export class VideoImportUrlComponent extends VideoSend implements OnInit, CanCom this.isImportingVideo = true const videoUpdate: VideoUpdate = { - privacy: this.firstStepPrivacyId, + privacy: VideoPrivacy.PRIVATE, waitTranscoding: false, commentsEnabled: true, downloadEnabled: true, @@ -104,6 +108,7 @@ export class VideoImportUrlComponent extends VideoSend implements OnInit, CanCom this.video = new VideoEdit(Object.assign(video, { commentsEnabled: videoUpdate.commentsEnabled, downloadEnabled: videoUpdate.downloadEnabled, + privacy: { id: this.firstStepPrivacyId }, support: null, thumbnailUrl, previewUrl @@ -111,7 +116,7 @@ export class VideoImportUrlComponent extends VideoSend implements OnInit, CanCom this.videoCaptions = videoCaptions - this.hydrateFormFromVideo() + hydrateFormFromVideo(this.form, this.video, true) }, err => { @@ -137,9 +142,9 @@ export class VideoImportUrlComponent extends VideoSend implements OnInit, CanCom .subscribe( () => { this.isUpdatingVideo = false - this.notifier.success(this.i18n('Video to import updated.')) + this.notifier.success($localize`Video to import updated.`) - this.router.navigate([ '/my-account', 'video-imports' ]) + this.router.navigate([ '/my-library', 'video-imports' ]) }, err => { @@ -148,31 +153,5 @@ export class VideoImportUrlComponent extends VideoSend implements OnInit, CanCom console.error(err) } ) - - } - - private hydrateFormFromVideo () { - this.form.patchValue(this.video.toFormPatch()) - - const objects = [ - { - url: 'thumbnailUrl', - name: 'thumbnailfile' - }, - { - url: 'previewUrl', - name: 'previewfile' - } - ] - - for (const obj of objects) { - fetch(this.video[obj.url]) - .then(response => response.blob()) - .then(data => { - this.form.patchValue({ - [ obj.name ]: data - }) - }) - } } }