| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215 |
- import { Component, OnInit } from '@angular/core';
- import { LocalStorage } from './../../core/services/local_storage.service';
- import { CONFIG } from '../../config';
- import { FormGroup, FormBuilder, Validators, FormControl } from '@angular/forms';
- import { HyperService } from './../../core/services/http.service';
- import { timer } from 'rxjs/observable/timer';
- import { take, map } from 'rxjs/operators';
- import { Observable } from "rxjs/Observable";
- import "rxjs/add/observable/timer";
- import "rxjs/add/operator/finally";
- import "rxjs/add/operator/takeUntil";
- import "rxjs/add/operator/map";
- import { Subscription } from "rxjs";
- import { TimerObservable } from "rxjs/observable/TimerObservable";
- import { Router } from "@angular/router";
- import { ViewChild, ElementRef } from '@angular/core';
- declare var $: any;
- @Component({
- selector: 'app-signup-modal',
- templateUrl: './signup-modal.component.html',
- styleUrls: ['./signup-modal.component.scss']
- })
- export class SignupModalComponent implements OnInit {
- @ViewChild('closeBtn') closeBtn: ElementRef;
- otpform: FormGroup;
- otp:any;
- otp1: any;
- otp2: any;
- otp3: any;
- otp4: any;
- section: number;
- user_mobile: any;
- countdown: string;
- loader_timing: any;
- loader_delay: any;
- otp_error: string = '';
- otp_sucess: boolean = false;
- resend:boolean=false;
- resend_enable:boolean=false;
- sub: Subscription;
- stream$;
- isTimerRunning: boolean = false;
- constructor(private formBuilder: FormBuilder, private server: HyperService, private router: Router) {
- console.log("here")
- }
- ngOnInit() {
- // $('#fogotexampleModalCenter').modal({
- // backdrop: 'static',
- // keyboard: false
- // })
- this.formBuild();
- }
-
- formBuild() {
- this.otpform = this.formBuilder.group({
- otp1: [null, Validators.compose([Validators.required])],
- otp2: [null, Validators.compose([Validators.required])],
- otp3: [null, Validators.compose([Validators.required])],
- otp4: [null, Validators.compose([Validators.required])]
- });
- }
- accept() {
- this.section = 1;
- console.log(this.section)
- this.signUpOtp();
- }
- reject() {
- this.section=null;
- $("#exampleModalCenter").modal('hide');
- this.countdown = '';
- this.otpform.markAsUntouched();
- CONFIG.forgot_cont = false;
- console.log(CONFIG.forgot_cont)
- this.resend_enable=false;
- this.otp_error = '';
- this.otp1 = ''
- this.otp2=""
- this.otp3=""
- this.otp4=""
- }
- modelClose(){
- this.countdown=''
- this.section =null;
- }
- resendOtp() {
- this.resend=true;
- this.resend_enable=false;
- this.signUpOtp();
- }
- contactDealer(){
- this.section =null;
- }
- signUpOtp() {
- this.server.post("user/signup_otp", {
- username: LocalStorage.getValue('signup_user').username
- }).then((data) => {
- console.log(data)
- if (data.status == 200 && data.result.response == "success") {
- let user_data = LocalStorage.getValue('signup_user');
- console.log(user_data.mobile,user_data.mobile.substring(0, 2)),user_data.mobile.substring(7, 10)
- this.user_mobile = user_data.mobile.substring(0, 3) + 'xxxx' + user_data.mobile.substring(7, 10);
- this.TimeSet(data.result.data.otp_expiry)
- } else if (data.result.response == "failed") {
- }
- })
- }
- TimeSet(Time) {
- this.loader_timing = Time * 60;
- this.loader_delay = this.loader_timing / 2;
- console.log('Testarstars', this.loader_timing)
- console.log('Testarstars', this.loader_delay)
- const interval = 1000;
- const duration = 10 * 6000 * Time;
- this.stream$ = Observable.timer(0, interval)
- .finally(() => this.onclose())
- .takeUntil(Observable.timer(duration + interval))
- .map(value => duration - value * interval);
- this.sub = this.stream$.subscribe(value => this.formatMin(value));
- }
- onclose() {
- this.countdown=''
- this.resend_enable=true;
- }
- formatMin(s) {
- let ms = s % 1000;
- s = (s - ms) / 1000;
- let secs = s % 60;
- s = (s - secs) / 60;
- let mins = s % 60;
- let hrs = (s - mins) / 60;
- if (hrs > 0) {
- this.countdown = hrs + ':' + mins + ':' + secs;
- } else {
- this.countdown = mins + ':' + secs;
- }
- }
- onInputChange(){
- console.log("here1111")
- $('input.password').on('keyup', function() {
- if ($(this).val()) {
- $(this).next().focus();
- }
- });
- }
- onSubmitOtp() {
- if (this.otpform.valid) {
- this.server.post("user/otp_validation", {
- otp: (this.otp1.toString())+(this.otp2.toString())+(this.otp3.toString())+(this.otp4.toString()),
- type: 'register',
- username: LocalStorage.getValue('signup_user').username
- }).then((data) => {
- console.log(data)
- if (data.status == 200 && data.result.response == "success") {
- console.log('OTP VERIFIED')
- this.otp_sucess = true;
- LocalStorage.setValue('token', data.result.access_token);
- LocalStorage.setValue('forgot', 'register');
- } else if (data.result.response == "failed") {
- console.log('OTP not VERIFIED'+data.result.message)
- this.otp_error = data.result.message;
- }
- })
- } else {
- this.validateAllFormFields(this.otpform);
- }
- }
- gotoSetPassword() {
- this.router.navigateByUrl('setpassword');
- }
- validateAllFormFields(formGroup: FormGroup) {
- Object.keys(formGroup.controls).forEach(field => {
- console.log(field);
- const control = formGroup.get(field);
- if (control instanceof FormControl) {
- control.markAsTouched({
- onlySelf: true
- });
- } else if (control instanceof FormGroup) {
- this.validateAllFormFields(control);
- }
- });
- }
- onCancelOtp(){
- this.section=null;
- $("#exampleModalCenter").modal('hide');
- this.countdown = '';
- this.otpform.markAsUntouched();
- CONFIG.forgot_cont = false;
- console.log(CONFIG.forgot_cont)
- this.sub.unsubscribe()
- this.sub = this.stream$.subscribe(0 , this.formatMin(0));
- this.resend_enable=false;
- this.otp_error = '';
- this.otp1 = ''
- this.otp2=""
- this.otp3=""
- this.otp4=""
- }
- }
|