2020-05-06 12:13:10 +00:00
|
|
|
import { Injectable } from '@angular/core';
|
|
|
|
import { CanLoad, Route, CanActivate, CanDeactivate, ActivatedRouteSnapshot, RouterStateSnapshot } from '@angular/router';
|
|
|
|
|
|
|
|
import { Store } from '@ngrx/store';
|
|
|
|
|
|
|
|
import * as appCommonReducer from '../reducers/app-common.reducer'
|
|
|
|
import * as appCommonActions from '../actions/app-common.actions';
|
|
|
|
|
|
|
|
|
|
|
|
@Injectable({
|
|
|
|
providedIn: 'root',
|
|
|
|
})
|
|
|
|
export class NavBarGuard implements CanActivate {
|
|
|
|
|
|
|
|
private loginDispatched = false;
|
|
|
|
constructor(private store: Store<appCommonReducer.State>) { }
|
|
|
|
|
|
|
|
setNavBar():boolean {
|
|
|
|
this.store.dispatch(new appCommonActions.ShowNavBar());
|
|
|
|
return true;
|
|
|
|
}
|
|
|
|
|
|
|
|
canActivate(route: ActivatedRouteSnapshot, state: RouterStateSnapshot): boolean {
|
|
|
|
return this.setNavBar();
|
|
|
|
}
|
|
|
|
|
|
|
|
canActivateChild(route: ActivatedRouteSnapshot, state: RouterStateSnapshot): boolean {
|
|
|
|
return this.setNavBar();
|
|
|
|
}
|
|
|
|
}
|