You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
71 lines
2.4 KiB
TypeScript
71 lines
2.4 KiB
TypeScript
import { CommonModule } from '@angular/common';
|
|
import { Component, ViewChild } from '@angular/core';
|
|
import { FormControl, FormGroup, FormsModule, ReactiveFormsModule } from '@angular/forms';
|
|
import { TranslateModule } from '@ngx-translate/core';
|
|
import { PasswordHideShowComponent } from '../../shared/components/password-hide-show/password-hide-show.component';
|
|
import { StorageService } from '../../shared/services/storage.service';
|
|
import { Router } from '@angular/router';
|
|
|
|
@Component({
|
|
selector: 'app-change-password',
|
|
imports: [TranslateModule, FormsModule, ReactiveFormsModule, CommonModule, PasswordHideShowComponent,],
|
|
templateUrl: './change-password.component.html',
|
|
styleUrl: './change-password.component.scss'
|
|
})
|
|
|
|
export class ChangePasswordComponent{
|
|
isFirstLogin = false;
|
|
loginForm!: FormGroup;
|
|
currentLanguage = new FormControl();
|
|
httpService: any;
|
|
constructor(private storageService: StorageService, private router: Router){}
|
|
onLangChange() {
|
|
throw new Error('Method not implemented.');
|
|
}
|
|
passwordType: string = 'password';
|
|
passwordType1: string = 'password';
|
|
passwordType2: string = 'password';
|
|
|
|
@ViewChild('psh') passwordHideShow?: PasswordHideShowComponent;
|
|
@ViewChild('psh1') passwordHideShow1 ?: PasswordHideShowComponent;
|
|
@ViewChild('psh2') passwordHideShow2 ?: PasswordHideShowComponent;
|
|
|
|
togglePasswordType() {
|
|
this.passwordType = this.passwordHideShow?.showPassword ? 'password' : 'text';
|
|
}
|
|
togglePasswordType1() {
|
|
this.passwordType1 = this.passwordHideShow1?.showPassword ? 'password' : 'text';
|
|
}
|
|
togglePasswordType2() {
|
|
this.passwordType2 = this.passwordHideShow2?.showPassword ? 'password' : 'text';
|
|
}
|
|
|
|
ngOnInit(): void {
|
|
// Call the method to check if first-time login
|
|
this.checkIfFirstTimeChangePasswordOrNot();
|
|
}
|
|
|
|
checkIfFirstTimeChangePasswordOrNot() {
|
|
const fromMenu = history.state?.['fromMenu'];
|
|
|
|
if (fromMenu) {
|
|
this.isFirstLogin = false;
|
|
} else {
|
|
try {
|
|
const currentUser: any = JSON.parse(this.storageService.getItem('user') || '{}');
|
|
|
|
// Check if user exists and has isFirstLogin flag
|
|
if (currentUser?.user?.isFirstLogin) {
|
|
this.isFirstLogin = true;
|
|
} else {
|
|
this.isFirstLogin = false;
|
|
}
|
|
} catch (error) {
|
|
console.error('Error parsing user data:', error);
|
|
this.isFirstLogin = false;
|
|
}
|
|
}
|
|
}
|
|
|
|
}
|