function changeSubmit(){
	document.getElementById('submitbutton').innerHTML = 'Processing Transaction ...';
}

function createRequestObject() {
        var req;
        if(window.XMLHttpRequest){
          req = new XMLHttpRequest();
        } else if(window.ActiveXObject) {
          req = new ActiveXObject("Microsoft.XMLHTTP");
        } else {
          alert('Your browser does not support AJAX.');
        }
        return req;
}//end createRequestObject

// =============================================================================================================

function doTransaction(formname) {
httpPost=createRequestObject();
if (httpPost==null) {
        alert ("Your browser does not support AJAX!");
        return;
}
var thefile = "/cgi-bin/make-payment.cgi";
var parameters = "";

if(formname != 'NA'){
        for (var i=0; i < document.forms[formname].elements.length; i++) {
		if(document.forms[formname].elements[i].type == "checkbox"){
			if(document.forms[formname].elements[i].checked){
				parameters = parameters + '&'+document.forms[formname].elements[i].name +'=Y';
			}
			else{parameters = parameters + '&'+document.forms[formname].elements[i].name +'=N';}
		}else if(document.forms[formname].elements[i].type == "radio"){
			if(document.forms[formname].elements[i].checked){
				parameters = parameters + '&'+document.forms[formname].elements[i].name +'=' +document.forms[formname].elements[i].value;
			}
		}else{
			if(document.forms[formname].elements[i].name != ''){
				var thisvalue = escape(document.forms[formname].elements[i].value);
				parameters = parameters + '&'+document.forms[formname].elements[i].name +'=' +thisvalue;
			}// end else
		}
        }
}

//alert(parameters);
httpPost.open("POST",thefile,true);
httpPost.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
httpPost.setRequestHeader("Content-length", parameters.length);
httpPost.setRequestHeader("Connection", "close");
httpPost.onreadystatechange=handleResults;
httpPost.send(parameters);
}//end doTransaction

// ===============================================================================================================

function handleResults(){
if(httpPost.readyState == 4){
   if(httpPost.status == 200){
        var response = httpPost.responseText;
        if(response){
		//alert(response);
		var mainarr = response.split("^");
		var mainlength = mainarr.length;
		for(i=0;i<mainlength;i++){
			var temparr = mainarr[i].split("|");
			var safecontent = unescape(temparr[1]);
			if(temparr[0] == 'errors'){
				document.getElementById('errors').style.display = 'block';
				document.getElementById(temparr[0]).innerHTML = safecontent;
				document.getElementById('submitbutton').innerHTML = '<input value="Submit Payment" name="Submit" onclick="javascript:changeSubmit(); doTransaction(\'payform\');" type="submit"><br />Please see the error(s) above.';
			}
			else if(temparr[0] == 'SUCCESS'){window.location = '/online-payments/thankyou.html';}
			else if(document.getElementById(temparr[0])){document.getElementById(temparr[0]).innerHTML = safecontent;}
			//alert(temparr[0]);
		}
        }else{alert('There was no response while processing your request.  Please try again.');}
   }else{alert('Error Received: '+httpPost.status+'\nThere was a problem processing your request.  Please try again.');}
}

}//end handleResults

