1
0
Fork 0
mirror of https://github.com/Chocobozzz/PeerTube.git synced 2025-10-05 02:39:33 +02:00
Peertube/client/src/app/+admin/admin-overview.component.ts
2025-02-03 16:12:08 +01:00

53 lines
1.4 KiB
TypeScript

import { Component, OnInit } from '@angular/core'
import { RouterOutlet } from '@angular/router'
import { AuthService } from '@app/core'
import { HorizontalMenuComponent, HorizontalMenuEntry } from '@app/shared/shared-main/menu/horizontal-menu.component'
import { UserRight, UserRightType } from '@peertube/peertube-models'
@Component({
templateUrl: './admin-overview.component.html',
imports: [ HorizontalMenuComponent, RouterOutlet ]
})
export class AdminOverviewComponent implements OnInit {
menuEntries: HorizontalMenuEntry[] = []
constructor (
private auth: AuthService
) { }
ngOnInit () {
this.buildMenu()
}
private buildMenu () {
this.menuEntries = []
if (this.hasRight(UserRight.MANAGE_USERS)) {
this.menuEntries.push({
label: $localize`Users`,
routerLink: '/admin/overview/users'
})
}
if (this.hasRight(UserRight.SEE_ALL_VIDEOS)) {
this.menuEntries.push({
label: $localize`Videos`,
routerLink: '/admin/overview/videos',
queryParams: {
search: 'isLocal:true'
}
})
}
if (this.hasRight(UserRight.SEE_ALL_COMMENTS)) {
this.menuEntries.push({
label: $localize`Comments`,
routerLink: '/admin/overview/comments'
})
}
}
private hasRight (right: UserRightType) {
return this.auth.getUser().hasRight(right)
}
}