Advertisement
Guest User

Untitled

a guest
Jul 4th, 2017
96
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 5.53 KB | None | 0 0
  1. let URL_USER_LOGIN = "http://........"
  2.  
  3. //the defaultvalues to store user data
  4. let defaultValues = UserDefaults.standard
  5.  
  6. //the connected views
  7. //don't copy instead connect the views using assistant editor
  8. @IBOutlet weak var labelMessage: UILabel!
  9. @IBOutlet weak var username: UITextField!
  10.  
  11. @IBOutlet weak var password: UITextField!
  12.  
  13. //the button action function
  14. @IBAction func buttonLogin(_ sender: UIButton) {
  15.  
  16. //getting the username and password
  17. let parameters: Parameters=[
  18. "username":username.text!,
  19. "password":password.text!
  20. ]
  21.  
  22. //making a post request
  23. Alamofire.request(URL_USER_LOGIN, method: .post, parameters: parameters).responseJSON
  24. {
  25. response in
  26. //printing response
  27. print(response)
  28.  
  29. //getting the json value from the server
  30. if let result = response.result.value {
  31. let jsonData = result as! NSDictionary
  32.  
  33. //if there is no error
  34. if(!(jsonData.value(forKey: "error") as! Bool)){
  35.  
  36. //getting the user from response
  37. let user = jsonData.value(forKey: "user") as! NSDictionary
  38.  
  39.  
  40. //getting user values
  41. let userId = user.value(forKey: "id") as! Int
  42. let userName = user.value(forKey: "username") as! String
  43. let userEmail = user.value(forKey: "email") as! String
  44. let userNome = user.value(forKey: "nome") as! String
  45. let userCognome = user.value(forKey: "cognome") as! String
  46. let userTelefono = user.value(forKey: "telefono") as! String
  47.  
  48.  
  49.  
  50. //saving user values to defaults
  51. self.defaultValues.set(userId, forKey: "userid")
  52. self.defaultValues.set(userName, forKey: "username")
  53. self.defaultValues.set(userEmail, forKey: "useremail")
  54. self.defaultValues.set(userNome, forKey: "usernome")
  55. self.defaultValues.set(userCognome, forKey: "usercognome")
  56. self.defaultValues.set(userTelefono, forKey: "usertelefono")
  57.  
  58.  
  59. ///prende i valori dei prodotti dalla cella legata a quel username
  60. let prodotti = jsonData.value(forKey: "prodotti") as! NSArray
  61.  
  62.  
  63. let prodottiId_prodotto = prodotti.value(forKey: "id_prodotto") as! NSArray
  64. let prodottiNome_prodotto = prodotti.value(forKey: "nome_prodotto") as! NSArray
  65. let prodottiCategoria = prodotti.value(forKey: "categoria") as! NSArray
  66. let prodottiQuantita = prodotti.value(forKey: "quantita") as! NSArray
  67.  
  68.  
  69.  
  70. //saving i valori di questo username
  71.  
  72. self.defaultValues.set(prodottiId_prodotto, forKey: "id_prodotti")
  73. self.defaultValues.set(prodottiNome_prodotto, forKey: "nome_prodotto")
  74. self.defaultValues.set(prodottiCategoria, forKey: "categoria")
  75. self.defaultValues.set(prodottiQuantita, forKey: "quantita")
  76.  
  77.  
  78.  
  79. //Go to the HomeViewController if the login is sucessful
  80. let ProfiloController = self.storyboard?.instantiateViewController(withIdentifier: "Profilo") as! ProfiloController
  81. self.navigationController?.pushViewController(ProfiloController, animated: true)
  82.  
  83. self.dismiss(animated: false, completion: nil)
  84.  
  85. }else{
  86. //error message in case of invalid credential
  87. let alertController = UIAlertController(title: "Error", message: "Username e password sbagliati", preferredStyle: .alert)
  88. let defaultAction = UIAlertAction(title: "OK", style: .cancel, handler: nil)
  89. alertController.addAction(defaultAction)
  90.  
  91. self.present(alertController, animated: true, completion: nil)
  92. }
  93. }
  94. }
  95. }
  96.  
  97.  
  98.  
  99.  
  100.  
  101.  
  102. override func viewDidLoad() {
  103. super.viewDidLoad()
  104. if defaultValues.string(forKey: "username") != nil{
  105. let ProfiloController = self.storyboard?.instantiateViewController(withIdentifier: "Profilo") as! ProfiloController
  106. self.navigationController?.pushViewController(ProfiloController, animated: true)
  107.  
  108. }
  109. }
  110.  
  111.  
  112. var player: AVPlayer?
  113. override func viewDidAppear(_ animated: Bool) {
  114. super.viewDidAppear(animated)
  115.  
  116.  
  117.  
  118.  
  119.  
  120. let tap = UITapGestureRecognizer(target: self, action: #selector(LoginController1.dismissKeyboard))
  121. view.addGestureRecognizer(tap)
  122. let path = Bundle.main.path(forResource: "introoiphone 7 plus", ofType: "mp4")
  123. player = AVPlayer(url: URL(fileURLWithPath: path!))
  124. player!.actionAtItemEnd = AVPlayerActionAtItemEnd.none;
  125. let playerLayer = AVPlayerLayer(player: player)
  126. playerLayer.frame = self.view.frame
  127. playerLayer.videoGravity = AVLayerVideoGravityResizeAspectFill
  128. self.view.layer.insertSublayer(playerLayer, at: 0)
  129. NotificationCenter.default.addObserver(self, selector: #selector(LoginController1.playerItemDidReachEnd), name: NSNotification.Name.AVPlayerItemDidPlayToEndTime, object: player!.currentItem)
  130. player!.seek(to: kCMTimeZero)
  131. player!.play()
  132.  
  133. }
  134.  
  135. func playerItemDidReachEnd() {
  136. player!.seek(to: kCMTimeZero)
  137. }
  138.  
  139.  
  140.  
  141. func dismissKeyboard(tap: UITapGestureRecognizer) {
  142. print("Keyboard Dismiss Again")
  143. view.endEditing(true)
  144. }
  145. override func didReceiveMemoryWarning() {
  146. super.didReceiveMemoryWarning()
  147. // Dispose of any resources that can be recreated.
  148. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement