mirror of
https://bitbucket.org/vendoo/vendoo_v1.0.git
synced 2025-12-25 19:57:41 +00:00
Alerts and validation have been added to posting process to prevent bad input, as well as alerts to network selection, to alert user when no networks have been selected or authorized
59 lines
2.0 KiB
Swift
59 lines
2.0 KiB
Swift
//
|
|
// FirebaseService.swift
|
|
// Vendoo
|
|
//
|
|
// This class is responsible for initializing a new user, as well as managing web request to both firebase database and data storage
|
|
// Created by Okechi Onyeje on 6/2/16.
|
|
// Copyright © 2016 Okechi Onyeje. All rights reserved.
|
|
//
|
|
|
|
import Foundation
|
|
import Firebase
|
|
import Locksmith
|
|
import FirebaseStorage
|
|
import TYMActivityIndicatorView
|
|
|
|
|
|
class FirebaseManager: NSObject {
|
|
|
|
let ref = FIRDatabase.database().reference()
|
|
let user_email = ((NSUserDefaults.standardUserDefaults().objectForKey("email") as? String)!).stringByReplacingOccurrencesOfString(".", withString: "_")
|
|
let storage = FIRStorage.storage()
|
|
var indicator = UIActivityIndicatorView(activityIndicatorStyle: UIActivityIndicatorViewStyle.WhiteLarge)
|
|
var firGroup = dispatch_group_create()
|
|
|
|
//let key: String!
|
|
|
|
override init(){
|
|
super.init()
|
|
indicator.color = UIColor.blueColor()
|
|
//check if user has been created
|
|
dispatch_group_enter(self.firGroup)
|
|
self.ref.child("Users").observeSingleEventOfType(.Value, withBlock: { snapshot in
|
|
// do some stuff once
|
|
|
|
if(!snapshot.hasChild(self.user_email)){
|
|
let user = ["name": (NSUserDefaults.standardUserDefaults().objectForKey("name") as? String)!, "user_Listings": "", "listing_Keys": "", "favorite_listings_keys": ""]
|
|
self.ref.child("Users").child(self.user_email).setValue(user, withCompletionBlock: {
|
|
(error, reference) -> Void in
|
|
|
|
dispatch_group_leave(self.firGroup)
|
|
})
|
|
|
|
}else{
|
|
dispatch_group_leave(self.firGroup)
|
|
}
|
|
})
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
//string adjustment functions
|
|
extension FirebaseManager {
|
|
func adjustUserEmail(aString: String) -> String {
|
|
return aString.stringByReplacingOccurrencesOfString(".", withString: "_")
|
|
}
|
|
}
|