From 4da04fb46034bb91761d7aa0bebbf816594a85a0 Mon Sep 17 00:00:00 2001
From: Carlos Santos <4a.santos@gmail.com>
Date: Wed, 16 Jul 2025 12:14:54 +0200
Subject: [PATCH] frontend: update error component to provide admin navigation
to console
---
.../src/lib/pages/error/error.component.html | 12 ++++++++----
.../src/lib/pages/error/error.component.ts | 14 ++++++++++----
2 files changed, 18 insertions(+), 8 deletions(-)
diff --git a/frontend/projects/shared-meet-components/src/lib/pages/error/error.component.html b/frontend/projects/shared-meet-components/src/lib/pages/error/error.component.html
index e7daca9..793218b 100644
--- a/frontend/projects/shared-meet-components/src/lib/pages/error/error.component.html
+++ b/frontend/projects/shared-meet-components/src/lib/pages/error/error.component.html
@@ -11,10 +11,14 @@
-
+ @if (isAdmin) {
+
+
+
+ }
diff --git a/frontend/projects/shared-meet-components/src/lib/pages/error/error.component.ts b/frontend/projects/shared-meet-components/src/lib/pages/error/error.component.ts
index 9cb8857..7b2f05f 100644
--- a/frontend/projects/shared-meet-components/src/lib/pages/error/error.component.ts
+++ b/frontend/projects/shared-meet-components/src/lib/pages/error/error.component.ts
@@ -3,8 +3,8 @@ import { MatButtonModule } from '@angular/material/button';
import { MatCardModule } from '@angular/material/card';
import { MatIconModule } from '@angular/material/icon';
import { ActivatedRoute, Router } from '@angular/router';
-import { Location } from '@angular/common';
import { ErrorReason } from '@lib/models';
+import { AuthService, NavigationService } from '@lib/services';
@Component({
selector: 'ov-error',
@@ -19,7 +19,8 @@ export class ErrorComponent implements OnInit {
constructor(
private route: ActivatedRoute,
- private location: Location
+ protected authService: AuthService,
+ protected navService: NavigationService
) {}
ngOnInit(): void {
@@ -71,7 +72,12 @@ export class ErrorComponent implements OnInit {
});
}
- goBack(): void {
- this.location.back();
+ get isAdmin(): boolean {
+ return this.authService.isAdmin();
+ }
+
+ async goToConsole(): Promise {
+ // Navigate to the admin console
+ await this.navService.redirectTo('/overview', false);
}
}