MediaWiki:Resources/landingpage.js: Difference between revisions
Jump to navigation
Jump to search
Content deleted Content added
fix 150 variant |
some minor cleanup, formatting |
||
Line 1: | Line 1: | ||
<html> |
<html> |
||
<script |
<script> |
||
$( document ).ready( function () { |
|||
⚫ | |||
⚫ | |||
⚫ | |||
⚫ | |||
⚫ | |||
⚫ | |||
⚫ | |||
} ); |
|||
function getQuerystring( key ) { |
function getQuerystring( key ) { |
||
key = key.replace( /[\[]/, '\\\[' ).replace( /[\]]/, '\\\]' ); |
key = key.replace( /[\[]/, '\\\[' ).replace( /[\]]/, '\\\]' ); |
||
Line 19: | Line 8: | ||
} |
} |
||
</script> |
|||
<script type="text/javascript"> |
|||
$(document).ready(function(){ |
$(document).ready(function(){ |
||
⚫ | |||
⚫ | |||
⚫ | |||
⚫ | |||
⚫ | |||
// Disable logo link |
|||
⚫ | |||
⚫ | |||
// Highest previous contribution adjustments (for emails) |
|||
var hpc = getQuerystring( 'hpc' ); |
var hpc = getQuerystring( 'hpc' ); |
||
if( hpc == '' || isNaN( parseFloat( hpc ) ) ){ |
if( hpc == '' || isNaN( parseFloat( hpc ) ) ){ |
||
Line 92: | Line 91: | ||
} |
} |
||
} |
} |
||
}); |
|||
// prefill other amount box if param provided |
|||
$(document).ready(function(){ |
|||
var otherVal = getQuerystring( 'otherVal' ); |
var otherVal = getQuerystring( 'otherVal' ); |
||
if( otherVal == '' || isNaN( parseFloat( otherVal ) ) ){ |
if( otherVal == '' || isNaN( parseFloat( otherVal ) ) ){ |
||
Line 99: | Line 98: | ||
} |
} |
||
otherVal = parseFloat( otherVal ); |
otherVal = parseFloat( otherVal ); |
||
$("#input_amount_other").attr( 'checked', true ); |
$("#input_amount_other").attr( 'checked', true ); |
||
$("#input_amount_other_box").val( otherVal ); |
$("#input_amount_other_box").val( otherVal ); |
Revision as of 17:41, 23 October 2013
<html>
<script>
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];
}
$(document).ready(function(){
// Disable submitting form with return key
$( 'form' ).bind( 'keypress', function(e) {
var code = ( e.keyCode ? e.keyCode : e.which );
if ( code == 13 ) return false;
} );
// Disable logo link
$("#p-logo a").attr("href", "#");
$("#p-logo a").attr("title", "");
// Highest previous contribution adjustments (for emails)
var hpc = getQuerystring( 'hpc' );
if( hpc == '' || isNaN( parseFloat( hpc ) ) ){
// go ahead and try mrc as well
hpc = getQuerystring( 'mrc' );
if( hpc == '' || isNaN( parseFloat( hpc ) ) ){
return;
}
}
hpc = parseFloat( hpc );
var asks = {
'USD' : {
0 : [5, 10, 20, 25, 35, 50, 100],
10 : [10, 20, 25, 35, 50, 100, 150],
20 : [20, 25, 35, 50, 75, 100, 250],
35 : [20, 35, 50, 100, 150, 200, 250],
50 : [20, 35, 50, 100, 150, 200, 250],
75 : [25, 50, 75, 100, 200, 300, 500],
100 : [25, 50, 100, 150, 250, 500, 1000],
150 : [50, 100, 150, 200, 350, 500, 1000],
200 : [50, 100, 200, 300, 400, 500, 1000]
}
};
asks['AUD'] = asks['USD'];
asks['CAD'] = asks['USD'];
asks['EUR'] = asks['USD'];
asks['GBP'] = asks['USD'];
asks['NZD'] = asks['USD'];
var symbols = {
'USD' : '$',
'AUD' : '$',
'CAD' : '$',
'EUR' : '€',
'GBP' : '£',
'NZD' : '$'
};
var ask = null;
var symbol = '';
var currency = $("input[name='currency_code']").val();
if( currency in symbols ){
symbol = symbols[currency];
}
if( currency in asks ){
if( asks[currency].length < 1 ){
return;
}
for( var prev in asks[currency] ){
// this assumes that JS returns keys in sorted order, most do
if( prev > hpc ){
break;
}
ask = asks[currency][prev];
}
if( ask != null ){
for( var j = 0; j < ask.length; j++ ){
var radio = $("#input_amount_" + j);
var label = $("label[for='input_amount_" + j + "']");
if( radio != null ){
if( label != null ){
// I know an && could be used here, but they are getting escaped
radio.val( ask[j] );
label.text( symbol + ask[j] );
}
}
}
}
}
// prefill other amount box if param provided
var otherVal = getQuerystring( 'otherVal' );
if( otherVal == '' || isNaN( parseFloat( otherVal ) ) ){
return;
}
otherVal = parseFloat( otherVal );
$("#input_amount_other").attr( 'checked', true );
$("#input_amount_other_box").val( otherVal );
});
</script>
</html>