Advertisement
Guest User

Untitled

a guest
Jan 25th, 2017
238
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.56 KB | None | 0 0
  1. func signUp(_ email: String, usersname: String, password: String, data: Data!, loginHandler: LoginHandler?) {
  2.  
  3. FIRAuth.auth()?.createUser(withEmail: email, password: password, completion: { (user, error) in
  4.  
  5. if error != nil {
  6. // Show error to user
  7. self.handleFirebaseErrors(err: error as! NSError, loginHandler: loginHandler)
  8.  
  9. } else { // success creating user
  10.  
  11. if user?.uid != nil { // if there is a valid user id
  12.  
  13. // Store user to database
  14. self.setUserInfo(user, usersname: usersname, email: email, password: password, data: data!)
  15.  
  16. // Log In the user
  17. self.login(email: email, password: password, loginHandler: loginHandler)
  18. }
  19. }
  20. })
  21.  
  22. }
  23.  
  24. func saveUser(_ user: FIRUser!, usersname: String, email: String, password: String) {
  25.  
  26. // Create the user dictionary info
  27. let userInfo = ["email": user.email!, "password": password, "usersname": usersname, "uid": user.uid, "photoUrl": String(describing: user.photoURL!)]
  28.  
  29. // create user reference
  30. let userRef = DataService.Instance.dbRef.child("riders").child(user.uid)
  31.  
  32. // Save the user info in the database
  33. userRef.setValue(userInfo)
  34.  
  35. }
  36.  
  37. func login(email: String, password: String, loginHandler: LoginHandler?) {
  38.  
  39. FIRAuth.auth()?.signIn(withEmail: email, password: password, completion: { (user, error) in
  40.  
  41. if error != nil {
  42. self.handleFirebaseErrors(err: error as! NSError, loginHandler: loginHandler)
  43. } else {
  44. loginHandler?(nil, nil)
  45. }
  46. })
  47.  
  48. }
  49.  
  50. let userRef = DataService.Instance.dbRef.child("riders").child(usersname)
  51.  
  52. fatal error: unexpectedly found nil while unwrapping an Optional value
  53.  
  54. let imageUrl = String(user.photoUrl)
  55.  
  56. if FIRAuth.auth()?.currentUser == nil {
  57.  
  58. let vc = UIStoryboard(name: "Rider", bundle: nil).instantiateViewController(withIdentifier: "Login")
  59. present(vc, animated: true, completion: nil)
  60.  
  61. } else {
  62.  
  63. dbRef.child("riders/(FIRAuth.auth()!.currentUser!.uid)").observe(.value, with: { (snapshot) in
  64. DispatchQueue.main.async(execute: {
  65.  
  66.  
  67. let user = User(snapshot: snapshot)
  68. self.username.text = user.usersname
  69. self.email.text = FIRAuth.auth()?.currentUser?.email
  70.  
  71. let imageUrl = String(user.photoUrl)
  72.  
  73. {
  74. "riders" : {
  75. "rider 1" : {
  76. "email" : "rider1@me.com",
  77. "password" : "whatever",
  78. "photoUrl" : "https://firebasestorage.googleapis.com/...",
  79. "usersname" : "rider 1"
  80. }
  81. }
  82. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement