Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- @IBOutlet weak var firstNameField: UITextField!
- @IBOutlet weak var lastNameField: UITextField!
- @IBOutlet weak var emailField: UITextField!
- @IBOutlet weak var passwordField: UITextField!
- @IBOutlet weak var reenterPasswordField: UITextField!
- @IBOutlet weak var imageView: UIImageView!
- @IBOutlet weak var nextButton: UIButton!
- let picker = UIImagePickerController()
- var userStorage: FIRStorageReference!
- var ref: FIRDatabaseReference!
- override func viewDidLoad() {
- super.viewDidLoad()
- picker.delegate = self
- let storage = FIRStorage.storage().reference(forURL: "gs://boost-65792.appspot.com")
- ref = FIRDatabase.database().reference()
- userStorage = storage.child("users")}
- @IBAction func AddPhotoPressed(_ sender: Any) {
- picker.allowsEditing = true
- picker.sourceType = .photoLibrary
- present(picker, animated: true, completion: nil)
- }
- func imagePickerController(_ picker: UIImagePickerController, didFinishPickingMediaWithInfo info: [String : Any]) {
- if let image = info[UIImagePickerControllerEditedImage] as? UIImage {
- self.imageView.image = image
- nextButton.isHidden = false
- }
- self.dismiss(animated: true, completion: nil)
- }
- @IBAction func nextButtonPressed(_ sender: Any) {
- guard firstNameField.text != "",lastNameField.text != "", emailField.text != "", passwordField.text != "", reenterPasswordField.text != "" else {
- return}
- if passwordField.text == reenterPasswordField.text {
- FIRAuth.auth()?.createUser(withEmail: emailField.text!, password: passwordField.text!, completion: { (user, error) in
- if let error = error {
- print(error.localizedDescription)
- }
- if let user = user {
- let changeRequest = FIRAuth.auth()!.currentUser!.profileChangeRequest()
- changeRequest.displayName = self.firstNameField.text!; changeRequest.displayName = self.lastNameField.text!
- changeRequest.commitChanges(completion: nil)
- let imageRef = self.userStorage.child("(user.uid).jpg")
- let data = UIImageJPEGRepresentation(self.imageView.image!, 0.5)
- let uploadTask = imageRef.put(data!, metadata: nil, completion: { (metadata, err) in
- if err != nil {
- print(err?.localizedDescription)
- }
- imageRef.downloadURL(completion: { (url, er) in
- if er != nil {
- print(er!.localizedDescription)
- }
- if let url = url {
- let userInfo: [String : Any] = ["uid" : user.uid,
- "first name" : self.firstNameField.text!, "last name" : self.lastNameField.text!, "urlToImage" : url.absoluteString]
- self.ref.child("users").child(user.uid).setValue(userInfo)
- let vc = UIStoryboard(name: "Main", bundle: nil).instantiateViewController(withIdentifier: "usersVC")
- self.present(vc, animated: true, completion: nil)
- }
- })
- })
- uploadTask.resume()
- }
- })
- } else {
- print("Password does not match") }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement