]> git.immae.eu Git - github/Chocobozzz/PeerTube.git/blob - client/src/app/+accounts/account-video-channels/account-video-channels.component.ts
Implement video channel views
[github/Chocobozzz/PeerTube.git] / client / src / app / +accounts / account-video-channels / account-video-channels.component.ts
1 import { Component, OnInit } from '@angular/core'
2 import { ActivatedRoute } from '@angular/router'
3 import 'rxjs/add/observable/from'
4 import 'rxjs/add/operator/concatAll'
5 import { Account } from '@app/shared/account/account.model'
6 import { AccountService } from '@app/shared/account/account.service'
7 import { VideoChannel } from '../../../../../shared/models/videos'
8 import { VideoChannelService } from '@app/shared/video-channel/video-channel.service'
9
10 @Component({
11 selector: 'my-account-video-channels',
12 templateUrl: './account-video-channels.component.html',
13 styleUrls: [ './account-video-channels.component.scss' ]
14 })
15 export class AccountVideoChannelsComponent implements OnInit {
16 account: Account
17 videoChannels: VideoChannel[] = []
18
19 constructor (
20 protected route: ActivatedRoute,
21 private accountService: AccountService,
22 private videoChannelService: VideoChannelService
23 ) { }
24
25 ngOnInit () {
26 // Parent get the account for us
27 this.accountService.accountLoaded
28 .do(account => this.account = account)
29 .flatMap(account => this.videoChannelService.listAccountVideoChannels(account.id))
30 .map(res => res.data)
31 .subscribe(videoChannels => this.videoChannels = videoChannels)
32 }
33 }