import { Component, OnInit, ViewChild, AfterViewInit } from "@angular/core"; import { Platform, Events, MenuController } from "@ionic/angular"; import { TranslatorService } from "./hmg-common/services/translator/translator.service"; import { CommonService } from "./hmg-common/services/common/common.service"; import { AuthenticationService } from "./hmg-common/services/authentication/authentication.service"; import { AuthenticatedUser } from "./hmg-common/services/authentication/models/authenticated-user"; import { TabsBarComponent } from "./hmg-common/ui/tabs-bar/tabs-bar.component"; import { KeyboardService } from "./hmg-common/services/keyboard/keyboard.service"; import { SMSCheckResponse } from "src/app/hmg-common/services/authentication/models/smscheck.response"; import { PushService } from '../../src/app/hmg-common/services/push/push.service'; import { LazyLoadingService } from "./hmg-common/services/lazy-loading/lazy-loading.service"; import { DomSanitizer } from '@angular/platform-browser'; @Component({ selector: "app-root", styleUrls: ["./app.component.scss"], templateUrl: "app.component.html" }) export class AppComponent implements OnInit, AfterViewInit { // rootPage:any = LoginPage; // @ViewChild(Nav) nav: Nav; start: any = false; menuList: any = []; User_name_Emp: string = ""; user_image: any = "../assets/imgs/profile.png"; menuSide: string = "left"; notBadge: number; companyUrl: string = "../assets/imgs/CS.png"; companyDesc: string = "Powered By Cloud Solutions"; public direction = "ltr"; User_Job_name: string; requestGetLoginInfo: { DeviceType: string; DeviceToken: string; //this.deviceToken }; user: boolean; TeamFlag :string = "false"; constructor( public ts: TranslatorService, private cs: CommonService, private lazyLoadingService: LazyLoadingService, private platform: Platform, private events: Events, private keyboardService: KeyboardService, private menu: MenuController, private authService: AuthenticationService, private sanitizer: DomSanitizer, public pushService: PushService ) { this.events.subscribe("img-change", displayImg => { console.log("app compont: "+displayImg); //this.user_image = "data:image/png;base64"+displayImg; this.user_image = this.sanitizer.bypassSecurityTrustUrl("data:Image/*;base64,"+displayImg); }); } ngOnInit() { this.initializeApp(); } ngAfterViewInit() {} initializeApp() { this.start = false; this.menu.enable(false) this.lazyLoadingService.monitorLazyLoading(15, true); this.platform.ready().then(() => { this.ts.loadResources(() => { this.initializeDirection(); // this.statusBar.styleDefault(); this.start = true; this.watchLanguageChangeEvents(); this.subscribeEvents(); this.keyboardService.watchKeyboard(); this.startReceivingPushService(); }); }); } private startReceivingPushService() { console.log("platform.ready") this.pushService.startReceiving(); } subscribeEvents() { this.events.subscribe("setMenu", () => { const user = this.authService .loadAuthenticatedUser() .subscribe((user: AuthenticatedUser) => { if (user) { this.companyUrl = user.CompanyImageURL ? user.CompanyImageURL : "../assets/imgs/CS.png"; this.companyDesc = user.CompanyImageDescription ? user.CompanyImageDescription : "Powered By Cloud Solutions"; this.User_name_Emp = user.EMPLOYEE_DISPLAY_NAME; this.user_image = user.EMPLOYEE_IMAGE ? "data:image/png;base64," + user.EMPLOYEE_IMAGE : "../assets/imgs/profile.png"; this.User_Job_name=user.JOB_NAME; console.log(user); } else { console.log(user); } }); }); this.events.subscribe("getNotCount", badge => { this.notBadge = badge; }); this.events.subscribe('myTeamFlag', myTeamFlag => { this.TeamFlag = myTeamFlag; }); console.log("this.TeamFlag>>>>>>>>>"+ this.TeamFlag); } private initializeDirection() { this.direction = TranslatorService.getCurrentDirection(); } private watchUserLoginChangeEvents() { this.events.subscribe( AuthenticationService.LOGIN_EVENT, (user: AuthenticatedUser, time: Date) => {} ); } private watchLanguageChangeEvents() { this.events.subscribe(TranslatorService.CHANGE_EVENT, () => { this.start = false; this.initializeDirection(); setTimeout(() => { this.start = true; }, 100); }); } logout() { this.cs.sharedService.clearAll(); this.menu.toggle(); this.cs.openLogin(); } openMyTeamPage() { this.menu.toggle(); this.cs.openMyTeamPage(); } // profile() { // this.cs.openProfile(); // this.menu.toggle(); // } profile() { this.cs.openEditProfile(); this.menu.toggle(); } openNotification(){ this.cs.openNotificationPage(); this.menu.toggle(); } openChangePassword(){ this.cs.openChangePassword(); this.menu.toggle(); } // openPayslipPage(){ // this.cs.openPayslipPage(); // this.menu.toggle(); // } private changeImage() { this.cs.openChangeImagePage(); this.menu.toggle(); } closeMenu(){ this.menu.toggle(); } }