diff options
author | Skip Wonnell <skip@att.com> | 2018-03-01 08:30:15 -0600 |
---|---|---|
committer | Skip Wonnell <skip@att.com> | 2018-03-01 08:33:56 -0600 |
commit | 2c977e2b66ced314a4f51121801f62fe5c3c05e4 (patch) | |
tree | d93b360d7a6502a6aff1f30ba7f96c3e14f8911c /src/app/vnfs/GCAuthGuard | |
parent | 912f105d12fe6f8dc3a2d409938c87016204debe (diff) |
Initial seed code contribution for CDT
Issue-ID: APPC-682
Change-Id: I0331ffce2a430195c29d0d1b2295966f9eb28699
Signed-off-by: Skip Wonnell <skip@att.com>
Diffstat (limited to 'src/app/vnfs/GCAuthGuard')
-rw-r--r-- | src/app/vnfs/GCAuthGuard/gcauth-guard.service.ts | 59 |
1 files changed, 59 insertions, 0 deletions
diff --git a/src/app/vnfs/GCAuthGuard/gcauth-guard.service.ts b/src/app/vnfs/GCAuthGuard/gcauth-guard.service.ts new file mode 100644 index 0000000..c6f0b80 --- /dev/null +++ b/src/app/vnfs/GCAuthGuard/gcauth-guard.service.ts @@ -0,0 +1,59 @@ +/* +============LICENSE_START========================================== +=================================================================== +Copyright (C) 2018 AT&T Intellectual Property. All rights reserved. +=================================================================== + +Unless otherwise specified, all software contained herein is licensed +under the Apache License, Version 2.0 (the License); +you may not use this software except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. + +ECOMP is a trademark and service mark of AT&T Intellectual Property. +============LICENSE_END============================================ +*/ + +import {Injectable} from '@angular/core'; +import {ActivatedRouteSnapshot, CanActivate, Router, RouterStateSnapshot} from '@angular/router'; +import {NgbModal} from '@ng-bootstrap/ng-bootstrap'; +import {AuthGuardModalComponent} from '../auth-guard-modal/auth-guard-modal'; +import {MappingEditorService} from '../../shared/services/mapping-editor.service'; + +@Injectable() +export class GCAuthGuardService implements CanActivate { + constructor(private ngbModal: NgbModal, private mapService: MappingEditorService, private router: Router) { + } + + canActivate(route: ActivatedRouteSnapshot, state: RouterStateSnapshot): Promise<boolean> { + return new Promise(resolve => { + + if (this.mapService.referenceNameObjects != null && this.mapService.referenceNameObjects != undefined) { + resolve(true); + } else { + let x = this.ngbModal.open(AuthGuardModalComponent).result; + x.then((result) => { + //.close method + + resolve(true); + }, (reason) => { + //.dismiss method + this.router.navigate([this.router.url]); + + resolve(false); + }); + } + + //return false; + }); + + + } +}
\ No newline at end of file |