|
|
|
|
import { Component, OnInit, ViewChild, ChangeDetectorRef, OnDestroy } from '@angular/core';
|
|
|
|
|
import { CommonService } from 'src/app/hmg-common/services/common/common.service';
|
|
|
|
|
import { AuthenticationService } from 'src/app/hmg-common/services/authentication/authentication.service';
|
|
|
|
|
import { Router } from '@angular/router';
|
|
|
|
|
import { AlertController } from '@ionic/angular';
|
|
|
|
|
import { TranslatorService } from 'src/app/hmg-common/services/translator/translator.service';
|
|
|
|
|
import { CheckUserAuthenticationResponse } from 'src/app/hmg-common/services/authentication/models/check-user-auth.response';
|
|
|
|
|
import { SmsReaderService } from 'src/app/hmg-common/services/sms/sms-reader.service';
|
|
|
|
|
import { ForgetPassword } from '../models/forget.password';
|
|
|
|
|
import { LoginModel } from '../models/LoginModel';
|
|
|
|
|
import { SharedDataService } from 'src/app/hmg-common/services/shared-data-service/shared-data.service';
|
|
|
|
|
import {LoginComponent} from "src/app/authentication/login/login.component";
|
|
|
|
|
import { Password } from '../models/password';
|
|
|
|
|
import { AuthenticatedUser } from "src/app/hmg-common/services/authentication/models/authenticated-user";
|
|
|
|
|
//import { FormBuilder, FormGroup, Validators } from '@angular/forms';
|
|
|
|
|
|
|
|
|
|
@Component({
|
|
|
|
|
selector: 'app-change-password',
|
|
|
|
|
templateUrl: './change-password.component.html',
|
|
|
|
|
styleUrls: ['./change-password.component.scss'],
|
|
|
|
|
})
|
|
|
|
|
export class ChangePasswordComponent implements OnInit {
|
|
|
|
|
private loginData = new LoginModel();
|
|
|
|
|
public P_NEW_PASSWORD: string;
|
|
|
|
|
public P_Confirm_NEW_PASSWORD : string;
|
|
|
|
|
public P_OLD_PASSWORD : string;
|
|
|
|
|
public P_USER_NAME : string;
|
|
|
|
|
public logo = "assets/icon/login/lock.png";
|
|
|
|
|
|
|
|
|
|
userData: any = {};
|
|
|
|
|
public isExpiredPwd: boolean = false;
|
|
|
|
|
public NEW_PASSWORD: boolean = false;
|
|
|
|
|
public Confirm_NEW_PASSWORD: boolean = false;
|
|
|
|
|
public OLD_PASSWORD: boolean = false;
|
|
|
|
|
//public profile_form: FormGroup;
|
|
|
|
|
|
|
|
|
|
constructor(
|
|
|
|
|
public cs: CommonService,
|
|
|
|
|
public authService: AuthenticationService,
|
|
|
|
|
public router: Router,
|
|
|
|
|
public alertController: AlertController,
|
|
|
|
|
public ts: TranslatorService,
|
|
|
|
|
public smsService: SmsReaderService,
|
|
|
|
|
public changeDetector: ChangeDetectorRef,
|
|
|
|
|
public sharedData: SharedDataService,
|
|
|
|
|
// public formBuilder: FormBuilder,
|
|
|
|
|
) {
|
|
|
|
|
console.log("change password constructor");
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
ngOnInit() {
|
|
|
|
|
console.log("change password oninit");
|
|
|
|
|
this.isExpiredPwd =
|
|
|
|
|
this.sharedData.getSharedData(Password.IS_EXPIRED_PSW) || false;
|
|
|
|
|
const data = this.sharedData.getSharedData(AuthenticationService.LOGIN_DATA, false);
|
|
|
|
|
this.P_USER_NAME =data.P_USER_NAME;
|
|
|
|
|
console.log(this.isExpiredPwd);
|
|
|
|
|
console.log(this.P_USER_NAME);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// this.profile_form = this.formBuilder.group({
|
|
|
|
|
// password: ['', Validators.compose([Validators.minLength(8)])]
|
|
|
|
|
// });
|
|
|
|
|
// this.authService
|
|
|
|
|
// .loadAuthenticatedUser()
|
|
|
|
|
// .subscribe((user: AuthenticatedUser) => {
|
|
|
|
|
// if (user) {
|
|
|
|
|
// this.userData = user;
|
|
|
|
|
// this.P_USER_NAME = user.EMPLOYEE_NUMBER;
|
|
|
|
|
// console.log(user);
|
|
|
|
|
// } else {
|
|
|
|
|
// console.log(user);
|
|
|
|
|
// }
|
|
|
|
|
// });
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
private checkUserResult: CheckUserAuthenticationResponse;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
submit(){
|
|
|
|
|
console.log(this.isExpiredPwd);
|
|
|
|
|
if(this.isExpiredPwd){
|
|
|
|
|
this.expiredPassword();
|
|
|
|
|
}else{
|
|
|
|
|
this.changePassword();
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public expiredPassword(){
|
|
|
|
|
const data = this.sharedData.getSharedData(AuthenticationService.LOGIN_DATA, false);
|
|
|
|
|
//this.loginData.P_USER_NAME = this.P_USER_NAME;
|
|
|
|
|
let request:Password = new Password();
|
|
|
|
|
request.P_OLD_PASSWORD=this.P_OLD_PASSWORD;
|
|
|
|
|
request.P_Confirm_NEW_PASSWORD=this.P_NEW_PASSWORD;
|
|
|
|
|
request.P_NEW_PASSWORD=this.P_Confirm_NEW_PASSWORD;
|
|
|
|
|
request.P_USER_NAME = this.P_USER_NAME;
|
|
|
|
|
|
|
|
|
|
this.authService.submitExpiredPassword(
|
|
|
|
|
request,
|
|
|
|
|
() => {
|
|
|
|
|
//this.sendSMSForForgotPassword();
|
|
|
|
|
}, this.ts.trPK('general', 'ok')).subscribe((result: CheckUserAuthenticationResponse) => {
|
|
|
|
|
if (this.cs.validResponse(result)) {
|
|
|
|
|
this.checkUserResult = result;
|
|
|
|
|
console.log(result);
|
|
|
|
|
this.cs.toastPK("changePassword","successChange");
|
|
|
|
|
this.sharedData.setSharedData(false,Password.IS_EXPIRED_PSW);
|
|
|
|
|
this.cs.openLogin();
|
|
|
|
|
}
|
|
|
|
|
});
|
|
|
|
|
}
|
|
|
|
|
public changePassword(){
|
|
|
|
|
const data = this.sharedData.getSharedData(AuthenticationService.LOGIN_DATA, false);
|
|
|
|
|
//this.loginData.P_USER_NAME = this.P_USER_NAME;
|
|
|
|
|
let request:Password = new Password();
|
|
|
|
|
request.P_OLD_PASSWORD=this.P_OLD_PASSWORD;
|
|
|
|
|
request.P_Confirm_NEW_PASSWORD=this.P_NEW_PASSWORD;
|
|
|
|
|
request.P_NEW_PASSWORD=this.P_Confirm_NEW_PASSWORD;
|
|
|
|
|
request.P_USER_NAME = this.P_USER_NAME;
|
|
|
|
|
|
|
|
|
|
this.authService.submitChangePassword(
|
|
|
|
|
request,
|
|
|
|
|
() => {
|
|
|
|
|
//this.sendSMSForForgotPassword();
|
|
|
|
|
}, this.ts.trPK('general', 'ok')).subscribe((result: CheckUserAuthenticationResponse) => {
|
|
|
|
|
if (this.cs.validResponse(result)) {
|
|
|
|
|
this.checkUserResult = result;
|
|
|
|
|
console.log(result);
|
|
|
|
|
this.cs.toastPK("changePassword","successChange");
|
|
|
|
|
this.cs.openHome();
|
|
|
|
|
}
|
|
|
|
|
});
|
|
|
|
|
}
|
|
|
|
|
onChangeCNP(){
|
|
|
|
|
// in UAT Alow to the length of password less than 8
|
|
|
|
|
// so if we ready to go life change it to >= 8
|
|
|
|
|
if (this.P_Confirm_NEW_PASSWORD.length >= 3) {
|
|
|
|
|
this.Confirm_NEW_PASSWORD=true;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
}else{
|
|
|
|
|
this.Confirm_NEW_PASSWORD=false;
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
onChangeNP(){
|
|
|
|
|
// in UAT Alow to the length of password less than 8
|
|
|
|
|
// so if we ready to go life change it to >= 8
|
|
|
|
|
if (this.P_NEW_PASSWORD.length >= 3) {
|
|
|
|
|
this.NEW_PASSWORD=true;
|
|
|
|
|
|
|
|
|
|
}else{
|
|
|
|
|
this.NEW_PASSWORD=false;
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
onChangeOP(){
|
|
|
|
|
// in UAT Alow to the length of password less than 8
|
|
|
|
|
// so if we ready to go life change it to >= 8
|
|
|
|
|
if (this.P_OLD_PASSWORD.length >= 3) {
|
|
|
|
|
this.OLD_PASSWORD=true;
|
|
|
|
|
|
|
|
|
|
}else{
|
|
|
|
|
this.OLD_PASSWORD=false;
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
}
|