1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980 |
- import { Component, OnInit } from '@angular/core';
- import { Router } from '@angular/router';
- import { NgbModalRef } from '@ng-bootstrap/ng-bootstrap';
- import { JhiLanguageService } from 'ng-jhipster';
- import { SessionStorageService } from 'ngx-webstorage';
-
- import { VERSION } from 'app/app.constants';
- import { JhiLanguageHelper, Principal, LoginModalService, LoginService } from 'app/core';
- import { ProfileService } from '../profiles/profile.service';
-
- @Component({
- selector: 'jhi-navbar',
- templateUrl: './navbar.component.html',
- styleUrls: ['navbar.scss']
- })
- export class NavbarComponent implements OnInit {
- inProduction: boolean;
- isNavbarCollapsed: boolean;
- languages: any[];
- swaggerEnabled: boolean;
- modalRef: NgbModalRef;
- version: string;
-
- constructor(
- private loginService: LoginService,
- private languageService: JhiLanguageService,
- private languageHelper: JhiLanguageHelper,
- private sessionStorage: SessionStorageService,
- private principal: Principal,
- private loginModalService: LoginModalService,
- private profileService: ProfileService,
- private router: Router
- ) {
- this.version = VERSION ? 'v' + VERSION : '';
- this.isNavbarCollapsed = true;
- }
-
- ngOnInit() {
- this.languageHelper.getAll().then(languages => {
- this.languages = languages;
- });
-
- this.profileService.getProfileInfo().then(profileInfo => {
- this.inProduction = profileInfo.inProduction;
- this.swaggerEnabled = profileInfo.swaggerEnabled;
- });
- }
-
- changeLanguage(languageKey: string) {
- this.sessionStorage.store('locale', languageKey);
- this.languageService.changeLanguage(languageKey);
- }
-
- collapseNavbar() {
- this.isNavbarCollapsed = true;
- }
-
- isAuthenticated() {
- return this.principal.isAuthenticated();
- }
-
- login() {
- this.modalRef = this.loginModalService.open();
- }
-
- logout() {
- this.collapseNavbar();
- this.loginService.logout();
- this.router.navigate(['']);
- }
-
- toggleNavbar() {
- this.isNavbarCollapsed = !this.isNavbarCollapsed;
- }
-
- getImageUrl() {
- return this.isAuthenticated() ? this.principal.getImageUrl() : null;
- }
- }
|