diff options
Diffstat (limited to 'StoneIsland/platforms/android/assets/www/js/lib/nav/CreditCardView.js')
| -rwxr-xr-x | StoneIsland/platforms/android/assets/www/js/lib/nav/CreditCardView.js | 61 |
1 files changed, 61 insertions, 0 deletions
diff --git a/StoneIsland/platforms/android/assets/www/js/lib/nav/CreditCardView.js b/StoneIsland/platforms/android/assets/www/js/lib/nav/CreditCardView.js new file mode 100755 index 00000000..63784618 --- /dev/null +++ b/StoneIsland/platforms/android/assets/www/js/lib/nav/CreditCardView.js @@ -0,0 +1,61 @@ + +var CreditCardView = SerializableView.extend({ + + template: $("#creditcard_template").html(), + + cardOptions: { + accept: ['visa', 'mastercard', 'amex', 'jcb'], + }, + + events: { + }, + + initialize: function(opt){ + this.parent = opt.parent + this.setElement( this.parent.$(".cc") ) + this.$el.html(this.template) + + this.$number = this.$("[name=Number]") + this.$number.validateCreditCard(this.updateCard.bind(this), this.cardOptions) + }, + + populate: function(data){ + this.data = data + data.Number = "XXXX XXXX XXXX " + data.Number + this.$number.attr("type", "text") + this.parent.$(".cc input").val("") + this.$(".cc input").val("") + this.load_data(data) + }, + + updateCard: function(card){ + // console.log(card) + // card.card_type.name + // card.card_type.valid + }, + + validate_presence: { + 'Number': 'Please enter your credit card number.', + 'Cvv': 'Please enter your security code.', + }, + + validate_fields: function(data, errors){ + if (this.disabled) { return } + var card = this.$number.validateCreditCard(this.cardOptions) + if (! card.valid) { errors.push([ "Number", "Your card number is invalid." ]) } + if (! data.ExpirationMonth || data.ExpirationMonth == "NONE") { errors.push([ "ExpirationMonth", "Please enter the expiration month." ]) } + if (! data.ExpirationYear || data.ExpirationYear == "NONE") { errors.push([ "ExpirationYear", "Please select the expiration month." ]) } + data.UserId = auth.user_id + if (card.valid) { + data.Type = YOOX_CREDIT_CARD_NAME_LOOKUP[ card.card_type.name ] + } + }, + +}) + +var YOOX_CREDIT_CARD_NAME_LOOKUP = { + "visa": "Visa", + "mastercard": "Mastercard", + "amex": "AmericanExpress", + "jcb": "JCB", +} |
