From aa2c54afd8ff61192824feb8236bdece28bd7671 Mon Sep 17 00:00:00 2001 From: Okechi Onyeje Date: Thu, 10 Nov 2016 21:21:09 -0500 Subject: [PATCH] Added full support for ebay and etsy limited notifications --- .../UserInterfaceState.xcuserstate | Bin 30436 -> 30846 bytes .../xcdebugger/Breakpoints_v2.xcbkptlist | 16 +-- Vendoo/HomeViewController.swift | 94 ++++++++++++++---- Vendoo/NotificationsViewController.swift | 44 +++++++- 4 files changed, 128 insertions(+), 26 deletions(-) diff --git a/Vendoo.xcworkspace/xcuserdata/okechi.xcuserdatad/UserInterfaceState.xcuserstate b/Vendoo.xcworkspace/xcuserdata/okechi.xcuserdatad/UserInterfaceState.xcuserstate index d191c9fd6e5fa3388e857d5eaefaff8bf8ebb566..6518c2a24e76220abc8e28cb48002ea9fc984a4f 100644 GIT binary patch delta 13277 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 DWH_&< diff --git a/Vendoo.xcworkspace/xcuserdata/okechi.xcuserdatad/xcdebugger/Breakpoints_v2.xcbkptlist b/Vendoo.xcworkspace/xcuserdata/okechi.xcuserdatad/xcdebugger/Breakpoints_v2.xcbkptlist index d3ff26d..eb86d1b 100644 --- a/Vendoo.xcworkspace/xcuserdata/okechi.xcuserdatad/xcdebugger/Breakpoints_v2.xcbkptlist +++ b/Vendoo.xcworkspace/xcuserdata/okechi.xcuserdatad/xcdebugger/Breakpoints_v2.xcbkptlist @@ -282,7 +282,9 @@ startingColumnNumber = "9223372036854775807" endingColumnNumber = "9223372036854775807" startingLineNumber = "403" - endingLineNumber = "403"> + endingLineNumber = "403" + landmarkName = "listingHasNewNotifications(_:ebayInfo:amazonInfo:etsyInfo:)" + landmarkType = "5"> + endingLineNumber = "410" + landmarkName = "listingHasNewNotifications(_:ebayInfo:amazonInfo:etsyInfo:)" + landmarkType = "5"> @@ -599,7 +603,7 @@ endingColumnNumber = "9223372036854775807" startingLineNumber = "313" endingLineNumber = "313" - landmarkName = "listingHasNewNotifications(_:ebayInfo:amazonInfo:etsyInfo:)" + landmarkName = "listingHasEnded(_:ebayInfo:amazonInfo:etsyInfo:)" landmarkType = "5"> @@ -615,7 +619,7 @@ endingColumnNumber = "9223372036854775807" startingLineNumber = "322" endingLineNumber = "322" - landmarkName = "listingHasNewNotifications(_:ebayInfo:amazonInfo:etsyInfo:)" + landmarkName = "listingHasEnded(_:ebayInfo:amazonInfo:etsyInfo:)" landmarkType = "5"> @@ -631,7 +635,7 @@ endingColumnNumber = "9223372036854775807" startingLineNumber = "335" endingLineNumber = "335" - landmarkName = "listingHasNewNotifications(_:ebayInfo:amazonInfo:etsyInfo:)" + landmarkName = "listingHasEnded(_:ebayInfo:amazonInfo:etsyInfo:)" landmarkType = "5"> diff --git a/Vendoo/HomeViewController.swift b/Vendoo/HomeViewController.swift index f296422..a1326c5 100644 --- a/Vendoo/HomeViewController.swift +++ b/Vendoo/HomeViewController.swift @@ -232,21 +232,23 @@ extension HomeViewController: ServiceNotificationManagerDelegate { } if (ebayInfo != nil) { - notificationArray.append( - [ + let notification = [ "network": "ebay", "message": (ebayInfo as! [String : AnyObject])["notification"] as! String, "type": (ebayInfo as! [String : AnyObject])["type"] as! String, "seen":false, "key": (ebayInfo as! [String : AnyObject])["listingKey"] as! String, "UUID": NSUUID().UUIDString - ] + ] + + notificationArray.append( + notification as! [String : AnyObject] ) self.endedListings.appendContentsOf( self.userListings.filter({$0.key == ((ebayInfo as! [String : AnyObject])["listingKey"] as! String)})) self.userListings = self.userListings.filter({$0.key != ((ebayInfo as! [String : AnyObject])["listingKey"] as! String)}) let itemsView = self.viewControllers![0] as! ItemTableViewController - self.firebaseManager.ref.child("Users/\(self.firebaseManager.user_email)/user_Listings/\(((ebayInfo as! [String : AnyObject])["listingKey"] as! String))").observeSingleEventOfType( .Value, withBlock: { + /*self.firebaseManager.ref.child("Users/\(self.firebaseManager.user_email)/user_Listings/\(((ebayInfo as! [String : AnyObject])["listingKey"] as! String))").observeSingleEventOfType( .Value, withBlock: { (snapshot) -> Void in var listingDict = snapshot.value as? [String : AnyObject] @@ -254,7 +256,41 @@ extension HomeViewController: ServiceNotificationManagerDelegate { self.firebaseManager.ref.child("Users/\(self.firebaseManager.user_email)/user_Listings/\(((ebayInfo as! [String : AnyObject])["listingKey"] as! String))").setValue(listingDict) itemsView.itemTable.reloadData() + })*/ + + self.firebaseManager.ref.child("Users/\(self.firebaseManager.user_email)").observeSingleEventOfType( .Value, withBlock: { + (snapshot) -> Void in + + var userDict = snapshot.value as? [String : AnyObject] + var notifications = userDict!["notifications"] as? [String: AnyObject] + + if notifications == nil { + userDict!["notifications"] = [((ebayInfo as! [String : AnyObject])["listingKey"] as! String):notification] + }else { + notifications![((ebayInfo as! [String : AnyObject])["listingKey"] as! String)] = notification + userDict!["notifications"] = notifications + } + + var listings = userDict!["user_Listings"] as! [String: AnyObject] + var listingDict = (listings[((ebayInfo as! [String : AnyObject])["listingKey"] as! String)] as! [String : AnyObject]) + listingDict["listingStatus"] = "Ended" + + //save everything back to their respective dictionaries + listings[((ebayInfo as! [String : AnyObject])["listingKey"] as! String)] = listingDict + userDict!["user_Listings"] = listings + + self.firebaseManager.ref.child("Users/\(self.firebaseManager.user_email)").setValue(userDict, withCompletionBlock: { + (error, reference) -> Void in + + if error == nil { + //reload data for notifications + NSUserDefaults.standardUserDefaults().setObject(notificationArray, forKey: "notifications") + itemsView.itemTable.reloadData() + } + }) + }) + } if (amazonInfo != nil) { @@ -271,32 +307,52 @@ extension HomeViewController: ServiceNotificationManagerDelegate { } if (etsyInfo != nil) { + let notification = [ + "network": "etsy", + "message": (etsyInfo as! [String : AnyObject])["notification"] as! String, + "type": "ended", + "seen":false, + "key": (etsyInfo as! [String : AnyObject])["listingKey"] as! String, + "UUID": NSUUID().UUIDString + ] notificationArray.append( - [ - "network": "etsy", - "message": (etsyInfo as! [String : AnyObject])["notification"] as! String, - "type": "ended", - "seen":false, - "key": (etsyInfo as! [String : AnyObject])["listingKey"] as! String, - "UUID": NSUUID().UUIDString - ] + notification as! [String : AnyObject] ) self.endedListings.appendContentsOf( self.userListings.filter({$0.key == ((etsyInfo as! [String : AnyObject])["listingKey"] as! String)})) self.userListings = self.userListings.filter({$0.key != ((etsyInfo as! [String : AnyObject])["listingKey"] as! String)}) let itemsView = self.viewControllers![0] as! ItemTableViewController - self.firebaseManager.ref.child("Users/\(self.firebaseManager.user_email)/user_Listings/\(((etsyInfo as! [String : AnyObject])["listingKey"] as! String))").observeSingleEventOfType( .Value, withBlock: { + self.firebaseManager.ref.child("Users/\(self.firebaseManager.user_email)").observeSingleEventOfType( .Value, withBlock: { (snapshot) -> Void in - var listingDict = snapshot.value as? [String : AnyObject] - listingDict!["listingStatus"] = "Ended" - self.firebaseManager.ref.child("Users/\(self.firebaseManager.user_email)/user_Listings/\(((etsyInfo as! [String : AnyObject])["listingKey"] as! String))").setValue(listingDict) + var userDict = snapshot.value as? [String : AnyObject] + var notifications = userDict!["notifications"] as? [String: AnyObject] + if notifications == nil { + userDict!["notifications"] = [((etsyInfo as! [String : AnyObject])["listingKey"] as! String):notification] + }else { + notifications![((etsyInfo as! [String : AnyObject])["listingKey"] as! String)] = notification + userDict!["notifications"] = notifications + } + var listings = userDict!["user_Listings"] as! [String: AnyObject] + var listingDict = (listings[((etsyInfo as! [String : AnyObject])["listingKey"] as! String)] as! [String : AnyObject]) + listingDict["listingStatus"] = "Ended" + + //save everything back to their respective dictionaries + listings[((etsyInfo as! [String : AnyObject])["listingKey"] as! String)] = listingDict + userDict!["user_Listings"] = listings + + self.firebaseManager.ref.child("Users/\(self.firebaseManager.user_email)").setValue(userDict, withCompletionBlock: { + (error, reference) -> Void in + + if error == nil { + //reload data for notifications + NSUserDefaults.standardUserDefaults().setObject(notificationArray, forKey: "notifications") + itemsView.itemTable.reloadData() + } + }) - //reload data for notifications - NSUserDefaults.standardUserDefaults().setObject(notificationArray, forKey: "notifications") - itemsView.itemTable.reloadData() }) } diff --git a/Vendoo/NotificationsViewController.swift b/Vendoo/NotificationsViewController.swift index 2f14ca2..e3ec6d3 100644 --- a/Vendoo/NotificationsViewController.swift +++ b/Vendoo/NotificationsViewController.swift @@ -68,8 +68,48 @@ extension NotificationsViewController: UITableViewDelegate { self.presentViewController(alert, animated: true, completion: nil) break case "ebay": + let alert = UIAlertController(title: "New Notification", message: "Would you like to dismiss this notification?", preferredStyle: .Alert) + alert.addAction(UIAlertAction(title: "Mark as Dismissed", style: .Default, handler: { + (action) -> Void in + + notification["seen"] = true + self.notifications[indexPath.row] = notification + self.fireBase.ref.child("Users/\(self.fireBase.user_email)/notifications/\(notification["UUID"] as! String)").setValue(notification, withCompletionBlock: { + (error, reference) -> Void in + + if error == nil { + self.notifications = self.notifications.filter({$0["seen"] as! Bool == false}) + NSUserDefaults.standardUserDefaults().setObject(self.notifications, forKey: "notifications") + self.notificationTable.reloadData() + alert.dismissViewControllerAnimated(true, completion: nil) + } + }) + + })) + alert.addAction(UIAlertAction(title: "Cancel", style: .Cancel, handler: {(action) -> Void in})) + self.presentViewController(alert, animated: true, completion: nil) break case "etsy": + let alert = UIAlertController(title: "New Notification", message: "Would you like to dismiss this notification?", preferredStyle: .Alert) + alert.addAction(UIAlertAction(title: "Mark as Dismissed", style: .Default, handler: { + (action) -> Void in + + notification["seen"] = true + self.notifications[indexPath.row] = notification + self.fireBase.ref.child("Users/\(self.fireBase.user_email)/notifications/\(notification["UUID"] as! String)").setValue(notification, withCompletionBlock: { + (error, reference) -> Void in + + if error == nil { + self.notifications = self.notifications.filter({$0["seen"] as! Bool == false}) + NSUserDefaults.standardUserDefaults().setObject(self.notifications, forKey: "notifications") + self.notificationTable.reloadData() + alert.dismissViewControllerAnimated(true, completion: nil) + } + }) + + })) + alert.addAction(UIAlertAction(title: "Cancel", style: .Cancel, handler: {(action) -> Void in})) + self.presentViewController(alert, animated: true, completion: nil) break case "amazon": break @@ -85,16 +125,18 @@ extension NotificationsViewController: UITableViewDataSource { func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell { let cell: NotificationTableViewCell! = self.notificationTable.dequeueReusableCellWithIdentifier("notification_cell") as! NotificationTableViewCell let notification = self.notifications[indexPath.row] - cell.message.text = notification["notification"] as! String switch ( notification["network"] as! String) { case "facebook": + cell.message.text = notification["notification"] as! String cell.network.image = UIImage(named: "facebook_icon") break case "ebay": + cell.message.text = notification["message"] as! String cell.network.image = UIImage(named: "ebay_icon") break case "etsy": + cell.message.text = notification["message"] as! String cell.network.image = UIImage(named: "etsy_icon") break case "amazon":