Template:2012FR/Form-section/Processing/Default: Difference between revisions
Jump to navigation
Jump to search
Content deleted Content added
adding new toggleMonthly function |
note why this is kept |
||
(29 intermediate revisions by 3 users not shown) | |||
Line 1: | Line 1: | ||
<!-- Merged to MediaWiki:DonationForm.js. Kept this page for the history. --> |
|||
<html> |
|||
<script> |
|||
var donationForm = donationForm | {}; |
|||
function redirectPayment (legacyPaymentMethod) { |
|||
// wrapper for new function |
|||
// using old method parameters |
|||
// until buttons can be updated |
|||
switch (legacyPaymentMethod) { |
|||
case 'cc': |
|||
donationForm.redirectPaymentWithSubMethod('cc'); |
|||
break; |
|||
case 'paypal': |
|||
case 'pp': |
|||
case 'ew-pp': |
|||
case 'ew-rpp': |
|||
case 'ew-pp-usd': |
|||
case 'ew-pp-eur': |
|||
donationForm.redirectPaymentWithSubMethod('paypal'); |
|||
break; |
|||
case 'dd': |
|||
donationForm.redirectPaymentWithSubMethod('dd'); |
|||
break; |
|||
case 'rtbt-id': |
|||
donationForm.redirectPaymentWithSubMethod('rtbt', 'rtbt_ideal'); |
|||
break; |
|||
case 'ew-yd': |
|||
donationForm.redirectPaymentWithSubMethod('ew', 'ew_yandex'); |
|||
break; |
|||
case 'rtbt-sf': |
|||
donationForm.redirectPaymentWithSubMethod('rtbt', 'rtbt_sofortuberweisung'); |
|||
break; |
|||
case 'ew-amazon': |
|||
donationForm.redirectPaymentWithSubMethod('amazon'); |
|||
break; |
|||
case 'obt-bp': |
|||
donationForm.redirectPaymentWithSubMethod('obt', 'bpay'); |
|||
break; |
|||
case 'ew-wm': |
|||
donationForm.redirectPaymentWithSubMethod('ew', 'ew_webmoney'); |
|||
break; |
|||
case 'cash-bl': |
|||
donationForm.redirectPaymentWithSubMethod('cash', 'boleto'); |
|||
break; |
|||
case 'rtbt-en': |
|||
donationForm.redirectPaymentWithSubMethod('rtbt', 'rtbt_enets'); |
|||
break; |
|||
} |
|||
} |
|||
donationForm.redirectPaymentWithSubMethod = function(paymentMethod, paymentSubMethod) { |
|||
// set up inputs |
|||
document.getElementsByName("currency_code")[0].value = '</html>{{{currency|USD}}}<html>'; |
|||
if (typeof paymentSubMethod == 'undefined') { |
|||
paymentSubMethod = ''; |
|||
} |
|||
var form = document.paypalcontribution; // we should really change this some day |
|||
var paymentsURL = 'https://payments.wikimedia.org/index.php/Special:GatewayFormChooser'; |
|||
var params = { |
|||
'uselang' : $("input[name='language']").val(), |
|||
'language' : $("input[name='language']").val(), |
|||
'currency' : $("input[name='currency_code']").val(), |
|||
'country' : $("input[name='country']").val(), |
|||
'paymentmethod' : paymentMethod |
|||
}; |
|||
if( paymentSubMethod != '' ){ |
|||
params['submethod'] = paymentSubMethod; |
|||
} |
|||
// Testing for Adyen |
|||
if( paymentMethod === 'adyen-cc' ) { |
|||
paymentMethod = 'cc'; |
|||
params.paymentmethod = 'cc'; |
|||
params.gateway = 'adyen'; |
|||
} |
|||
var frequency = $("input[name='frequency']:checked").val(); |
|||
if( frequency !== 'monthly' ){ |
|||
frequency = 'onetime'; |
|||
// commented out below as it breaks eNETS for some reason |
|||
// params['recurring'] = 'false'; |
|||
} else { |
|||
params['recurring'] = 'true'; |
|||
// the following is only for contribution_tracking, do not submit 'r' to payments |
|||
paymentMethod = 'r' + paymentMethod; |
|||
} |
|||
form.action = paymentsURL + '?' + $.param(params); |
|||
form.payment_method.value = paymentMethod; |
|||
if( paymentSubMethod != '' ){ |
|||
form.payment_method.value = form.payment_method.value + '.' + paymentSubMethod; |
|||
} |
|||
donationForm.addAnalytics(); |
|||
if (validateForm(form)) { |
|||
form.method = "POST"; |
|||
form.submit(); |
|||
} |
|||
} |
|||
donationForm.addAnalytics = function() { |
|||
// stuffs parameters into utm_source to make them available for analytics |
|||
var form = document.paypalcontribution; |
|||
form.utm_source.value = getQuerystring( 'utm_source' ) + '.'; |
|||
if(getQuerystring( 'template' ) == '') { |
|||
form.utm_source.value += 'default' + '~'; |
|||
} else { |
|||
form.utm_source.value += getQuerystring( 'template' ).replace("Lp-layout-","") + '~'; |
|||
} |
|||
if(getQuerystring( 'appeal-template' ) == '') { |
|||
form.utm_source.value += 'default' + '~'; |
|||
} else { |
|||
form.utm_source.value += getQuerystring( 'appeal-template' ).replace("Appeal-template-","") + '~'; |
|||
} |
|||
if(getQuerystring( 'appeal' ) == '') { |
|||
form.utm_source.value += 'default' + '~'; |
|||
} else { |
|||
form.utm_source.value += getQuerystring( 'appeal' ).replace("Appeal-","") + '~'; |
|||
} |
|||
if(getQuerystring( 'form-template' ) == '') { |
|||
form.utm_source.value += 'default' + '~'; |
|||
} else { |
|||
form.utm_source.value += getQuerystring( 'form-template' ).replace("Form-template-","") + '~'; |
|||
} |
|||
if(getQuerystring( 'form-countryspecific' ) == '') { |
|||
form.utm_source.value += 'control'; |
|||
} else { |
|||
form.utm_source.value += getQuerystring( 'form-countryspecific' ).replace("Form-countryspecific-",""); |
|||
} |
|||
form.utm_source.value += '.' + form.payment_method.value; |
|||
form.utm_campaign.value = getQuerystring( 'utm_campaign' ); |
|||
} |
|||
donationForm.toggleMonthly = function(monthly) { |
|||
if (monthly) { |
|||
$('#form-wrapper').addClass('form-monthly'); |
|||
} else { |
|||
$('#form-wrapper').removeClass('form-monthly'); |
|||
} |
|||
} |
|||
</script> |
|||
</html> |