]> git.immae.eu Git - github/Chocobozzz/PeerTube.git/blobdiff - client/src/app/+my-account/my-account.component.ts
Reorganize left menu and account menu
[github/Chocobozzz/PeerTube.git] / client / src / app / +my-account / my-account.component.ts
index 6e29cdd832c60c044a0834cb1365c19ed8c86cda..d6e9d1c157211911184a7535fddfa8c6677dba88 100644 (file)
@@ -1,17 +1,62 @@
-import { Component } from '@angular/core'
-import { ServerService } from '@app/core'
+import { Component, OnInit } from '@angular/core'
+import { AuthUser, ScreenService } from '@app/core'
+import { TopMenuDropdownParam } from '../shared/shared-main/misc/top-menu-dropdown.component'
 
 @Component({
   selector: 'my-my-account',
-  templateUrl: './my-account.component.html'
+  templateUrl: './my-account.component.html',
+  styleUrls: [ './my-account.component.scss' ]
 })
-export class MyAccountComponent {
+export class MyAccountComponent implements OnInit {
+  menuEntries: TopMenuDropdownParam[] = []
+  user: AuthUser
 
   constructor (
-    private serverService: ServerService
-  ) {}
+    private screenService: ScreenService
+    ) { }
 
-  isVideoImportEnabled () {
-    return this.serverService.getConfig().import.videos.http.enabled
+  get isBroadcastMessageDisplayed () {
+    return this.screenService.isBroadcastMessageDisplayed
+  }
+
+  ngOnInit (): void {
+    this.buildMenu()
+  }
+
+  private buildMenu () {
+    const moderationEntries: TopMenuDropdownParam = {
+      label: $localize`Moderation`,
+      children: [
+        {
+          label: $localize`Muted accounts`,
+          routerLink: '/my-account/blocklist/accounts',
+          iconName: 'user-x'
+        },
+        {
+          label: $localize`Muted servers`,
+          routerLink: '/my-account/blocklist/servers',
+          iconName: 'peertube-x'
+        },
+        {
+          label: $localize`Abuse reports`,
+          routerLink: '/my-account/abuses',
+          iconName: 'flag'
+        }
+      ]
+    }
+
+    this.menuEntries = [
+      {
+        label: $localize`Settings`,
+        routerLink: '/my-account/settings'
+      },
+
+      {
+        label: $localize`Notifications`,
+        routerLink: '/my-account/notifications'
+      },
+
+      moderationEntries
+    ]
   }
 }