diff options
Diffstat (limited to 'StoneIsland/www/js/lib/products')
| -rwxr-xr-x | StoneIsland/www/js/lib/products/CollectionView.js | 23 | ||||
| -rwxr-xr-x | StoneIsland/www/js/lib/products/ProductView.js | 57 |
2 files changed, 66 insertions, 14 deletions
diff --git a/StoneIsland/www/js/lib/products/CollectionView.js b/StoneIsland/www/js/lib/products/CollectionView.js index 1c50c80d..3fd4a757 100755 --- a/StoneIsland/www/js/lib/products/CollectionView.js +++ b/StoneIsland/www/js/lib/products/CollectionView.js @@ -80,8 +80,10 @@ var CollectionView = ScrollableView.extend({ else { console.log("populate 2") this.data = data + this.loaded = false console.log(data) } + console.log(">>>>>>>> YES ") if (! this.loaded) { console.log("populate 3") this.loaded = true @@ -89,7 +91,16 @@ var CollectionView = ScrollableView.extend({ this.$content.empty() // DefaultCode10 // data.SearchResponseFull.Results.Items.length = 1 - this.$content.toggleClass("single", (data.SearchResponseFull.Results.Items.length == 1)) + var is_single_product = (data.SearchResponseFull.Results.Items.length == 1) + this.$content.toggleClass("single", is_single_product) + + if (is_single_product) { + console.log("IS SINGLE PRODUCT") + var item = data.SearchResponseFull.Results.Items[0] + var url = sdk.image(item['DefaultCode10'], '13_f') + var img = new Image () + img.src = url + } // if (data.SearchResponseFull.Results.Items.length == 1) { // app.footer.hide() @@ -98,16 +109,20 @@ var CollectionView = ScrollableView.extend({ // app.footer.show("FILTER") // } - data.SearchResponseFull.Results.Items.forEach(this.append.bind(this)) + console.log( data.SearchResponseFull.Results.Items.length ) + data.SearchResponseFull.Results.Items.forEach(function(item){ + console.log(">>> ITEM") + this.append(item, is_single_product) + }.bind(this)) this.deferScrollToTop() } this.afterFetchCallback && this.afterFetchCallback() app.collection.deferRefresh() }, - append: function(item){ + append: function(item, is_single_product){ this.items[ item['Code8'] ] = item - var t = this.template.replace(/{{image}}/, sdk.image(item['DefaultCode10'], '11_f')) + var t = this.template.replace(/{{image}}/, sdk.image(item['DefaultCode10'], is_single_product ? '13_f' : '11_f')) .replace(/{{code8}}/, item['Code8']) this.$content.append(t) }, diff --git a/StoneIsland/www/js/lib/products/ProductView.js b/StoneIsland/www/js/lib/products/ProductView.js index 9ce4a1f3..72ff9da3 100755 --- a/StoneIsland/www/js/lib/products/ProductView.js +++ b/StoneIsland/www/js/lib/products/ProductView.js @@ -224,6 +224,7 @@ var ProductView = ScrollableView.extend({ sizes[ size['SizeId'] ] = { id: label, label: label.toUpperCase(), + value: size['SizeId'], colors: {}, } }) @@ -246,6 +247,7 @@ var ProductView = ScrollableView.extend({ }.bind(this)) app.selector.select("style", sizes, function(size){ + console.log(size) this.size = size.value this.$size.html(size.label) }.bind(this)) @@ -277,27 +279,62 @@ var ProductView = ScrollableView.extend({ }, add_to_cart: function(opt){ - auth.deferred_product = { Size: this.size, Code10: this.code } + var deferred_product = auth.deferred_product = { Size: this.size, Code10: this.code } + console.log("ADDING " + this.size + " " + this.code ) + // if we are not logged in... if ( ! auth.logged_in() ) { app.router.go("account/login") app.last_view = app.cart } + // if we don't have a cart setup... else if ( ! auth.has_cart() ) { app.curtain.show("loading") - auth.create_cart(function(){ - auth.add_deferred_product_to_cart(function(){ + auth.create_cart({ + success: function(){ + auth.add_deferred_product_to_cart({ + success: function(){ + app.curtain.hide("loading") + app.router.go("cart") + }, + error: function(){ + // SHOULD NOT BE A PROBLEM + console.log("ERROR ADDING PRODUCT TO NEW CART SIMPLE ADD TO CART") + app.curtain.hide("loading") + app.router.go("account/login") + auth.deferred_product = deferred_product + app.last_view = app.cart + }, + }) + }, + error: function(){ + // ERROR CREATING CART? + console.log("ERROR CREATING CART") + auth.log_out() + app.account.logged_out() app.curtain.hide("loading") - app.router.go("cart") - }) + app.router.go("account/login") + auth.deferred_product = deferred_product + app.last_view = app.cart + }, }) } else { app.curtain.show("loading") - auth.add_deferred_product_to_cart(function(){ - app.curtain.hide("loading") - if (opt.route) { - app.router.go("cart") - } + auth.add_deferred_product_to_cart({ + success: function(){ + app.curtain.hide("loading") + if (opt.route) { + app.router.go("cart") + } + }, + error: function(){ + console.log("CART MIGHT BE OLD") + // TODO - CART MIGHT BE OLD + app.curtain.hide("loading") + app.router.go("account/login") + auth.deferred_product = deferred_product + app.last_view = app.cart + }, }) } }, |
