You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 

121 lines
4.0 KiB

//
// ForgetPasswordDOBViewController.swift
// GMERemittance
//
// Created by Sujal on 1/9/18.
// Copyright © 2018 Gobal Money Express Co. Ltd. All rights reserved.
//
import UIKit
class ForgetPasswordDOBViewController: UIViewController {
@IBOutlet weak var textFieldDOB: UITextField!
private var activityIndicator: UIActivityIndicatorView = UIActivityIndicatorView()
private var forgetpasswordviewmodel = ForgetPasswordViewModel()
var userId: String!
let datePicker = UIDatePicker()
override func viewDidLoad() {
super.viewDidLoad()
setUpNavBar(id: 100, title: "")
self.hideKeyboardWhenTappedAround()
datePicker.datePickerMode = .date
textFieldDOB.inputView = datePicker
datePicker.addTarget(self, action: #selector(handleDatePicker(sender:)), for: .valueChanged)
forgetpasswordviewmodel.forgetPasswordConnectionTimeOut.value = nil
/**
connection timeout
*/
forgetpasswordviewmodel.forgetPasswordConnectionTimeOut.bind { [unowned self] in
guard $0 != nil else {
return
}
self.enableUserInteractions()
self.dismissActivityIndicator(activityIndicator: self.activityIndicator)
self.popUpMessage(value: 20)
}
forgetpasswordviewmodel.internetConnection.value = nil
/**
Internet Check
*/
forgetpasswordviewmodel.internetConnection.bind { [unowned self] in
guard $0 != nil else {
return
}
self.enableUserInteractions()
self.dismissActivityIndicator(activityIndicator: self.activityIndicator)
self.popUpMessage(value: 15)
}
/**
Update the request for password forget
*/
forgetpasswordviewmodel.requestAcknowledged.bind { [unowned self] in
guard $0 != nil else {
return
}
self.dismissActivityIndicator(activityIndicator: self.activityIndicator)
self.enableUserInteractions()
guard $0! else {
self.popUpMessageError(value: 10, message: self.forgetpasswordviewmodel.getErrorMessage())
return
}
self.performSegue(withIdentifier: "enterRecoveryCode", sender: nil)
}
}
@objc func handleDatePicker(sender: UIDatePicker) {
let dateFormatter = DateFormatter()
dateFormatter.dateFormat = "dd MMM yyyy"
textFieldDOB.text = dateFormatter.string(from: sender.date)
}
@IBAction func gotoLogin(_ sender: Any) {
let storyboard = UIStoryboard.init(name: "Main", bundle: Bundle.main)
let vController = storyboard.instantiateViewController(withIdentifier: "loginViewController") as! LoginViewController
self.navigationController!.pushViewController(vController, animated: true)
}
@IBAction func submitSecretQuestionAns(_ sender: Any) {
if (textFieldDOB.text?.isBlank)! {
self.popUpMessageError(value: 11, message: "Please enter your date of birth")
} else {
disableUserInteractions()
showActivityIndicator(activityIndicator: activityIndicator)
forgetpasswordviewmodel.setUserId(userId: self.userId)
if textFieldDOB.text! != ""{
forgetpasswordviewmodel.setUserDOB(userDOB: textFieldDOB.text!)
}
forgetpasswordviewmodel.submitDOB()
}
}
override func prepare(for segue: UIStoryboardSegue, sender: Any?) {
if segue.identifier == "enterRecoveryCode" {
let fillcodeViewController = segue.destination as! FillSignUpCodeController
fillcodeViewController.deviceORpassword = 2
}
}
override func didReceiveMemoryWarning() {
super.didReceiveMemoryWarning()
}
}