diff --git a/src/app/app.component.html b/src/app/app.component.html index 6b6de9e..0a08e11 100644 --- a/src/app/app.component.html +++ b/src/app/app.component.html @@ -2,3 +2,5 @@ + + diff --git a/src/app/app.component.ts b/src/app/app.component.ts index 31c0105..4f0fff5 100644 --- a/src/app/app.component.ts +++ b/src/app/app.component.ts @@ -4,10 +4,11 @@ import { RouterOutlet } from '@angular/router'; import { HomeNavbarComponent } from './components/home-navbar/home-navbar.component'; import { NavbarComponent } from './components/navbar/navbar.component'; import { LocalStorageService } from './services/local-storage/local-storage.service'; +import { AdminFooterComponent } from './components/admin-footer/admin-footer.component'; @Component({ selector: 'app-root', - imports: [RouterOutlet, NavbarComponent, HomeNavbarComponent, CommonModule], + imports: [RouterOutlet, NavbarComponent, HomeNavbarComponent, CommonModule, AdminFooterComponent], templateUrl: './app.component.html', }) export class AppComponent { diff --git a/src/app/components/admin-footer/admin-footer.component.css b/src/app/components/admin-footer/admin-footer.component.css new file mode 100644 index 0000000..e69de29 diff --git a/src/app/components/admin-footer/admin-footer.component.html b/src/app/components/admin-footer/admin-footer.component.html new file mode 100644 index 0000000..acc8877 --- /dev/null +++ b/src/app/components/admin-footer/admin-footer.component.html @@ -0,0 +1,9 @@ +
+ +
diff --git a/src/app/components/admin-footer/admin-footer.component.ts b/src/app/components/admin-footer/admin-footer.component.ts new file mode 100644 index 0000000..d08c4f8 --- /dev/null +++ b/src/app/components/admin-footer/admin-footer.component.ts @@ -0,0 +1,11 @@ +import { Component } from '@angular/core'; +import { RouterLink } from '@angular/router'; +import { CommonModule } from '@angular/common'; + +@Component({ + selector: 'app-admin-footer', + imports: [CommonModule, RouterLink], + templateUrl: './admin-footer.component.html', + styleUrl: './admin-footer.component.css' +}) +export class AdminFooterComponent { } diff --git a/src/app/components/login-page/login-page.component.ts b/src/app/components/login-page/login-page.component.ts index c2333fe..1c69f63 100644 --- a/src/app/components/login-page/login-page.component.ts +++ b/src/app/components/login-page/login-page.component.ts @@ -69,6 +69,7 @@ export class LoginPageComponent { next: (response) => { this.localStorageService.setToken(response.access_token); this.localStorageService.setUsername(this.user.login); + this.localStorageService.setIsAdmin(response.is_admin); this.closeLoginModal(); setTimeout(() => { this.router.navigate(['/map']); diff --git a/src/app/components/navbar/navbar.component.ts b/src/app/components/navbar/navbar.component.ts index a29576d..27d2813 100644 --- a/src/app/components/navbar/navbar.component.ts +++ b/src/app/components/navbar/navbar.component.ts @@ -151,6 +151,7 @@ export class NavbarComponent implements OnInit { public logout() { this.localStorageService.removeToken(); this.localStorageService.removeUsername(); + this.localStorageService.removeIsAdmin(); this.router.navigate(['/']); } } diff --git a/src/app/services/local-storage/local-storage.service.ts b/src/app/services/local-storage/local-storage.service.ts index b2f66b2..020bb1b 100644 --- a/src/app/services/local-storage/local-storage.service.ts +++ b/src/app/services/local-storage/local-storage.service.ts @@ -8,6 +8,7 @@ import { ModalService } from '../modal/modal.service'; export class LocalStorageService { private readonly AUTH_TOKEN_KEY = 'auth_token'; private readonly USERNAME_KEY = 'username'; + private readonly IS_ADMIN_KEY = 'isAdmin'; constructor(private router: Router, private modalService: ModalService) {} @@ -47,4 +48,16 @@ export class LocalStorageService { removeToken(): void { localStorage.removeItem(this.AUTH_TOKEN_KEY); } + + setIsAdmin(isAdmin: boolean): void { + localStorage.setItem(this.IS_ADMIN_KEY, isAdmin.toString()); + } + + getIsAdmin(): string | null { + return localStorage.getItem(this.IS_ADMIN_KEY); + } + + removeIsAdmin(): void { + localStorage.removeItem(this.IS_ADMIN_KEY); + } }