Merged branch Make-Images-Appear-After-Last-Image-Selected into master

This commit is contained in:
Okechi Onyeje 2017-01-02 22:05:20 -05:00
commit 181ea663c3
6 changed files with 247 additions and 20 deletions

View File

@ -280,7 +280,7 @@
moduleName = "Vendoo"
usesParentBreakpointCondition = "Yes"
urlString = "file:///Users/okechi/Documents/iOs%20Practice/Vendoo/Vendoo_bb/Vendoo/Vendoo/ExternalWebViewController.swift"
timestampString = "504915510.522741"
timestampString = "505105059.906101"
startingColumnNumber = "9223372036854775807"
endingColumnNumber = "9223372036854775807"
startingLineNumber = "32"
@ -295,7 +295,7 @@
moduleName = "Vendoo"
usesParentBreakpointCondition = "Yes"
urlString = "file:///Users/okechi/Documents/iOs%20Practice/Vendoo/Vendoo_bb/Vendoo/Vendoo/ExternalWebViewController.swift"
timestampString = "504915510.522902"
timestampString = "505105059.906318"
startingColumnNumber = "9223372036854775807"
endingColumnNumber = "9223372036854775807"
startingLineNumber = "32"
@ -310,7 +310,7 @@
moduleName = "Vendoo"
usesParentBreakpointCondition = "Yes"
urlString = "file:///Users/okechi/Documents/iOs%20Practice/Vendoo/Vendoo_bb/Vendoo/Vendoo/ExternalWebViewController.swift"
timestampString = "504915510.523053"
timestampString = "505105059.906451"
startingColumnNumber = "9223372036854775807"
endingColumnNumber = "9223372036854775807"
startingLineNumber = "32"
@ -325,7 +325,7 @@
moduleName = "Vendoo"
usesParentBreakpointCondition = "Yes"
urlString = "file:///Users/okechi/Documents/iOs%20Practice/Vendoo/Vendoo_bb/Vendoo/Vendoo/ExternalWebViewController.swift"
timestampString = "504915510.523207"
timestampString = "505105059.906581"
startingColumnNumber = "9223372036854775807"
endingColumnNumber = "9223372036854775807"
startingLineNumber = "32"
@ -399,5 +399,149 @@
landmarkType = "5">
</BreakpointContent>
</BreakpointProxy>
<BreakpointProxy
BreakpointExtensionID = "Xcode.Breakpoint.FileBreakpoint">
<BreakpointContent
shouldBeEnabled = "No"
ignoreCount = "0"
continueAfterRunningActions = "No"
filePath = "Vendoo/HomeViewController.swift"
timestampString = "504968542.456631"
startingColumnNumber = "9223372036854775807"
endingColumnNumber = "9223372036854775807"
startingLineNumber = "193"
endingLineNumber = "193"
landmarkName = "viewDidLoad()"
landmarkType = "5">
<Locations>
<Location
shouldBeEnabled = "No"
ignoreCount = "0"
continueAfterRunningActions = "No"
symbolName = "Vendoo.HomeViewController.(viewDidLoad () -&gt; ()).(closure #1).(closure #1).(closure #1).(closure #1).(closure #1).(closure #2)"
moduleName = "Vendoo"
usesParentBreakpointCondition = "Yes"
urlString = "file:///Users/okechi/Documents/iOs%20Practice/Vendoo/Vendoo_bb/Vendoo/Vendoo/HomeViewController.swift"
timestampString = "504968877.331559"
startingColumnNumber = "9223372036854775807"
endingColumnNumber = "9223372036854775807"
startingLineNumber = "193"
endingLineNumber = "193"
offsetFromSymbolStart = "22569">
</Location>
<Location
shouldBeEnabled = "No"
ignoreCount = "0"
continueAfterRunningActions = "No"
symbolName = "Vendoo.HomeViewController.(viewDidLoad () -&gt; ()).(closure #1).(closure #1).(closure #1).(closure #1).(closure #1).(closure #2).(closure #1)"
moduleName = "Vendoo"
usesParentBreakpointCondition = "Yes"
urlString = "file:///Users/okechi/Documents/iOs%20Practice/Vendoo/Vendoo_bb/Vendoo/Vendoo/HomeViewController.swift"
timestampString = "504968877.331655"
startingColumnNumber = "9223372036854775807"
endingColumnNumber = "9223372036854775807"
startingLineNumber = "193"
endingLineNumber = "193"
offsetFromSymbolStart = "19">
</Location>
</Locations>
</BreakpointContent>
</BreakpointProxy>
<BreakpointProxy
BreakpointExtensionID = "Xcode.Breakpoint.FileBreakpoint">
<BreakpointContent
shouldBeEnabled = "No"
ignoreCount = "0"
continueAfterRunningActions = "No"
filePath = "Vendoo/HomeViewController.swift"
timestampString = "504968909.840568"
startingColumnNumber = "9223372036854775807"
endingColumnNumber = "9223372036854775807"
startingLineNumber = "194"
endingLineNumber = "194"
landmarkName = "viewDidLoad()"
landmarkType = "5">
<Locations>
<Location
shouldBeEnabled = "No"
ignoreCount = "0"
continueAfterRunningActions = "No"
symbolName = "Vendoo.HomeViewController.(viewDidLoad () -&gt; ()).(closure #1).(closure #1).(closure #1).(closure #1).(closure #1).(closure #2)"
moduleName = "Vendoo"
usesParentBreakpointCondition = "Yes"
urlString = "file:///Users/okechi/Documents/iOs%20Practice/Vendoo/Vendoo_bb/Vendoo/Vendoo/HomeViewController.swift"
timestampString = "504968909.842325"
startingColumnNumber = "9223372036854775807"
endingColumnNumber = "9223372036854775807"
startingLineNumber = "194"
endingLineNumber = "194"
offsetFromSymbolStart = "23455">
</Location>
<Location
shouldBeEnabled = "No"
ignoreCount = "0"
continueAfterRunningActions = "No"
symbolName = "Vendoo.HomeViewController.(viewDidLoad () -&gt; ()).(closure #1).(closure #1).(closure #1).(closure #1).(closure #1).(closure #2).(closure #2)"
moduleName = "Vendoo"
usesParentBreakpointCondition = "Yes"
urlString = "file:///Users/okechi/Documents/iOs%20Practice/Vendoo/Vendoo_bb/Vendoo/Vendoo/HomeViewController.swift"
timestampString = "504968909.842488"
startingColumnNumber = "9223372036854775807"
endingColumnNumber = "9223372036854775807"
startingLineNumber = "194"
endingLineNumber = "194"
offsetFromSymbolStart = "19">
</Location>
</Locations>
</BreakpointContent>
</BreakpointProxy>
<BreakpointProxy
BreakpointExtensionID = "Xcode.Breakpoint.FileBreakpoint">
<BreakpointContent
shouldBeEnabled = "No"
ignoreCount = "0"
continueAfterRunningActions = "No"
filePath = "Vendoo/HomeViewController.swift"
timestampString = "504968963.93448"
startingColumnNumber = "9223372036854775807"
endingColumnNumber = "9223372036854775807"
startingLineNumber = "196"
endingLineNumber = "196"
landmarkName = "viewDidLoad()"
landmarkType = "5">
</BreakpointContent>
</BreakpointProxy>
<BreakpointProxy
BreakpointExtensionID = "Xcode.Breakpoint.FileBreakpoint">
<BreakpointContent
shouldBeEnabled = "No"
ignoreCount = "0"
continueAfterRunningActions = "No"
filePath = "Vendoo/HomeViewController.swift"
timestampString = "505104273.568652"
startingColumnNumber = "9223372036854775807"
endingColumnNumber = "9223372036854775807"
startingLineNumber = "146"
endingLineNumber = "146"
landmarkName = "viewDidLoad()"
landmarkType = "5">
</BreakpointContent>
</BreakpointProxy>
<BreakpointProxy
BreakpointExtensionID = "Xcode.Breakpoint.FileBreakpoint">
<BreakpointContent
shouldBeEnabled = "No"
ignoreCount = "0"
continueAfterRunningActions = "No"
filePath = "Vendoo/HomeViewController.swift"
timestampString = "505104913.804045"
startingColumnNumber = "9223372036854775807"
endingColumnNumber = "9223372036854775807"
startingLineNumber = "148"
endingLineNumber = "148"
landmarkName = "viewDidLoad()"
landmarkType = "5">
</BreakpointContent>
</BreakpointProxy>
</Breakpoints>
</Bucket>

View File

@ -190,7 +190,10 @@ class HomeViewController: UITabBarController {
//once all listings have been retrieved and processed start retrieving possible notifications
if(notificationStartTracker == listingDict?.count){
NSNotificationCenter.defaultCenter().postNotificationName("finished_fetching_listings", object: nil)
self.userListings.sortInPlace({$0.title > $1.title})
self.endedListings.sortInPlace({$0.title > $1.title})
self.soldListings.sortInPlace({$0.title > $1.title})
NSNotificationCenter.defaultCenter().postNotificationName("finished_fetching_listings", object: nil)
self.notificationsManager.setListings(self.userListings)
self.notificationsManager.startServicePolling()

View File

@ -47,6 +47,10 @@ class ItemImagePickerViewController: UIViewController {
private var imageIndex: Int!
private var isEditing: Bool = false
private var currentInformation: Dictionary<String, AnyObject>!
var loadingView: UIView!
private var firManager: FirebaseManager! = nil
override func viewDidLoad() {
@ -69,12 +73,24 @@ class ItemImagePickerViewController: UIViewController {
let tapGestureMain = UITapGestureRecognizer(target: self, action: #selector(ItemImagePickerViewController.takePicture))
self.view.addGestureRecognizer(tapGestureMain)
//self.possibleItemImageMain.addGestureRecognizer(tapGestureMain)
//self.possibleItemImage2.addGestureRecognizer(tapGesture2)
//self.possibleItemImage3.addGestureRecognizer(tapGesture)
//self.possibleItemImage4.addGestureRecognizer(tapGesture)
//self.possibleItemImage5.addGestureRecognizer(tapGesture)
//hide all images and labels for picture slots 2 - 5
self.possibleItemImage2.hidden = true
self.possibleItemImage3.hidden = true
self.possibleItemImage4.hidden = true
self.possibleItemImage5.hidden = true
self.possibleItemImage2.userInteractionEnabled = false
self.possibleItemImage3.userInteractionEnabled = false
self.possibleItemImage4.userInteractionEnabled = false
self.possibleItemImage5.userInteractionEnabled = false
self.plus_label0.hidden = false
self.plus_label1.hidden = true
self.plus_label2.hidden = true
self.plus_label3.hidden = true
self.plus_label4.hidden = true
self.plus_label1.userInteractionEnabled = false
self.plus_label2.userInteractionEnabled = false
self.plus_label3.userInteractionEnabled = false
self.plus_label4.userInteractionEnabled = false
}
@ -88,6 +104,7 @@ class ItemImagePickerViewController: UIViewController {
override func viewWillAppear(animated: Bool) {
super.viewWillAppear(animated)
self.firManager = (self.tabBarController as! HomeViewController).firebaseManager
self.tabBarController?.tabBar.hidden = true
}
@ -206,15 +223,36 @@ extension ItemImagePickerViewController: UIImagePickerControllerDelegate, UINavi
switch(self.imageIndex){
case 0:
self.plus_label0.hidden = true
//show slot 2
self.possibleItemImage2.hidden = false
self.possibleItemImage2.userInteractionEnabled = true
self.plus_label1.hidden = false
self.plus_label1.userInteractionEnabled = true
break
case 1:
self.plus_label1.hidden = true
//show slot 3
self.possibleItemImage3.hidden = false
self.possibleItemImage3.userInteractionEnabled = true
self.plus_label2.hidden = false
self.plus_label2.userInteractionEnabled = true
break
case 2:
self.plus_label2.hidden = true
//show slot 4
self.possibleItemImage4.hidden = false
self.possibleItemImage4.userInteractionEnabled = true
self.plus_label3.hidden = false
self.plus_label3.userInteractionEnabled = true
break
case 3:
self.plus_label3.hidden = true
//show slot 5
self.possibleItemImage5.hidden = false
self.possibleItemImage5.userInteractionEnabled = true
self.plus_label4.hidden = false
self.plus_label4.userInteractionEnabled = true
break
case 4:
self.plus_label4.hidden = true
@ -247,7 +285,7 @@ extension ItemImagePickerViewController: UIImagePickerControllerDelegate, UINavi
if(self.itemImagesSelections[0]) {
self.imageIndex = 1
accessCam()
} else {
} else if (!self.possibleItemImage2.hidden){
let alert = UIAlertController(title: "Main Image Needed", message: "You must have a main image before saving supporting images.", preferredStyle: .Alert)
alert.addAction(UIAlertAction(title: "OK", style: .Default, handler:{(action: UIAlertAction!) in alert.dismissViewControllerAnimated(true, completion: nil)}))
@ -260,7 +298,7 @@ extension ItemImagePickerViewController: UIImagePickerControllerDelegate, UINavi
if(self.itemImagesSelections[0] && self.itemImagesSelections[1]) {
self.imageIndex = 2
accessCam()
} else {
} else if (!self.possibleItemImage3.hidden){
let alert = UIAlertController(title: "Support Image 1 Missing", message: "You must save your first supporting image before saving more.", preferredStyle: .Alert)
alert.addAction(UIAlertAction(title: "OK", style: .Default, handler:{(action: UIAlertAction!) in alert.dismissViewControllerAnimated(true, completion: nil)}))
@ -273,7 +311,7 @@ extension ItemImagePickerViewController: UIImagePickerControllerDelegate, UINavi
&& self.itemImagesSelections[2]) {
self.imageIndex = 3
accessCam()
} else {
} else if (!self.possibleItemImage4.hidden){
let alert = UIAlertController(title: "Support Image 2 Missing", message: "You must save your first two supporting images before saving more.", preferredStyle: .Alert)
alert.addAction(UIAlertAction(title: "OK", style: .Default, handler:{(action: UIAlertAction!) in alert.dismissViewControllerAnimated(true, completion: nil)}))
@ -286,7 +324,7 @@ extension ItemImagePickerViewController: UIImagePickerControllerDelegate, UINavi
&& self.itemImagesSelections[2] && self.itemImagesSelections[3]) {
self.imageIndex = 4
accessCam()
} else {
} else if (!self.possibleItemImage5.hidden){
let alert = UIAlertController(title: "Support Image 3 Missing", message: "You must save your first three supporting images before saving more.", preferredStyle: .Alert)
alert.addAction(UIAlertAction(title: "OK", style: .Default, handler:{(action: UIAlertAction!) in alert.dismissViewControllerAnimated(true, completion: nil)}))
@ -409,6 +447,15 @@ extension ItemImagePickerViewController {
}
@IBAction func draftItem(sender: AnyObject) {
self.loadingView = UIView(frame: self.view.frame)
self.loadingView.backgroundColor = UIColor.grayColor()
self.loadingView.alpha = 0.4
self.firManager.indicator.center = self.view.center
self.loadingView.addSubview(self.firManager.indicator)
self.view.addSubview(loadingView)
self.firManager.indicator.startAnimating()
if(self.possibleItemImageMain.image == nil){
let alert = UIAlertController(title: "Main Image Needed", message: "To proceed to save your listing as a draft, you must supply at least one picture for your listing.", preferredStyle: .Alert)
@ -488,6 +535,9 @@ extension ItemImagePickerViewController {
{(metadata, error) -> Void in
newListingRef!.setValue(listing as? Dictionary<String,AnyObject>)
self.firManager.indicator.stopAnimating()
self.loadingView.removeFromSuperview()
self.loadingView = nil
let alert = UIAlertController(title: "Item Saved", message: "Your listing has been saved by a draft", preferredStyle: .Alert)
alert.addAction(UIAlertAction(title: "OK", style: .Default, handler:{(action: UIAlertAction!) in alert.dismissViewControllerAnimated(true, completion: {
@ -506,7 +556,7 @@ extension ItemImagePickerViewController {
}
@IBAction func cancelNewListing(sender: AnyObject) {
//@FIXME: nil out all data user may have entered so that when they reopen new listing page it initialized to a fresh screen.
//nil out all data user may have entered so that when they reopen new listing page it initialized to a fresh screen.
if(!self.isEditing) {
self.tabBarController?.selectedIndex = 0
@ -521,16 +571,29 @@ extension ItemImagePickerViewController {
self.possibleItemImage3.image = nil
self.possibleItemImage4.image = nil
self.possibleItemImage5.image = nil
self.possibleItemImage2.hidden = true
self.possibleItemImage3.hidden = true
self.possibleItemImage4.hidden = true
self.possibleItemImage5.hidden = true
self.possibleItemImage2.userInteractionEnabled = false
self.possibleItemImage3.userInteractionEnabled = false
self.possibleItemImage4.userInteractionEnabled = false
self.possibleItemImage5.userInteractionEnabled = false
self.itemImagesSelections[0] = false
self.itemImagesSelections[1] = false
self.itemImagesSelections[2] = false
self.itemImagesSelections[3] = false
self.itemImagesSelections[4] = false
self.plus_label0.hidden = false
self.plus_label1.hidden = false
self.plus_label2.hidden = false
self.plus_label3.hidden = false
self.plus_label4.hidden = false
self.plus_label1.hidden = true
self.plus_label2.hidden = true
self.plus_label3.hidden = true
self.plus_label4.hidden = true
self.plus_label1.userInteractionEnabled = false
self.plus_label2.userInteractionEnabled = false
self.plus_label3.userInteractionEnabled = false
self.plus_label4.userInteractionEnabled = false
}else{
self.presentingViewController?.dismissViewControllerAnimated(true, completion: nil)

View File

@ -1295,6 +1295,7 @@
<segmentedControl hidden="YES" opaque="NO" userInteractionEnabled="NO" contentMode="scaleToFill" enabled="NO" contentHorizontalAlignment="left" contentVerticalAlignment="top" segmentControlStyle="plain" id="hyA-UD-JyK">
<rect key="frame" x="127" y="73" width="121" height="29"/>
<autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
<rect key="contentStretch" x="0.0" y="0.0" width="1" height="0.25"/>
<segments>
<segment title="Sold"/>
<segment title="Unsold"/>

View File

@ -37,6 +37,8 @@ class NetworksTableViewController: UIViewController {
private var shouldShowDictionary: Dictionary<String, Bool> = ["ebay":false, "amazon":false,"etsy":false,"facebook":false]
private var networkOrderSelection: [String] = []
private var networkCount = 0
var loadingView: UIView!
@ -334,6 +336,16 @@ extension NetworksTableViewController {
@IBAction func draftItem(sender: AnyObject) {
self.loadingView = UIView(frame: self.view.frame)
self.loadingView.backgroundColor = UIColor.grayColor()
self.loadingView.alpha = 0.4
self.firManager.indicator.center = self.view.center
self.loadingView.addSubview(self.firManager.indicator)
self.view.addSubview(loadingView)
self.firManager.indicator.startAnimating()
if((self.itemListingDictionary["pictures"]! as? [UIImageView])?[0].image == nil){
let alert = UIAlertController(title: "Image Needed", message: "To save the listing as a draft, you must supply at least one picture for your listing.", preferredStyle: .Alert)
@ -352,6 +364,7 @@ extension NetworksTableViewController {
"listingTitle": self.itemListingDictionary["title"],
"listingPrice": self.itemListingDictionary["price"],
"listingCategory": self.itemListingDictionary["category"],
"listingQuantity": self.itemListingDictionary["quantity"],
"listingDescription": self.itemListingDictionary["description"],
"numberOfSupportingImages" : ((self.itemListingDictionary["pictures"] as? [UIImageView])?.count)! - 1,
"isListingDraft": true,
@ -407,6 +420,9 @@ extension NetworksTableViewController {
{(metadata, error) -> Void in
newListingRef.setValue(listing as? Dictionary<String,AnyObject>)
self.firManager.indicator.stopAnimating()
self.loadingView.removeFromSuperview()
self.loadingView = nil
let alert = UIAlertController(title: "Item Saved", message: "Your listing has been saved by a draft", preferredStyle: .Alert)
alert.addAction(UIAlertAction(title: "OK", style: .Default, handler:{(action: UIAlertAction!) in alert.dismissViewControllerAnimated(true, completion: {