Skip to content

Instantly share code, notes, and snippets.

@adamlj
Created December 2, 2013 12:10
Show Gist options
  • Save adamlj/7748576 to your computer and use it in GitHub Desktop.
Save adamlj/7748576 to your computer and use it in GitHub Desktop.
PayMill Form JQuery JS
$(function() {
function paymillResponseHandler(error, result) {
if (error) {
$(".alert-danger").removeClass('hidden');
$(".alert-danger").append('<p>' + error.apierror + '</p>');
$("button.btn-success").removeAttr("disabled");
} else {
$("#id_token").val(result.token)
$("form").get(0).submit();
}
}
$("form").submit(function (event) {
event.preventDefault();
$('button.btn-success').attr("disabled", "disabled");
var failed = false;
var ccno = $('#id_card_no');
var ccno_val = ccno.val().replace(/ /g,'');
var exp = $('#id_expiry_date');
var exp_val = exp.val().replace(/ /g,'').split('/');
var exp_month = exp_val[0];
var exp_year = '20' + exp_val[1];
var cvc = $('#id_cvc');
var cvc_val = cvc.val().replace(/ /g,'');
if (false == paymill.validateCardNumber(ccno_val)) {
ccno.parent().parent().addClass('field-error');
failed=true;
}
else {
ccno.parent().parent().removeClass('field-error');
}
if (false == paymill.validateExpiry(exp_month, exp_year)) {
exp.parent().parent().addClass('field-error');
failed=true;
}
else {
exp.parent().parent().removeClass('field-error');
}
var params = {
amount_int: 1*100,
currency: 'EUR',
number: ccno_val,
exp_month: exp_month,
exp_year: exp_year,
cvc: cvc_val
};
if (failed) {
$("button.btn-success").removeAttr("disabled");
}
else {
paymill.createToken(params, paymillResponseHandler);
}
});
})
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment