X-Git-Url: https://git.immae.eu/?a=blobdiff_plain;f=client%2Fsrc%2Fapp%2F%2Bmy-account%2Fmy-account.component.ts;h=450454ca2659940d83d7b24da3e71e604da32a2b;hb=05ac4ac7ed5107ac8ef1d0d1f9fd5009bf29bedc;hp=5b2238f5a650c7e52486c84c4afd9665afbe96dd;hpb=dfe3f7b72ef46401206f6f461077a7984a0c72f0;p=github%2FChocobozzz%2FPeerTube.git diff --git a/client/src/app/+my-account/my-account.component.ts b/client/src/app/+my-account/my-account.component.ts index 5b2238f5a..450454ca2 100644 --- a/client/src/app/+my-account/my-account.component.ts +++ b/client/src/app/+my-account/my-account.component.ts @@ -1,7 +1,5 @@ import { Component, OnInit } from '@angular/core' -import { AuthService, ServerService, AuthUser } from '@app/core' -import { I18n } from '@ngx-translate/i18n-polyfill' -import { ServerConfig } from '@shared/models' +import { AuthUser, ScreenService } from '@app/core' import { TopMenuDropdownParam } from '../shared/shared-main/misc/top-menu-dropdown.component' @Component({ @@ -13,106 +11,57 @@ export class MyAccountComponent implements OnInit { menuEntries: TopMenuDropdownParam[] = [] user: AuthUser - private serverConfig: ServerConfig - constructor ( - private serverService: ServerService, - private authService: AuthService, - private i18n: I18n + private screenService: ScreenService ) { } - ngOnInit (): void { - this.serverConfig = this.serverService.getTmpConfig() - this.serverService.getConfig() - .subscribe(config => this.serverConfig = config) - - this.user = this.authService.getUser() - - this.authService.userInformationLoaded.subscribe( - () => this.buildMenu() - ) + get isBroadcastMessageDisplayed () { + return this.screenService.isBroadcastMessageDisplayed } - isVideoImportEnabled () { - const importConfig = this.serverConfig.import.videos - - return importConfig.http.enabled || importConfig.torrent.enabled + ngOnInit (): void { + this.buildMenu() } private buildMenu () { - const libraryEntries: TopMenuDropdownParam = { - label: this.i18n('My library'), + const moderationEntries: TopMenuDropdownParam = { + label: $localize`Moderation`, children: [ { - label: this.i18n('My channels'), - routerLink: '/my-account/video-channels', - iconName: 'channel' - }, - { - label: this.i18n('My videos'), - routerLink: '/my-account/videos', - iconName: 'videos', - isDisplayed: () => this.user.canSeeVideosLink - }, - { - label: this.i18n('My playlists'), - routerLink: '/my-account/video-playlists', - iconName: 'playlists' - }, - { - label: this.i18n('My subscriptions'), - routerLink: '/my-account/subscriptions', - iconName: 'inbox-full' - }, - { - label: this.i18n('My history'), - routerLink: '/my-account/history/videos', - iconName: 'history' - } - ] - } - - if (this.isVideoImportEnabled()) { - libraryEntries.children.push({ - label: 'My imports', - routerLink: '/my-account/video-imports', - iconName: 'cloud-download', - isDisplayed: () => this.user.canSeeVideosLink - }) - } - - const miscEntries: TopMenuDropdownParam = { - label: this.i18n('Misc'), - children: [ - { - label: this.i18n('Muted accounts'), + label: $localize`Muted accounts`, routerLink: '/my-account/blocklist/accounts', iconName: 'user-x' }, { - label: this.i18n('Muted servers'), + label: $localize`Muted servers`, routerLink: '/my-account/blocklist/servers', iconName: 'peertube-x' }, { - label: this.i18n('Ownership changes'), - routerLink: '/my-account/ownership', - iconName: 'download' + label: $localize`Abuse reports`, + routerLink: '/my-account/abuses', + iconName: 'flag' } ] } this.menuEntries = [ { - label: this.i18n('My settings'), + label: $localize`Settings`, routerLink: '/my-account/settings' }, + { - label: this.i18n('My notifications'), + label: $localize`Notifications`, routerLink: '/my-account/notifications' }, - libraryEntries, - miscEntries + + { + label: $localize`Applications`, + routerLink: '/my-account/applications' + }, + + moderationEntries ] } }