Files
rossa-tech/rossa-tech-cli/src/app/services/pageSecurity.service.ts
Peter Rossa b101ccf6b6 Init webapp
2023-05-10 15:02:48 +02:00

29 lines
671 B
TypeScript

import { Injectable } from "@angular/core";
import { Router } from "@angular/router";
import { HttpErrorResponse } from "@angular/common/http";
@Injectable({
providedIn: "root",
})
export class PageSecurityService {
constructor(private router: Router) {}
public gotoLoginPage() {
this.router.navigate(["/login"]);
}
public checkPageSecurityError(httpError: HttpErrorResponse) {
if (!httpError || httpError.status == null) {
throw new Error("Invalid http error object.");
}
if (httpError.status === 401) {
this.gotoLoginPage();
}
if (httpError.status === 403) {
this.router.navigate(["/accessDenied"]);
}
}
}