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.

108 lines
3.7 KiB

6 years ago
  1. //
  2. // ForgetPasswordViewController.swift
  3. // GMERemittance
  4. //
  5. // Created by Sujal on 12/19/17.
  6. // Copyright © 2017 Gobal Money Express Co. Ltd. All rights reserved.
  7. //
  8. import Foundation
  9. import UIKit
  10. class ForgetPasswordViewController: UIViewController {
  11. private var activityIndicator: UIActivityIndicatorView = UIActivityIndicatorView()
  12. private var forgetpasswordviewmodel = ForgetPasswordViewModel()
  13. @IBOutlet weak var textFieldUsername: UITextField!
  14. override func viewDidLoad() {
  15. super.viewDidLoad()
  16. setUpNavBar(id: 100, title: "")
  17. self.hideKeyboardWhenTappedAround()
  18. textFieldUsername.text = UserDefaults.standard.object(forKey: "com.gmeremit.username") as? String
  19. forgetpasswordviewmodel.forgetPasswordConnectionTimeOut.value = nil
  20. /**
  21. connection timeout
  22. */
  23. forgetpasswordviewmodel.forgetPasswordConnectionTimeOut.bind { [unowned self] in
  24. guard $0 != nil else {
  25. return
  26. }
  27. self.enableUserInteractions()
  28. self.dismissActivityIndicator(activityIndicator: self.activityIndicator)
  29. self.popUpMessage(value: 20)
  30. }
  31. forgetpasswordviewmodel.internetConnection.value = nil
  32. /**
  33. Internet Check
  34. */
  35. forgetpasswordviewmodel.internetConnection.bind { [unowned self] in
  36. guard $0 != nil else {
  37. return
  38. }
  39. self.enableUserInteractions()
  40. self.dismissActivityIndicator(activityIndicator: self.activityIndicator)
  41. self.popUpMessage(value: 15)
  42. }
  43. forgetpasswordviewmodel.requestAcknowledged.bind { [unowned self] in
  44. guard $0 != nil else {
  45. return
  46. }
  47. self.dismissActivityIndicator(activityIndicator: self.activityIndicator)
  48. self.enableUserInteractions()
  49. guard $0! else {
  50. self.popUpMessageError(value: 10, message: self.forgetpasswordviewmodel.getErrorMessage())
  51. return
  52. }
  53. if self.forgetpasswordviewmodel.isVerifiedUser! {
  54. self.performSegue(withIdentifier: "enterDOB", sender: nil)
  55. } else {
  56. self.performSegue(withIdentifier: "enterRecoveryCode", sender: nil)
  57. }
  58. }
  59. }
  60. @IBAction func gotoPreviousView(_ sender: Any) {
  61. _ = navigationController?.popViewController(animated: true)
  62. }
  63. @IBAction func checkVerifiedUser(_ sender: Any) {
  64. if (textFieldUsername.text?.isBlank)! {
  65. self.popUpMessageError(value: 11, message: "Please enter your user id")
  66. } else {
  67. disableUserInteractions()
  68. showActivityIndicator(activityIndicator: activityIndicator)
  69. if textFieldUsername.text != ""{
  70. forgetpasswordviewmodel.setUserId(userId: textFieldUsername.text!)
  71. }
  72. forgetpasswordviewmodel.checkUserVerification()
  73. }
  74. }
  75. override func prepare(for segue: UIStoryboardSegue, sender: Any?) {
  76. UserDefaults.standard.set(textFieldUsername.text!, forKey: "com.gmeremit.username")
  77. if segue.identifier == "enterDOB" {
  78. let dobViewController
  79. = segue.destination as! ForgetPasswordDOBViewController
  80. dobViewController.userId = textFieldUsername.text
  81. } else if segue.identifier == "enterRecoveryCode" {
  82. let fillcodeViewController = segue.destination as! FillSignUpCodeController
  83. fillcodeViewController.deviceORpassword = 2
  84. }
  85. }
  86. }