function CheckAllValues() {
	if(document.getElementById('CurrencyConverter')) {
		var formObj = document.getElementById('CurrencyConverter');
		if (document.getElementById('currencyamount').value == "") {
			alert('Please enter an amount');
			return false;
		}
		if (document.getElementById('currencyfrom').selectedIndex == 0) {
			alert('Please choose a currency.');
			return false;
		}
		if (document.getElementById('currencyto').selectedIndex == 0) {
			alert('Please choose a currency.');
			return false;
		}

		if (!(parseFloat(document.getElementById('currencyamount').value) == document.getElementById('currencyamount').value)) {
			alert("Amount must be numeric");
			document.getElementById('currencyamount').focus();
			return false;
		}
		if (document.getElementById('currencyfrom').selectedIndex == document.getElementById('currencyto').selectedIndex) {
			alert('Please select a different currency.');
			return false;
		}
	} else {
		alert('Form not found');
		return false;
	}
	return true;
}

function RunCurrencyConverterForm() {
	if(CheckAllValues()) {
		request_conversion(document.getElementById('currencyamount').value,document.getElementById('currencyfrom').value,document.getElementById('currencyto').value);
	}
	return false;
}

var mX;

function request_conversion(amount, from, to) {
	mX=(window.XMLHttpRequest)?new XMLHttpRequest():new ActiveXObject("Microsoft.XMLHTTP");
	if(!mX || (typeof mX != "object")) {
		return false;
	}
	u = 'http://www.lea-financial-services.co.uk/tools/free-online-currency-converter/convert/?rand='+randomString()+'&currencyamount='+amount+'&currencyfrom='+from+'&currencyto='+to;
	try {
		mX.onreadystatechange=do_response;
	} catch(e) {
		alert(e.message);
	}
	mX.open("GET",u,true);
	(window.XMLHttpRequest)?mX.send(null):mX.send();
	return true;
}

function do_response () {
	document.getElementById('currencyconverted').value = '';
	if(document.getElementById('indicator').className) {
		document.getElementById('indicator').className = 'currency-loader-on';
	}
	if(document.getElementById('indicator').getAttribute('class')) {
		document.getElementById('indicator').setAttribute('class','currency-load-on');
	}

	if(mX && mX.readyState && mX.readyState==4 && mX.status && mX.status==200) {
		if(mX.responseText) {
			var response = mX.responseText.split('|');
			if(response[0] && response[1] && response[2] && response[3]) {
				if(response[0] == 'failed') {
					alert('Currency Converter is not currently working. Please try again later');
				} else if(response[0] == 'success' && document.getElementById('currencyamount') && document.getElementById('currencyamount').value && document.getElementById('currencyamount').value==response[1]) {
					document.getElementById('currencyconverted').value = response[3];
					if(document.getElementById('indicator').className) {
						document.getElementById('indicator').className = 'currency-loader-off';
					}
					if(document.getElementById('indicator').getAttribute('class')) {
						document.getElementById('indicator').setAttribute('class','currency-load-off');
					}
				}
			}
		}
	}
}

function randomString() {
	var chars = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXTZabcdefghiklmnopqrstuvwxyz";
	var string_length = 8;
	var randomstring = '';
	for (var i=0; i<string_length; i++) {
		var rnum = Math.floor(Math.random() * chars.length);
		randomstring += chars.substring(rnum,rnum+1);
	}
	return randomstring;
}
if (document.getElementById('CurrencyConverter')) {
	var cc = document.getElementById('CurrencyConvertSubmit');
	if(cc) {
		cc.onclick = RunCurrencyConverterForm;
	} else {
		//alert('error');
	}
} else {
	//alert('error');
}