import {Injectable} from '@angular/core'; import {JwtHelperService} from "@auth0/angular-jwt"; import {StorageService} from "./storage.service"; import {AlertService} from "./alert.service"; @Injectable({ providedIn: 'root' }) export class AuthService { public jwtHelper: JwtHelperService = new JwtHelperService(); constructor(private storageService: StorageService, private alertService: AlertService) { } public signIn(): void { // window.location.assign('https://auth.nrao.edu/cas/login?service=' + encodeURIComponent(window.location.origin + window.location.pathname)); } public isAuthenticated(): boolean { return true; const token = this.storageService.getLocal('jwt'); // Check whether the token is expired and return // true or false return !this.jwtHelper.isTokenExpired(token); } public logIn(ticket: string): boolean { console.log('expires', this.jwtHelper.getTokenExpirationDate(ticket)); // if (this.jwtHelper.isTokenExpired(ticket)) { // return false; // } try { const token = this.jwtHelper.decodeToken(ticket); console.log(token); this.storageService.saveLocal('jwt', ticket); return true; } catch (err) { console.warn(err); return false; } } }