{"version":3,"file":"src_app_pages_changepassword_changepassword_module_ts.0436c737bcdabace.js","mappings":"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","sources":["./src/app/pages/changepassword/changepassword.component.ts","./src/app/pages/changepassword/changepassword.component.html","./src/app/pages/changepassword/changepassword.module.ts"],"sourcesContent":["import { Component, OnInit } from '@angular/core';\nimport { UntypedFormGroup, UntypedFormBuilder, Validators } from '@angular/forms';\nimport { DomSanitizer } from '@angular/platform-browser';\nimport { ActivatedRoute, Router } from '@angular/router';\nimport { AppSettings, Settings } from 'src/app/app.settings';\nimport { EncryptDecrypt } from '../../theme//directives/encrypt_decrypt';\nimport { AuthService } from '../../auth.service';\nimport { MatSnackBar } from '@angular/material/snack-bar';\nimport { AppService } from 'src/app/app.service';\nimport { matchingPasswords, emailValidator } from 'src/app/theme/utils/app-validators';\n\n@Component({\n  selector: 'app-changepassword',\n  templateUrl: './changepassword.component.html',\n  styleUrls: ['./changepassword.component.scss']\n})\nexport class ChangepasswordComponent implements OnInit {\n\n\n  public changeForm!: UntypedFormGroup;\n  public hide = true;\n  public bgImage: any;\n  public settings: Settings;\n  public returnUrl: string;\n  public loading = false;\n  constructor(public fb: UntypedFormBuilder,\n    public router: Router,\n    private route: ActivatedRoute,\n    private sanitizer: DomSanitizer,\n    public appSettings: AppSettings,\n    private authService: AuthService,\n    private encrypt: EncryptDecrypt,\n    public appService: AppService,\n    public snackBar: MatSnackBar) {\n    this.settings = this.appSettings.settings;\n   // this.authService.logout();\n    this.appService.loggedin = false;\n\n    // get return url from route parameters or default to '/'\n    this.returnUrl = this.route.snapshot.queryParams.returnUrl || '/';\n  }\n\n  ngOnInit(): void {\n    this.bgImage = this.sanitizer.bypassSecurityTrustStyle('url(assets/images/others/login.jpg)');\n    this.changeForm = this.fb.group({\n      newpassword: ['', Validators.compose([Validators.required,Validators.pattern(\n        /^(?=.*[A-Z])(?=.*[a-z])(?=.*[0-9])(?=.*[!@#\\$%\\^&\\*])(?=.{6,})/\n      ), Validators.minLength(6)])],\n      confirmpassword: ['', Validators.compose([Validators.required, Validators.minLength(6)])],\n    });\n    this.returnUrl = this.route.snapshot.queryParams[\"confirm\"];\n\n    console.log(this.returnUrl);\n \n\n    const req = {\n      Link: this.returnUrl\n    }\n\n    this.appService.VerifyResetLink(req)\n        .subscribe({\n          next: (data) => {\n\n\n\n            const body = JSON.parse(JSON.stringify(data));\n            if (body.Response === \"\") {\n              localStorage.setItem('TamuApp',this.encrypt.Encrypt(JSON.stringify(body)));\n              \n            }\n            else \n            {\n              this.snackBar.open(body.Response, '×', { panelClass: 'error', verticalPosition: 'top', duration: 4000 });\n              this.router.navigate(['login']);\n            }\n\n          },\n          error: (e) => {\n            this.snackBar.open(e.error, 'X', { panelClass: 'error', verticalPosition: 'top', duration: 4000 });\n            this.router.navigate(['login']);\n          },\n          complete: () => {\n\n          }\n        })\n\n\n\n\n\n \n\n\n  }\n\n  public onResetFormSubmit(): void {\n  \n    if (this.changeForm.valid) {\n    \n\n      if (this.changeForm.value.newpassword !== this.changeForm.value.confirmpassword) {\n       \n   \n        const error = \"Passwords don't match\";\n        \n        this.snackBar.open(error, '×', { panelClass: 'error', verticalPosition: 'top', duration: 6000 });\n\n        return;\n      }\n\n      this.loading = true;\n      let username=\"\";\n\n      if (localStorage.getItem('TamuApp')) {\n        const TamuApp = JSON.parse(this.encrypt.Decrypt(localStorage.getItem('TamuApp')));\n        username = TamuApp.Username;\n      }\n\n\n      const req = {\n        Username: username,\n        Password: this.changeForm.value.newpassword \n      }\n\n      this.appService.ChangeFirstPassword(req)\n        .subscribe({\n          next: (data) => {\n\n            if (data === \"\") {\n\n              this.snackBar.open('Password changed successfully, proceed to login.', '×', { panelClass: 'success', verticalPosition: 'top', duration: 6000 });\n              this.router.navigate(['login']);\n            } else {\n\n              if (data != null)\n              this.snackBar.open(data.toString(), '×', { panelClass: 'error', verticalPosition: 'top', duration: 4000 });\n            }\n\n          },\n          error: (e) => {\n            this.snackBar.open(e.error, 'X', { panelClass: 'error', verticalPosition: 'top', duration: 4000 });\n          },\n          complete: () => {\n\n          }\n        })\n    }\n\n  }\n  public backtologin(): void {\n    this.authService.logout();\n    this.router.navigate(['login']);\n  }\n\n}\n","<div class=\"px-3 py-5\">\n    <div class=\"theme-container\"> \n        <mat-card class=\"p-0 o-hidden\">\n            <div fxLayout=\"row wrap\"> \n                <div fxFlex=\"100\" fxFlex.gt-sm=\"50\" class=\"p-0\" [style.background-image]=\"bgImage\" class=\"bg-cover\"> \n                </div> \n                <div fxFlex=\"100\" fxFlex.gt-sm=\"50\" class=\"py-3\" ngClass.gt-sm=\"px-5\" ngClass.sm=\"px-3\" ngClass.xs=\"px-3\">  \n                    \n                  <h1 class=\"secondary-font\">Set your password</h1>  \n                        \n                  <form [formGroup]=\"changeForm\" (ngSubmit)=\"onResetFormSubmit()\">\n                    \n                    <mat-form-field appearance=\"outline\" class=\"w-100 mt-2\">\n                        <mat-icon matPrefix class=\"mr-1 text-muted\">key</mat-icon>\n                        <mat-label>New password</mat-label>\n                        <input matInput placeholder=\"New password\" formControlName=\"newpassword\" required\n                            type=\"password\">\n                        <mat-error *ngIf=\"changeForm.controls.newpassword.errors?.required\">New password is required\n                        </mat-error>\n                       \n                        <mat-error *ngIf=\"changeForm.controls.newpassword.hasError('pattern')\">Must contain at least one special, one uppercase,one lowercase character and more than 6 characters</mat-error>\n                    </mat-form-field>\n                    <mat-form-field appearance=\"outline\" class=\"w-100 mt-2\">\n                        <mat-icon matPrefix class=\"mr-1 text-muted\">key</mat-icon>\n                        <mat-label>Confirm password</mat-label>\n                        <input matInput placeholder=\"Confirm password\" formControlName=\"confirmpassword\" required\n                            type=\"password\">\n                        <mat-error *ngIf=\"changeForm.controls.confirmpassword.errors?.required\">Confirm password is\n                            required</mat-error>\n\n                    </mat-form-field>\n\n                    <div class=\"text-center mt-2\">\n                        <button mat-raised-button color=\"accent\" class=\"uppercase\" type=\"submit\"\n                            [disabled]=\"loading\">\n                            Set Password\n                        </button>\n                    </div>\n\n                </form>\n                    <div fxLayout=\"row\" fxLayoutAlign=\"end center\">\n                        <button mat-button (click)=\"backtologin()\">\n                            <mat-icon class=\"text-muted\">keyboard_backspace</mat-icon>\n                            <span class=\"mx-1\">Back to login page</span>\n                        </button> \n                    </div>  \n                </div> \n            </div> \n        </mat-card>  \n    </div>\n</div>   \n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { RouterModule, Routes } from '@angular/router';\r\nimport { SharedModule } from '../../shared/shared.module';\r\nimport { ChangepasswordComponent } from './changepassword.component';\r\n\r\nexport const routes: Routes = [\r\n  { path: '', component: ChangepasswordComponent, pathMatch: 'full' }\r\n];\r\n\r\n@NgModule({\r\n    declarations: [ChangepasswordComponent],\r\n    imports: [\r\n      CommonModule,\r\n      RouterModule.forChild(routes),\r\n      SharedModule\r\n    ]\r\n  })\r\n  export class ChangepasswordModule { }\r\n  "],"names":["Validators","i0","ChangepasswordComponent","constructor","fb","router","route","sanitizer","appSettings","authService","encrypt","appService","snackBar","settings","loggedin","returnUrl","snapshot","queryParams","ngOnInit","bgImage","bypassSecurityTrustStyle","changeForm","group","newpassword","compose","required","pattern","minLength","confirmpassword","console","log","req","Link","VerifyResetLink","subscribe","next","data","body","JSON","parse","stringify","Response","localStorage","setItem","Encrypt","open","panelClass","verticalPosition","duration","navigate","error","e","complete","onResetFormSubmit","valid","value","loading","username","getItem","TamuApp","Decrypt","Username","Password","ChangeFirstPassword","toString","backtologin","logout","selectors","decls","vars","consts","template","ctx","CommonModule","RouterModule","SharedModule","routes","path","component","pathMatch","ChangepasswordModule","forChild","declarations","imports","i1"],"sourceRoot":"webpack:///"}