[WIP] Added auto roles list #134
This commit is contained in:
@@ -8,6 +8,7 @@ import { NavigationEnd, Router } from "@angular/router";
|
||||
import { ThemeService } from "../theme/theme.service";
|
||||
import { Server } from "../../models/data/server.model";
|
||||
import { UserDTO } from "../../models/auth/auth-user.dto";
|
||||
import { AutoRole } from "../../models/data/auto_role.model";
|
||||
|
||||
@Injectable({
|
||||
providedIn: "root"
|
||||
@@ -17,11 +18,14 @@ export class SidebarService {
|
||||
isSidebarOpen: boolean = true;
|
||||
menuItems$ = new BehaviorSubject<MenuItem[]>(new Array<MenuItem>());
|
||||
server$ = new BehaviorSubject<Server | null>(null);
|
||||
autoRole$ = new BehaviorSubject<AutoRole | null>(null);
|
||||
|
||||
dashboard!: MenuItem;
|
||||
serverDashboard!: MenuItem;
|
||||
serverProfile!: MenuItem;
|
||||
serverMembers!: MenuItem;
|
||||
serverAutoRoles!: MenuItem;
|
||||
serverAutoRoleRules!: MenuItem;
|
||||
serverMenu!: MenuItem;
|
||||
adminConfig!: MenuItem;
|
||||
adminUsers!: MenuItem;
|
||||
@@ -81,12 +85,20 @@ export class SidebarService {
|
||||
visible: true,
|
||||
routerLink: `server/${this.server$.value?.id}/members`
|
||||
};
|
||||
|
||||
this.serverAutoRoles = {
|
||||
label: this.isSidebarOpen ? this.translateService.instant("sidebar.server.auto_roles") : "",
|
||||
icon: "pi pi-sitemap",
|
||||
visible: true,
|
||||
routerLink: `server/${this.server$.value?.id}/auto-roles`
|
||||
};
|
||||
|
||||
this.serverMenu = {
|
||||
label: this.isSidebarOpen ? this.server$.value?.name : "",
|
||||
icon: "pi pi-server",
|
||||
visible: false,
|
||||
expanded: true,
|
||||
items: [this.serverDashboard, this.serverProfile, this.serverMembers]
|
||||
items: [this.serverDashboard, this.serverProfile, this.serverMembers, this.serverAutoRoles]
|
||||
};
|
||||
this.adminConfig = { label: this.isSidebarOpen ? this.translateService.instant("sidebar.config") : "", icon: "pi pi-cog", routerLink: "/admin/settings" };
|
||||
this.adminUsers = {
|
||||
@@ -115,6 +127,7 @@ export class SidebarService {
|
||||
if (this.server$.value) {
|
||||
this.serverMenu.visible = true;
|
||||
this.serverMembers.visible = !!user?.isModerator;
|
||||
this.serverAutoRoles.visible = !!user?.isAdmin;
|
||||
} else {
|
||||
this.serverMenu.visible = false;
|
||||
}
|
||||
|
Reference in New Issue
Block a user