bizmatch-project/bizmatch/src/app/pages/menu-account/menu-account.component.ts

37 lines
1.4 KiB
TypeScript

import { CommonModule } from '@angular/common';
import { Component } from '@angular/core';
import { NavigationEnd, Router, RouterModule } from '@angular/router';
import { FontAwesomeModule } from '@fortawesome/angular-fontawesome';
import { faEnvelope } from '@fortawesome/free-regular-svg-icons';
import { faRightFromBracket } from '@fortawesome/free-solid-svg-icons';
import { KeycloakService } from 'keycloak-angular';
import { ButtonModule } from 'primeng/button';
import { DividerModule } from 'primeng/divider';
import { RippleModule } from 'primeng/ripple';
import { StyleClassModule } from 'primeng/styleclass';
@Component({
selector: 'menu-account',
standalone: true,
imports: [CommonModule, StyleClassModule, ButtonModule, DividerModule, RouterModule, RippleModule, FontAwesomeModule],
templateUrl: './menu-account.component.html',
styleUrl: './menu-account.component.scss',
})
export class MenuAccountComponent {
activeLink: string;
faEnvelope = faEnvelope;
faRightFromBracket = faRightFromBracket;
constructor(private router: Router, public keycloakService: KeycloakService) {
// Abonniere Router-Events, um den aktiven Link zu ermitteln
this.router.events.subscribe(event => {
if (event instanceof NavigationEnd) {
this.activeLink = event.url;
}
});
}
logout() {
sessionStorage.removeItem('USERID');
this.keycloakService.logout(window.location.origin + '/home');
}
}