X-Git-Url: https://git.immae.eu/?a=blobdiff_plain;f=client%2Fsrc%2Fapp%2F%2Baccounts%2Faccount-video-channels%2Faccount-video-channels.component.ts;h=f2beb6689cffe4b606e6c03a65ca7ddaae5fb45a;hb=67264e060b6068399dae9a67abae035a73b84af1;hp=29d2991fddbabca192aedd94c081e381ca40adaa;hpb=6eb62c33908025d877a28f1cfbc527c511ae3103;p=github%2FChocobozzz%2FPeerTube.git diff --git a/client/src/app/+accounts/account-video-channels/account-video-channels.component.ts b/client/src/app/+accounts/account-video-channels/account-video-channels.component.ts index 29d2991fd..f2beb6689 100644 --- a/client/src/app/+accounts/account-video-channels/account-video-channels.component.ts +++ b/client/src/app/+accounts/account-video-channels/account-video-channels.component.ts @@ -1,17 +1,9 @@ -import { Component, OnDestroy, OnInit } from '@angular/core' -import { ActivatedRoute } from '@angular/router' -import { Account } from '@app/shared/account/account.model' -import { AccountService } from '@app/shared/account/account.service' -import { VideoChannelService } from '@app/shared/video-channel/video-channel.service' -import { concatMap, map, switchMap, tap } from 'rxjs/operators' import { from, Subject, Subscription } from 'rxjs' -import { VideoChannel } from '@app/shared/video-channel/video-channel.model' -import { Video } from '@app/shared/video/video.model' -import { AuthService } from '@app/core' -import { VideoService } from '@app/shared/video/video.service' -import { VideoSortField } from '@app/shared/video/sort-field.type' -import { ComponentPagination, hasMoreItems } from '@app/shared/rest/component-pagination.model' -import { ScreenService } from '@app/shared/misc/screen.service' +import { concatMap, map, switchMap, tap } from 'rxjs/operators' +import { Component, OnDestroy, OnInit } from '@angular/core' +import { ComponentPagination, hasMoreItems, ScreenService, User, UserService } from '@app/core' +import { Account, AccountService, Video, VideoChannel, VideoChannelService, VideoService } from '@app/shared/shared-main' +import { NSFWPolicyType, VideoSortField } from '@shared/models' @Component({ selector: 'my-account-video-channels', @@ -25,32 +17,32 @@ export class AccountVideoChannelsComponent implements OnInit, OnDestroy { channelPagination: ComponentPagination = { currentPage: 1, - itemsPerPage: 2 + itemsPerPage: 2, + totalItems: null } videosPagination: ComponentPagination = { currentPage: 1, - itemsPerPage: 12 + itemsPerPage: 12, + totalItems: null } videosSort: VideoSortField = '-publishedAt' onChannelDataSubject = new Subject() + userMiniature: User + nsfwPolicy: NSFWPolicyType + private accountSub: Subscription constructor ( - private route: ActivatedRoute, - private authService: AuthService, private accountService: AccountService, private videoChannelService: VideoChannelService, private videoService: VideoService, - private screenService: ScreenService + private screenService: ScreenService, + private userService: UserService ) { } - get user () { - return this.authService.getUser() - } - ngOnInit () { // Parent get the account for us this.accountSub = this.accountService.accountLoaded @@ -59,6 +51,13 @@ export class AccountVideoChannelsComponent implements OnInit, OnDestroy { this.loadMoreChannels() }) + + this.userService.getAnonymousOrLoggedUser() + .subscribe(user => { + this.userMiniature = user + + this.nsfwPolicy = user.nsfwPolicy + }) } ngOnDestroy () { @@ -71,7 +70,14 @@ export class AccountVideoChannelsComponent implements OnInit, OnDestroy { tap(res => this.channelPagination.totalItems = res.total), switchMap(res => from(res.data)), concatMap(videoChannel => { - return this.videoService.getVideoChannelVideos(videoChannel, this.videosPagination, this.videosSort) + const options = { + videoChannel, + videoPagination: this.videosPagination, + sort: this.videosSort, + nsfwPolicy: this.nsfwPolicy + } + + return this.videoService.getVideoChannelVideos(options) .pipe(map(data => ({ videoChannel, videos: data.data }))) }) )