]> git.immae.eu Git - github/Chocobozzz/PeerTube.git/blobdiff - client/src/app/+accounts/account-search/account-search.component.ts
Merge branch 'release/3.1.0' into develop
[github/Chocobozzz/PeerTube.git] / client / src / app / +accounts / account-search / account-search.component.ts
index 10c7a12d87da6d989e3e5b05e90248d9c6e4108f..f54ab846a5a39a2335b54b6a259684c95809b692 100644 (file)
@@ -1,6 +1,6 @@
-import { Subscription } from 'rxjs'
+import { forkJoin, Subscription } from 'rxjs'
 import { first, tap } from 'rxjs/operators'
-import { Component, OnDestroy, OnInit } from '@angular/core'
+import { Component, ComponentFactoryResolver, OnDestroy, OnInit } from '@angular/core'
 import { ActivatedRoute, Router } from '@angular/router'
 import { AuthService, ConfirmService, LocalStorageService, Notifier, ScreenService, ServerService, UserService } from '@app/core'
 import { immutableAssign } from '@app/helpers'
@@ -11,13 +11,12 @@ import { VideoFilter } from '@shared/models'
 @Component({
   selector: 'my-account-search',
   templateUrl: '../../shared/shared-video-miniature/abstract-video-list.html',
-  styleUrls: [
-    '../../shared/shared-video-miniature/abstract-video-list.scss'
-  ]
+  styleUrls: [ '../../shared/shared-video-miniature/abstract-video-list.scss' ]
 })
 export class AccountSearchComponent extends AbstractVideoList implements OnInit, OnDestroy {
   titlePage: string
   loadOnInit = false
+  loadUserVideoPreferences = true
 
   search = ''
   filter: VideoFilter = null
@@ -35,6 +34,7 @@ export class AccountSearchComponent extends AbstractVideoList implements OnInit,
     protected confirmService: ConfirmService,
     protected screenService: ScreenService,
     protected storageService: LocalStorageService,
+    protected cfr: ComponentFactoryResolver,
     private accountService: AccountService,
     private videoService: VideoService
   ) {
@@ -47,14 +47,14 @@ export class AccountSearchComponent extends AbstractVideoList implements OnInit,
     this.enableAllFilterIfPossible()
 
     // Parent get the account for us
-    this.accountSub = this.accountService.accountLoaded
-                          .pipe(first())
-                          .subscribe(account => {
-                            this.account = account
-
-                            this.reloadVideos()
-                            this.generateSyndicationList()
-                          })
+    this.accountSub = forkJoin([
+      this.accountService.accountLoaded.pipe(first()),
+      this.onUserLoadedSubject.pipe(first())
+    ]).subscribe(([ account ]) => {
+      this.account = account
+
+      this.reloadVideos()
+    })
   }
 
   ngOnDestroy () {
@@ -64,9 +64,14 @@ export class AccountSearchComponent extends AbstractVideoList implements OnInit,
   }
 
   updateSearch (value: string) {
-    if (value === '') this.router.navigate(['../videos'], { relativeTo: this.route })
     this.search = value
 
+    if (!this.search) {
+      this.router.navigate([ '../videos' ], { relativeTo: this.route })
+      return
+    }
+
+    this.videos = []
     this.reloadVideos()
   }
 
@@ -99,6 +104,7 @@ export class AccountSearchComponent extends AbstractVideoList implements OnInit,
   }
 
   generateSyndicationList () {
-    /* disable syndication */
+    /* method disabled */
+    throw new Error('Method not implemented.')
   }
 }