Version 3.3.4
This commit is contained in:
1 parent
78706903a2
commit
fb6b5baabc
2206 files changed
+409828
-382984
No files matched your search
@@ -0,0 +1,128 @@
|
||||
/************************************************/
|
||||
/* IPB3 Javascript */
|
||||
/* -------------------------------------------- */
|
||||
/* ips.nexus.checkout.js */
|
||||
/* (c) IPS, Inc 2012 */
|
||||
/* -------------------------------------------- */
|
||||
/* Author: Mark Wade */
|
||||
/************************************************/
|
||||
|
||||
var nexusCheckout = {
|
||||
|
||||
submitForm: function( transid, submit )
|
||||
{
|
||||
// Check we have selected a method
|
||||
if( $('payment_toggle').value == '--' )
|
||||
{
|
||||
alert( ipb.lang['checkout_nomethod'] );
|
||||
return false;
|
||||
}
|
||||
|
||||
// Check we agreed to the terms
|
||||
if ( $('tac-checkbox') != null && $('tac-checkbox').checked == false )
|
||||
{
|
||||
alert("{$this->lang->words['checkout_accept_terms']}");
|
||||
return false;
|
||||
}
|
||||
|
||||
// Disable the button
|
||||
if ( $('pay_submit') != null )
|
||||
{
|
||||
$('pay_submit').disabled = 'disabled';
|
||||
}
|
||||
|
||||
// Call MaxMind
|
||||
if ( $('card_number') == null )
|
||||
{
|
||||
var bin = '';
|
||||
}
|
||||
else
|
||||
{
|
||||
var bin = $('card_number').value.replace( ' ', '' ).replace( '-', '' ).substr( 0, 6 );
|
||||
}
|
||||
|
||||
new Ajax.Request( ipb.vars['base_url'] + "app=nexus&module=ajax§ion=store&do=fraud&secure_key="+ipb.vars['secure_hash'],
|
||||
{
|
||||
asynchronous: false,
|
||||
method: 'post',
|
||||
parameters: {
|
||||
'transid': transid,
|
||||
'bin': bin,
|
||||
},
|
||||
onSuccess: function(t)
|
||||
{
|
||||
if ( t.responseJSON['status'] == 'fail' )
|
||||
{
|
||||
window.location = ipb.vars['base_url'] + "app=nexus&module=payments§ion=receive&do=check&id=" + transid;
|
||||
return false;
|
||||
}
|
||||
else
|
||||
{
|
||||
if ( submit !== false )
|
||||
{
|
||||
$('do_pay').submit();
|
||||
}
|
||||
return true;
|
||||
}
|
||||
}
|
||||
});
|
||||
},
|
||||
|
||||
stripeButtonClick: function( data, transid )
|
||||
{
|
||||
// Do normal checks
|
||||
if ( transid )
|
||||
{
|
||||
nexusCheckout.submitForm( transid, false );
|
||||
}
|
||||
|
||||
// Only send to Stripe if we've not ticked the "Use Card on File" box and we're not doing something else
|
||||
if ( ( $('cardonfile') == null || $('cardonfile').value != 'on' ) && $('card_number').value.substr( 0, 4 ) != 'XXXX' && $('card_number').value.substr( 0, 4 ) != '' )
|
||||
{
|
||||
// Fetch card data
|
||||
data.number = $('card_number').value;
|
||||
data.cvc = $('code').value;
|
||||
data.exp_month = $('exp_month').value;
|
||||
data.exp_year = $('exp_year').value;
|
||||
|
||||
// Send to Stripe
|
||||
Stripe.createToken( data, nexusCheckout.stripeResponseHandler );
|
||||
|
||||
// Don't allow the form to submit
|
||||
return false;
|
||||
|
||||
}
|
||||
else
|
||||
{
|
||||
return false;
|
||||
$('do_pay').submit();
|
||||
}
|
||||
},
|
||||
|
||||
stripeResponseHandler: function( status, response )
|
||||
{
|
||||
if ( response.error )
|
||||
{
|
||||
$('error_message_holder').innerHTML = response.error.message;
|
||||
$("pay_submit").disabled = "";
|
||||
}
|
||||
else
|
||||
{
|
||||
$('hidden_field').value = response['id'];
|
||||
$('do_pay').submit();
|
||||
}
|
||||
},
|
||||
|
||||
changeCardMethod: function()
|
||||
{
|
||||
var key = $( 'card_method_' + $('cc_method').value ).readAttribute('data-extra');
|
||||
if ( key )
|
||||
{
|
||||
Stripe.setPublishableKey( key );
|
||||
}
|
||||
else
|
||||
{
|
||||
$('info_form').onsubmit = null;
|
||||
}
|
||||
},
|
||||
};
|
||||
Reference in new issue
Block a user