]> git.immae.eu Git - github/Chocobozzz/PeerTube.git/blobdiff - client/src/app/+manage/video-channel-edit/video-channel-update.component.ts
Add channel hooks
[github/Chocobozzz/PeerTube.git] / client / src / app / +manage / video-channel-edit / video-channel-update.component.ts
index 21b6167b225814ea9acf3b703eb1a7eeb51f79a3..7e8d6ffe68eb8c734602d99e4ab86055325239c0 100644 (file)
@@ -1,8 +1,8 @@
 import { Subscription } from 'rxjs'
 import { HttpErrorResponse } from '@angular/common/http'
-import { Component, OnDestroy, OnInit } from '@angular/core'
-import { ActivatedRoute, Router } from '@angular/router'
-import { AuthService, Notifier, RedirectService, ServerService } from '@app/core'
+import { AfterViewInit, Component, OnDestroy, OnInit } from '@angular/core'
+import { ActivatedRoute } from '@angular/router'
+import { AuthService, HooksService, Notifier, RedirectService, ServerService } from '@app/core'
 import { genericUploadErrorHandler } from '@app/helpers'
 import {
   VIDEO_CHANNEL_DESCRIPTION_VALIDATOR,
@@ -19,7 +19,7 @@ import { VideoChannelEdit } from './video-channel-edit'
   templateUrl: './video-channel-edit.component.html',
   styleUrls: [ './video-channel-edit.component.scss' ]
 })
-export class VideoChannelUpdateComponent extends VideoChannelEdit implements OnInit, OnDestroy {
+export class VideoChannelUpdateComponent extends VideoChannelEdit implements OnInit, AfterViewInit, OnDestroy {
   error: string
   videoChannel: VideoChannel
 
@@ -31,11 +31,11 @@ export class VideoChannelUpdateComponent extends VideoChannelEdit implements OnI
     protected formValidatorService: FormValidatorService,
     private authService: AuthService,
     private notifier: Notifier,
-    private router: Router,
     private route: ActivatedRoute,
     private videoChannelService: VideoChannelService,
     private serverService: ServerService,
-    private redirectService: RedirectService
+    private redirectService: RedirectService,
+    private hooks: HooksService
   ) {
     super()
   }
@@ -58,6 +58,8 @@ export class VideoChannelUpdateComponent extends VideoChannelEdit implements OnI
           next: videoChannelToUpdate => {
             this.videoChannel = videoChannelToUpdate
 
+            this.hooks.runAction('action:video-channel-update.video-channel.loaded', 'video-channel', { videoChannel: this.videoChannel })
+
             this.oldSupportField = videoChannelToUpdate.support
 
             this.form.patchValue({
@@ -74,6 +76,10 @@ export class VideoChannelUpdateComponent extends VideoChannelEdit implements OnI
     })
   }
 
+  ngAfterViewInit () {
+    this.hooks.runAction('action:video-channel-update.init', 'video-channel')
+  }
+
   ngOnDestroy () {
     if (this.paramsSub) this.paramsSub.unsubscribe()
   }
@@ -96,7 +102,7 @@ export class VideoChannelUpdateComponent extends VideoChannelEdit implements OnI
 
           this.notifier.success($localize`Video channel ${videoChannelUpdate.displayName} updated.`)
 
-          this.redirectService.redirectToPreviousRoute([ '/c', this.videoChannel.name ])
+          this.redirectService.redirectToPreviousRoute('/c/' + this.videoChannel.name)
         },
 
         error: err => {
@@ -111,7 +117,7 @@ export class VideoChannelUpdateComponent extends VideoChannelEdit implements OnI
           next: data => {
             this.notifier.success($localize`Avatar changed.`)
 
-            this.videoChannel.updateAvatar(data.avatar)
+            this.videoChannel.updateAvatar(data.avatars)
           },
 
           error: (err: HttpErrorResponse) => genericUploadErrorHandler({
@@ -141,7 +147,7 @@ export class VideoChannelUpdateComponent extends VideoChannelEdit implements OnI
           next: data => {
             this.notifier.success($localize`Banner changed.`)
 
-            this.videoChannel.updateBanner(data.banner)
+            this.videoChannel.updateBanner(data.banners)
           },
 
           error: (err: HttpErrorResponse) => genericUploadErrorHandler({