diff --git a/Vendoo.xcworkspace/xcuserdata/okechi.xcuserdatad/UserInterfaceState.xcuserstate b/Vendoo.xcworkspace/xcuserdata/okechi.xcuserdatad/UserInterfaceState.xcuserstate index ad9865f..1fd6d2c 100644 Binary files a/Vendoo.xcworkspace/xcuserdata/okechi.xcuserdatad/UserInterfaceState.xcuserstate and b/Vendoo.xcworkspace/xcuserdata/okechi.xcuserdatad/UserInterfaceState.xcuserstate differ diff --git a/Vendoo.xcworkspace/xcuserdata/okechi.xcuserdatad/xcdebugger/Breakpoints_v2.xcbkptlist b/Vendoo.xcworkspace/xcuserdata/okechi.xcuserdatad/xcdebugger/Breakpoints_v2.xcbkptlist index 9359d05..0ec7902 100644 --- a/Vendoo.xcworkspace/xcuserdata/okechi.xcuserdatad/xcdebugger/Breakpoints_v2.xcbkptlist +++ b/Vendoo.xcworkspace/xcuserdata/okechi.xcuserdatad/xcdebugger/Breakpoints_v2.xcbkptlist @@ -269,7 +269,7 @@ endingColumnNumber = "9223372036854775807" startingLineNumber = "107" endingLineNumber = "107" - landmarkName = "tableView(_:cellForRowAtIndexPath:)" + landmarkName = "prepareForSegue(_:sender:)" landmarkType = "5"> @@ -284,7 +284,9 @@ startingColumnNumber = "9223372036854775807" endingColumnNumber = "9223372036854775807" startingLineNumber = "167" - endingLineNumber = "167"> + endingLineNumber = "167" + landmarkName = "prepareForSegue(_:sender:)" + landmarkType = "5"> + landmarkName = "ListingPreviewViewController" + landmarkType = "3"> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Vendoo/EbayWebServiceManager.swift b/Vendoo/EbayWebServiceManager.swift index a9f0979..81d10dd 100644 --- a/Vendoo/EbayWebServiceManager.swift +++ b/Vendoo/EbayWebServiceManager.swift @@ -281,7 +281,7 @@ extension EbayWebServiceManager { "\(dict["payment"] as! String!)" + "\(dict["paypal_email"] as! String!)" - for i in 0...(imageUrls.count - 1) { + for i in 0...(0/*imageUrls.count - 1*/) { //will replace with actual count once everything is working with images soapMessage = soapMessage + "\(imageUrls[i].stringByReplacingOccurrencesOfString("&", withString: "&"))" diff --git a/Vendoo/HomeViewController.swift b/Vendoo/HomeViewController.swift index 8325875..f82bba5 100644 --- a/Vendoo/HomeViewController.swift +++ b/Vendoo/HomeViewController.swift @@ -86,6 +86,7 @@ class HomeViewController: UITabBarController { self.userListings.append( Listing(itemTitle: (listingInfo!["listingTitle"] as? String)!, itemCategory: listingInfo!["listingCategory"] as? String, + itemQuantity: (listingInfo!["listingQuantity"] as? String)!, itemPrice: listingInfo!["listingPrice"] as? String, itemDescription: listingInfo!["listingDescription"] as? String, itemImages: listingImages, diff --git a/Vendoo/ItemImagePickerViewController.swift b/Vendoo/ItemImagePickerViewController.swift index 7a0f36e..168d1b5 100644 --- a/Vendoo/ItemImagePickerViewController.swift +++ b/Vendoo/ItemImagePickerViewController.swift @@ -443,6 +443,7 @@ extension ItemImagePickerViewController { "listingPrice": self.itemPrice.text, "listingCategory": category, "listingDescription": self.itemDescription.text, + "listingQuantity": self.itemQuantity.text!, "numberOfSupportingImages" : counter, "isListingDraft": true, "networks": ["areNetworksChosen": false]] diff --git a/Vendoo/ItemTableViewController.swift b/Vendoo/ItemTableViewController.swift index 1689642..0ce3949 100644 --- a/Vendoo/ItemTableViewController.swift +++ b/Vendoo/ItemTableViewController.swift @@ -21,6 +21,7 @@ class ItemTableViewController: UIViewController { @IBOutlet weak var menuButton: UIBarButtonItem! var loadingView: UIView! + var selectedListing: Listing! override func viewDidLoad() { super.viewDidLoad() @@ -87,6 +88,35 @@ extension ItemTableViewController { override func prepareForSegue(segue: UIStoryboardSegue, sender: AnyObject?) { // Get the new view controller using segue.destinationViewController. // Pass the selected object to the new view controller. + + let des = segue.destinationViewController as! ListingPreviewViewController + var tempImages: [UIImageView] = [] + for uiImage in self.selectedListing.images { + tempImages.append(UIImageView(image: uiImage)) + } + let dict:[String:AnyObject] = [ + "pictures": tempImages, + "title": self.selectedListing.title, + "description": self.selectedListing.desc, + "price": self.selectedListing.price, + "category": self.selectedListing.category, + "quantity": self.selectedListing.quantity + ] + + des.setDictionary(self.selectedListing.networks, itemdictionary: dict) + des.setManagers( + ((self.tabBarController as? HomeViewController)?.fbGraphManager)!, + fireManager: ((self.tabBarController as? HomeViewController)?.firebaseManager)!, + ebayManager: ((self.tabBarController as? HomeViewController)?.ebayGraphManager)!, + etsyManager: ((self.tabBarController as? HomeViewController)?.etsyManager)! + ) + + if self.selectedListing.isDraft! { + des.setViewState("Editible") + }else { + des.setViewState("NonEditable") + } + } } @@ -153,6 +183,11 @@ extension ItemTableViewController: UITableViewDataSource{ } return cell } + + func tableView(tableView: UITableView, didSelectRowAtIndexPath indexPath: NSIndexPath) { + self.selectedListing = (self.tabBarController as? HomeViewController)?.userListings[indexPath.row] + self.performSegueWithIdentifier("ItemDetailSegue", sender: self) + } } diff --git a/Vendoo/Listing.swift b/Vendoo/Listing.swift index a86601b..a0373b0 100644 --- a/Vendoo/Listing.swift +++ b/Vendoo/Listing.swift @@ -15,17 +15,19 @@ class Listing : NSObject { var category: String! var price: String! var desc: String! + var quantity: String! var isDraft: Bool! var images: [UIImage]! var key: String! var networks: Dictionary! - init(itemTitle:String, itemCategory: String!, itemPrice: String!, itemDescription: String!, itemImages: [UIImage], isDraftListing: Bool, itemKey: String, networksSellingOn: Dictionary){ + init(itemTitle:String, itemCategory: String!, itemQuantity: String!, itemPrice: String!, itemDescription: String!, itemImages: [UIImage], isDraftListing: Bool, itemKey: String, networksSellingOn: Dictionary){ self.title = itemTitle self.category = itemCategory self.price = itemPrice self.desc = itemDescription + self.quantity = itemQuantity self.isDraft = isDraftListing self.images = itemImages self.key = itemKey diff --git a/Vendoo/ListingPreviewViewController.swift b/Vendoo/ListingPreviewViewController.swift index e366f3e..d94ec7e 100644 --- a/Vendoo/ListingPreviewViewController.swift +++ b/Vendoo/ListingPreviewViewController.swift @@ -33,6 +33,9 @@ class ListingPreviewViewController: UIViewController { @IBOutlet weak var itemPrice: UITextView! @IBOutlet weak var itemCategory: UITextView! @IBOutlet weak var networks: UICollectionView! + @IBOutlet weak var publishBtn: UIButton! + @IBOutlet weak var edit_button: UIButton! + @IBOutlet weak var cancel_backBtn: UIButton! //class variables private var networksDictionary: Dictionary = Dictionary() @@ -45,10 +48,25 @@ class ListingPreviewViewController: UIViewController { private var lastListingKey: String! private var newInProgressListing: Dictionary = Dictionary() var loadingView: UIView! + private var itemViewState = "" override func viewDidLoad() { super.viewDidLoad() + if (self.itemViewState == "NonEditable") { + dispatch_async(dispatch_get_main_queue(), { + //self.cancel_backBtn.titleLabel?.text = "Back" + self.edit_button.hidden = true + self.edit_button.enabled = false + + self.publishBtn.hidden = true + self.publishBtn.enabled = false + }) + } + /*else if (self.itemViewState == "Editable") { + //self.cancel_backBtn.titleLabel?.text = "Back" + + }*/ // Do any additional setup after loading the view. // Initialization code @@ -98,6 +116,10 @@ class ListingPreviewViewController: UIViewController { self.itemQuantity.text = self.itemListingDictionary["quantity"] as! String } + func setViewState(state: String) { + self.itemViewState = state + } + func setDictionary(netdictionary:Dictionary, itemdictionary: Dictionary){ self.networksDictionary = netdictionary self.itemListingDictionary = itemdictionary @@ -174,9 +196,15 @@ extension Dictionary { //MARK: - IBActions extension ListingPreviewViewController { @IBAction func cancel(sender: AnyObject) { - let storyboard: UIStoryboard = UIStoryboard(name: "Main", bundle: nil) - let vc = storyboard.instantiateViewControllerWithIdentifier("Reveal View Controller") as! SWRevealViewController - self.presentViewController(vc, animated: true, completion: nil) + if self.itemViewState == "" { + let storyboard: UIStoryboard = UIStoryboard(name: "Main", bundle: nil) + let vc = storyboard.instantiateViewControllerWithIdentifier("Reveal View Controller") as! SWRevealViewController + self.presentViewController(vc, animated: true, completion: nil) + } + else if self.itemViewState == "Editable" || self.itemViewState == "NonEditable"{ + self.presentingViewController?.dismissViewControllerAnimated(true, completion: nil) + } + } @IBAction func publishItem(sender: AnyObject) { @@ -495,6 +523,7 @@ extension ListingPreviewViewController { "listingTitle": self.itemTitle.text, "listingPrice": self.itemPrice.text, "listingCategory": self.itemCategory.text, + "listingQuantity": self.itemQuantity.text, "listingDescription": self.itemDescription.text, "numberOfSupportingImages" : ((self.itemListingDictionary["pictures"] as? [UIImageView])?.count)! - 1, "isListingDraft": false, @@ -603,13 +632,6 @@ extension ListingPreviewViewController { //notify to save final listing to firebase dispatch_group_notify(postingGroup, dispatch_get_main_queue(), { newListingRef.setValue(self.newInProgressListing) - // self.alert.title = "Listing saved with error" - // self.alert.message = "Your listing has been saved but something went wrong when trying to publish to facebook" - - - //let alert = UIAlertController(title: "Listing Published", message: "Your listing has been published", preferredStyle: .Alert) - - // self.alert.addAction(UIAlertAction(title: "OK", style: .Default, handler:{(action: UIAlertAction!) in self.alert.dismissViewControllerAnimated(true, completion: nil)})) //register new listing id in global path of firebase root' self.firManager.ref.child("Global_listings").child(newListingRef.key).setValue(newListingRef.key) @@ -626,14 +648,6 @@ extension ListingPreviewViewController { self.presentViewController(alert, animated: true, completion: nil) }) - // self.alert.title = "Listing saved with error" - // self.alert.message = "Your listing has been saved but something went wrong when trying to publish to facebook" - - - //let alert = UIAlertController(title: "Listing Published", message: "Your listing has been published", preferredStyle: .Alert) - - // self.alert.addAction(UIAlertAction(title: "OK", style: .Default, handler:{(action: UIAlertAction!) in self.alert.dismissViewControllerAnimated(true, completion: nil)})) - }) }) diff --git a/Vendoo/Main.storyboard b/Vendoo/Main.storyboard index 2d1dc77..69728fa 100755 --- a/Vendoo/Main.storyboard +++ b/Vendoo/Main.storyboard @@ -1006,7 +1006,7 @@ - + - - + @@ -1035,7 +1034,9 @@ + + @@ -1047,6 +1048,7 @@ + @@ -1361,6 +1363,7 @@ + @@ -1612,7 +1615,7 @@ - + @@ -1629,7 +1632,7 @@ - + @@ -1690,7 +1693,7 @@ - + @@ -1707,7 +1710,7 @@ - + @@ -2467,9 +2470,10 @@ - - + + +