summaryrefslogtreecommitdiff
path: root/StoneIsland/www/js
diff options
context:
space:
mode:
Diffstat (limited to 'StoneIsland/www/js')
-rw-r--r--StoneIsland/www/js/lib/account/ShippingView.js25
-rw-r--r--StoneIsland/www/js/lib/nav/AddressView.js2
-rw-r--r--StoneIsland/www/js/lib/view/Serializable.js2
3 files changed, 27 insertions, 2 deletions
diff --git a/StoneIsland/www/js/lib/account/ShippingView.js b/StoneIsland/www/js/lib/account/ShippingView.js
index 65a55fdc..e2426d2e 100644
--- a/StoneIsland/www/js/lib/account/ShippingView.js
+++ b/StoneIsland/www/js/lib/account/ShippingView.js
@@ -2,6 +2,9 @@ var ShippingView = FormView.extend({
el: "#shipping",
+ createAction: sdk.address.add,
+ updateAction: sdk.address.update,
+
events: {
},
@@ -24,8 +27,10 @@ var ShippingView = FormView.extend({
initialize: function(){
this.$form = this.$("form")
this.$msg = this.$(".msg")
+ this.$isDefault = this.$("[name=IsDefault]")
this.address = new AddressView ({ parent: this })
this.scroller = new IScroll('#shipping', app.iscroll_options)
+ this.preload()
},
show: function(){
@@ -34,7 +39,25 @@ var ShippingView = FormView.extend({
document.body.className = "shipping"
},
- finalize: function(){
+ finalize: function(data){
+ if (this.address.data && this.address.data.Id) {
+ sdk.address.destroy({
+ id: this.address.data.Id,
+ success: function(){ console.log("destroyed") },
+ error: function(){ console.log("destroyed") },
+ })
+ this.action = this.updateAction
+ }
+ else {
+ this.action = this.createAction
+ }
+ data.IsDefault = data.IsDefault ? "true" : "false"
+ data.Address = data.Address1 + "\n" + data.Address2
+ delete data.Address1
+ delete data.Address2
+ console.log(data)
+ return
+ return data
},
}) \ No newline at end of file
diff --git a/StoneIsland/www/js/lib/nav/AddressView.js b/StoneIsland/www/js/lib/nav/AddressView.js
index e63b0330..fb30062e 100644
--- a/StoneIsland/www/js/lib/nav/AddressView.js
+++ b/StoneIsland/www/js/lib/nav/AddressView.js
@@ -13,6 +13,7 @@ var AddressView = SerializableView.extend({
},
populate: function(data){
+ this.data = data
var address = data.Address.split("\n")
data.Address1 = address[0]
data.Address2 = address[1]
@@ -37,6 +38,7 @@ var AddressView = SerializableView.extend({
data.UserId = auth.user_id
delete data.Address1
delete data.Address2
+ console.log(errors)
},
})
diff --git a/StoneIsland/www/js/lib/view/Serializable.js b/StoneIsland/www/js/lib/view/Serializable.js
index e3ef123c..72978985 100644
--- a/StoneIsland/www/js/lib/view/Serializable.js
+++ b/StoneIsland/www/js/lib/view/Serializable.js
@@ -65,7 +65,7 @@ var SerializableView = View.extend({
validate: function(errors){
var data = this.serialize()
var errors = []
- var presence_msgs = this.validate_presence
+ var presence_msgs = this.validate_presence || {}
Object.keys(presence_msgs).forEach(function(k){
if (! data[k]) errors.push( [ k, presence_msgs[k] ] )
})