Advertisement
Guest User

Untitled

a guest
Jun 4th, 2017
94
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 5.16 KB | None | 0 0
  1. //
  2. // RegisterViewController.swift
  3. // QRCodeReader
  4. //
  5. // Created by Simo Korpikoski on 25/04/17.
  6. // Copyright © 2017 AppCoda. All rights reserved.
  7. //
  8.  
  9. import Foundation
  10. import UIKit
  11.  
  12.  
  13. class RegisterViewController: UIViewController, UITextFieldDelegate {
  14.  
  15.  
  16.  
  17. @IBOutlet weak var userNameTextField: UITextField!
  18. @IBOutlet weak var userEmailTextField: UITextField!
  19. @IBOutlet weak var userPasswordTextField: UITextField!
  20. @IBOutlet weak var repeatPasswordTextField: UITextField!
  21.  
  22. override func viewDidLoad() {
  23. super.viewDidLoad()
  24.  
  25. self.userNameTextField.delegate = self
  26. self.userNameTextField.tag = 0
  27. self.userNameTextField.autocapitalizationType = .words
  28. self.userEmailTextField.delegate = self
  29. self.userEmailTextField.tag = 1
  30. self.userPasswordTextField.delegate = self
  31. self.userPasswordTextField.tag = 2
  32. self.repeatPasswordTextField.delegate = self
  33. self.repeatPasswordTextField.tag = 3
  34.  
  35.  
  36.  
  37. }
  38.  
  39. override func didReceiveMemoryWarning() {
  40. //add stuff
  41. }
  42.  
  43.  
  44.  
  45. @IBAction func registerButtonTapped(_ sender: AnyObject) {
  46.  
  47. let userName = userNameTextField.text;
  48. let userEmail = userEmailTextField.text;
  49. let userPassword = userPasswordTextField.text;
  50. let userRepeatPassword = repeatPasswordTextField.text;
  51.  
  52.  
  53. //Send userdata to server side
  54. let myUrl = NSURL(string: "http://192.168.1.7/Affix/dbConn/userRegister.php");
  55.  
  56.  
  57. let request = NSMutableURLRequest(url:myUrl! as URL);
  58. request.httpMethod = "POST";
  59.  
  60. let postString = "email=\(userEmail!)&password=\(userPassword!)&name=\(userName!)";
  61.  
  62. request.httpBody = postString.data(using: String.Encoding.utf8)
  63.  
  64.  
  65.  
  66.  
  67. let task = URLSession.shared.dataTask(with: request as URLRequest){
  68. data, response, error in
  69.  
  70. if error != nil {
  71. print("error=\(error)")
  72. return
  73. }
  74.  
  75. var err: NSError?
  76. do {
  77. let json = try JSONSerialization.jsonObject(with: data!, options: .mutableContainers) as? NSDictionary
  78.  
  79.  
  80. if let parseJSON = json {
  81. var resultValue:String = parseJSON["status"] as! String;
  82. var alertTitle = String()
  83. print("result: \(resultValue)");
  84.  
  85.  
  86. var isUserRegistered:Bool = false;
  87.  
  88. if(resultValue == "Success"){
  89. isUserRegistered = true;
  90. alertTitle = "Tili lisätty"
  91. } else {
  92. alertTitle = "Virhe"
  93. }
  94.  
  95. var messageToDisplay:String = parseJSON["message"] as! String!;
  96. if(!isUserRegistered) {
  97. messageToDisplay = parseJSON["message"] as! String!;
  98. }
  99.  
  100.  
  101. DispatchQueue.main.async {
  102. //Display alert message with confirmation.
  103.  
  104.  
  105. let myAlert = UIAlertController(title: alertTitle, message:messageToDisplay, preferredStyle: UIAlertControllerStyle.alert);
  106.  
  107. let okAction = UIAlertAction(title:"Ok", style:UIAlertActionStyle.default) {
  108. action in self.dismiss(animated: true, completion: nil);
  109. if(isUserRegistered) {
  110. self.dismiss(animated: true, completion: nil);
  111. DispatchQueue.main.async() {
  112. self.performSegue(withIdentifier: "registered", sender: self)
  113. }
  114. }
  115.  
  116. }
  117. myAlert.addAction(okAction);
  118. self.present(myAlert, animated: true, completion: nil);
  119.  
  120.  
  121. }
  122. }
  123.  
  124.  
  125. } catch let error as NSError {
  126. err = error
  127. }
  128.  
  129. }
  130. task.resume()
  131. }
  132.  
  133. //Hide keyboard when user touches outside the keyboard
  134. override func touchesBegan(_ touches: Set<UITouch>, with event: UIEvent?) {
  135. self.view.endEditing(true)
  136. }
  137.  
  138. //Return key press
  139. func textFieldShouldReturn(_ textField: UITextField) -> Bool
  140. {
  141. // Try to find next responder
  142. if let nextField = textField.superview?.viewWithTag(textField.tag + 1) as? UITextField {
  143. nextField.becomeFirstResponder()
  144. } else {
  145. // Not found, so remove keyboard.
  146. textField.resignFirstResponder()
  147. }
  148. // Do not add a line break
  149. return false
  150. }
  151. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement