Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- //
- // ViewController.swift
- //
- //
- // Created by Maya Sheree on 3/18/16.
- //
- //
- import UIKit
- import Firebase
- class ViewController: UIViewController {
- let firebase = Firebase(url: "https://realtimeappone.firebaseio.com")
- @IBOutlet weak var username: UITextField!
- @IBOutlet weak var password: UITextField!
- var newUSer = false
- var usrnme = String()
- override func viewDidLoad() {
- super.viewDidLoad()
- // Do any additional setup after loading the view.
- }
- override func viewDidAppear(animated: Bool) {
- super.viewDidAppear(animated)
- if firebase.authData != nil
- {
- self.getUsername()
- }
- }
- @IBAction func signin(sender: AnyObject) {
- logUser()
- }
- @IBAction func signup(sender: AnyObject) {
- if let em = username.text where em != "" , let pwd = password.text where pwd != " "
- {
- firebase.createUser(em, password: pwd, withCompletionBlock: { error in
- if error != nil
- {
- print(error.localizedDescription)
- }
- else {
- self.requestUserName()
- }
- })
- }
- else {
- print("Fill in fields")
- }
- }
- func logUser() {
- if let em = username.text where em != "" , let pwd = password.text where pwd != "" {
- firebase.authUser(em, password: pwd, withCompletionBlock: { error, authData in
- if error != nil
- {
- print(error.localizedDescription)
- }
- else {
- print("logged in \(authData.uid)")
- let uid = authData.uid
- if self.newUSer {
- self.firebase.childByAppendingPath("users").childByAppendingPath(uid).updateChildValues(["name":self.usrnme, "isOnline":true])
- self.performSegueWithIdentifier("newVC", sender: self)
- }
- else {
- self.firebase.childByAppendingPath("users").childByAppendingPath(uid).updateChildValues(["isOnline":true])
- self.getUsername()
- }
- }
- })
- }
- else {
- print("Fill in fields")
- }
- }
- override func prepareForSegue(segue: UIStoryboardSegue, sender: AnyObject?) {
- if segue.identifier == "newVC"
- {
- let navController = segue.destinationViewController as! UINavigationController
- if let postTBV = navController.viewControllers.first as? PostTBV
- {
- postTBV.currentUser = self.usrnme
- }
- }
- }
- func requestUserName() {
- var usernametextField: UITextField?
- let alert = UIAlertController(title: "Welcome", message: "Please Enter a Username", preferredStyle: .Alert)
- let action = UIAlertAction(title: "OK", style: .Default) { (UIAlertAction) -> Void in
- if let usernmae = usernametextField?.text where usernmae != ""
- {
- print(usernmae)
- self.usrnme = usernmae
- self.newUSer = true
- self.logUser()
- }
- }
- alert.addAction(action)
- alert.addTextFieldWithConfigurationHandler { (username:UITextField) -> Void in
- usernametextField = username
- }
- self.presentViewController(alert, animated: true, completion: nil)
- }
- func getUsername()
- {
- self.firebase.childByAppendingPath("users").childByAppendingPath(firebase.authData.uid).observeSingleEventOfType(.Value) { (snapshot:FDataSnapshot!) -> Void in
- self.usrnme = (snapshot.value as! NSDictionary)["name"] as! String
- print(snapshot)
- self.performSegueWithIdentifier("newVC", sender: nil)
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement