Template:2011FR/pc-onboard-form-peterg

 function validateForm( form ) {

var minimums = { 'USD' : 1, 'GBP' : 1, // $1.26 'EUR' : 1, // $1.26 'AUD' : 2, // $1.35 'CAD' : 1, // $0.84 'CHF' : 1, // $0.85 'CZK' : 20, // $1.03 'DKK' : 5, // $0.85 'HKD' : 10, // $1.29 'HUF' : 200, // $0.97 'JPY' : 100, // $1 'NZD' : 2, // $1.18 'NOK' : 10, // $1.44 'PLN' : 5, // $1.78 'SGD' : 2, // $1.35 'SEK' : 10, // $1.28 'ILS' : 5 // $1.39 };

var error = true;

// Get amount selection var amount = null; for ( var i = 0; i < form.amount.length; i++ ) { if ( form.amount[i].checked ) { amount = form.amount[i].value; } }  if ( form.amountGiven.value != "" ) { var otherAmount = form.amountGiven.value; otherAmount = otherAmount.replace(/[,.](\d)$/, '\:$10'); otherAmount = otherAmount.replace(/[,.](\d)(\d)$/, '\:$1$2'); otherAmount = otherAmount.replace(/[,.]/g, ''); otherAmount = otherAmount.replace(/:/, '.'); form.amountGiven.value = otherAmount; amount = otherAmount; }

// Check amount is a real number error = ( amount == null || isNaN( amount ) || amount.value <= 0 ); // Check amount is at least the minimum var currency = form.currency_code[form.currency_code.selectedIndex].value; if ( typeof( minimums[currency] ) == 'undefined' ) { minimums[currency] = 1; } if ( amount < minimums[currency] || error ) { alert( ' '.replace('$1', minimums[currency] + ' ' + currency ) ); error = true; } return !error; }

function DefaultSubmit(formfield,Action) { var keycode; if (window.event) keycode = window.event.keyCode; else if (Action) keycode = Action.which; else return true;

if (keycode == 13) { if (document.getElementById('cc-donate-button').style.display == "none") redirectPayment('2'); else redirectPayment('1'); return false; } else return true; }

function redirectPayment(i) { //if i == 1 var paymentType ="cc"; var action_url = "https://payments.wikimedia.org/index.php/Special:PayflowProGateway?uselang= \x26masthead=\x26form_name=\x26text_template=\x26language= " ; if (i==2) { paymentType = "pp"; action_url="http://wikimediafoundation.org/wiki/Special:ContributionTracking/ "; } document.paypalcontribution.action = action_url; document.paypalcontribution.utm_source.value = getQuerystring( 'utm_source' ) + '.' + getLandingPage + '.' + paymentType; if(validateForm(document.paypalcontribution)) { if(typeof(OWA) !== 'undefined'){OWATracker.shareStateByPost( document.paypalcontribution );} document.paypalcontribution.submit; } }           





<label for="input_amount_1">

<input type="radio" name="amount" id="input_amount_2" onclick="document.paypalcontribution. amountGiven.value = ''" value=" " /><label for="input_amount_2">

<input type="radio" name="amount" id="input_amount_3" onclick="document.paypalcontribution. amountGiven.value = ''" value=" " /><label for="input_amount_3">

<input type="radio" name="amount" id="input_amount_other" value="Other" /><label for="input_amount_other">

<input type="text" name="amountGiven" size="4" onfocus="this.form.input_amount_other.checked=true;" onKeyPress="return DefaultSubmit(this,event)" />

<select name="currency_code" id="input_currency_code" size="1" style="width:7em;" onchange="updateCC(this.value);"><option value=" " selected>  – <option value="XXX">--- <option value="GBP">GBP – £ <option value="EUR">EUR – € <option value="USD">USD - $ <option value="AUD">AUD – $ <option value="CAD">CAD – $

<option value="CHF">CHF – Fr.  <option value="CZK">CZK – Kč   <option value="DKK">DKK – kr   <option value="HKD">HKD – HK$ <option value="HUF">HUF – Ft  <option value="ILS">ILS - ₪ <option value="JPY">JPY – ¥ <option value="NOK">NOK – kr  <option value="NZD">NZD – $ <option value="PLN">PLN – zł  <option value="SEK">SEK – kr   <option value="SGD">SGD – S$

<input type="button" value=" " class="button" onclick="redirectPayment('1');" />

<input type="button" value=" " class="button" onclick="redirectPayment('2');" />



* *  *

<p style="margin-top: 1em;">

<script type="text/javascript"> function getQuerystring( key ) { key = key.replace( /[\[]/, '\\\[' ).replace( /[\]]/, '\\\]' ); var regex = new RegExp( '[\\?&]' + key + '=([a-zA-Z0-9\_\-]*)' ); var qs = regex.exec( window.location.search ); return qs == null ? '' : qs[1]; }

function getLandingPage { var path = " ";

if( path == "default") { pathArray = window.location.pathname.split( '/' ); return pathArray[2]; } else return path; }

function updateCC( currency ) { if ( ( currency == 'AUD' ) || ( currency == 'CAD' ) || ( currency == 'EUR' ) ||   (currency == 'GBP' ) || ( currency == 'JPY' ) || ( currency == 'USD' ) ) { document.getElementById('cc-donate-button').style.display = " "; } else { document.getElementById('cc-donate-button').style.display = "none"; } } document.paypalcontribution.utm_medium.value = getQuerystring( 'utm_medium' ); document.paypalcontribution.utm_campaign.value = getQuerystring( 'utm_campaign' ); document.paypalcontribution.country.value = getQuerystring ( 'country_code' ); document.paypalcontribution.referrer.value = document.referrer;

function checkCurrency { var currency = document.getElementById('input_currency_code').value; updateCC(currency); }

function addEvent(obj, evType, fn) { if (obj.addEventListener) { obj.addEventListener(evType, fn, false); return true; } else if (obj.attachEvent) { var r = obj.attachEvent("on"+evType, fn); return r;  } else { return false; } } addEvent(window, 'load', checkCurrency);