// CREATING THE REQUEST

function createRequestObject()
{
	try
	{
		xmlhttp = window.XMLHttpRequest ? new XMLHttpRequest() : new ActiveXObject("Microsoft.XMLHTTP");
	}
	catch(e)
	{
		alert('Sorry, but your browser doesn\'t support XMLHttpRequest.');
	}
	return xmlhttp;
}

var http = createRequestObject();
var sess = createRequestObject();

// IMAGE REFRESHING

function refreshimg()
{
	var url = 'includes/image_req.php';
	dorefresh(url, displayimg);
}

function dorefresh(url, callback)
{
	sess.open('POST', 'includes/newsession.php', true);
	sess.send(null);
	http.open('POST', url, true);
	http.onreadystatechange = displayimg;
	http.send(null);
}

function displayimg()
{
	if(http.readyState == 4)
	{
		var showimage = http.responseText;
		document.getElementById('captchaimage').innerHTML = showimage;
	}
}

// SUBMISSION

function check()
{
	var submission = document.getElementById('captcha').value;
	var url = 'includes/process.php?captcha=' + submission;
	docheck(url, displaycheck);
}

function docheck(url, callback)
{
	http.open('GET', url, true);
	http.onreadystatechange = displaycheck;
	http.send(null);
}

//SUBMIT THE FORM, IF THE CAPTCHA IS CORRECT
function submitform(){
var name = document.getElementById("name").value;
var subject = document.getElementById("subject").value;
var email = document.getElementById("email").value;
var engineclass = document.getElementById("engineclass").value;
var teamname = document.getElementById("teamname").value;
var address = document.getElementById("address").value;
var citystzip = document.getElementById("citystzip").value;
var homephone = document.getElementById("homephone").value;
var cellphone = document.getElementById("cellphone").value;
var website = document.getElementById("website").value;
var dob = document.getElementById("dob").value;
var ssn = document.getElementById("ssn").value;
var corporatename = document.getElementById("corporatename").value;
var fei = document.getElementById("fei").value;
var emergancyname = document.getElementById("emergancyname").value;
var emergancynumber = document.getElementById("emergancynumber").value;
var boatmanufacturer = document.getElementById("boatmanufacturer").value;
var motormanufacturer = document.getElementById("motormanufacturer").value;
var agree = document.getElementById("agree").value;
var mainsignature = document.getElementById("mainsignature").value;
var membershipclass = document.getElementById("membershipclass").value;
var addmember = document.getElementById("addmember").value;
var addfemname1 = document.getElementById("addfemname1").value;
var addfemclass1 = document.getElementById("addfemclass1").value;
var addfemdob1 = document.getElementById("addfemdob1").value;
var addfemssn1 = document.getElementById("addfemssn1").value;
var addfemrel1 = document.getElementById("addfemrel1").value;
var memtype1 = document.getElementById("memtype1").value;
var addfemagree1 = document.getElementById("addfemagree1").value;
var addfemsig1 = document.getElementById("addfemsig1").value;
var addfemname2 = document.getElementById("addfemname2").value;
var addfemclass2 = document.getElementById("addfemclass2").value;
var addfemdob2 = document.getElementById("addfemdob2").value;
var addfemssn2 = document.getElementById("addfemssn2").value;
var addfemrel2 = document.getElementById("addfemrel2").value;
var memtype2 = document.getElementById("memtype2").value;
var addfemagree2 = document.getElementById("addfemagree2").value;
var addfemsig2 = document.getElementById("addfemsig2").value;
var addfemname3 = document.getElementById("addfemname3").value;
var addfemclass3 = document.getElementById("addfemclass3").value;
var addfemdob3 = document.getElementById("addfemdob3").value;
var addfemssn3 = document.getElementById("addfemssn3").value;
var addfemrel3 = document.getElementById("addfemrel3").value;
var memtype3 = document.getElementById("memtype3").value;
var addfemagree3 = document.getElementById("addfemagree3").value;
var addfemsig3 = document.getElementById("addfemsig3").value;
var paymentmethod = document.getElementById("paymentmethod").value;
var paymenttotal = document.getElementById("paymenttotal").value;
var checknumber = document.getElementById("checknumber").value;
var cardnumber = document.getElementById("cardnumber").value;
var expdate = document.getElementById("expdate").value;
var seccode = document.getElementById("seccode").value;
var paymentsig = document.getElementById("paymentsig").value;
var msg = document.getElementById("msg").value;
document.getElementById('loading').style.display = 'block';
document.captchaform.submit.disabled = 'true'; //DISABLE THE SUBMIT BUTTON
http.open('GET', 'includes/mailer.php?name=' +name +'&subject=Xtrteme Kts Membership Form&email=' +email +'&engineclass=' +engineclass +'&teamname=' +teamname +'&address=' +address +'&citystzip=' +citystzip +'&homephone=' +homephone +'&cellphone=' +cellphone +'&website=' +website +'&dob=' +dob +'&ssn=' +ssn +'&corporatename=' +corporatename +'&fei=' +fei +'&emergancyname=' +emergancyname +'&emergancynumber=' +emergancynumber +'&boatmanufacturer=' +boatmanufacturer +'&motormanufacturer=' +motormanufacturer +'&agree=' +agree +'&mainsignature=' +mainsignature +'&membershipclass=' +membershipclass +'&addmember=' +addmember +'&addfemname1=' +addfemname1 +'&addfemclass1=' +addfemclass1 +'&addfemdob1=' +addfemdob1 +'&addfemssn1=' +addfemssn1 +'&addfemrel1=' +addfemrel1 +'&memtype1=' +memtype1 +'&addfemagree1=' +addfemagree1 +'&addfemsig1=' +addfemsig1 +'&addfemname2=' +addfemname2 +'&addfemclass2=' +addfemclass2 +'&addfemdob2=' +addfemdob2 +'&addfemssn2=' +addfemssn2 +'&addfemrel2=' +addfemrel2 +'&memtype2=' +memtype2 +'&addfemagree2=' +addfemagree2 +'&addfemsig2=' +addfemsig2 +'&addfemname3=' +addfemname3 +'&addfemclass3=' +addfemclass3 +'&addfemdob3=' +addfemdob3 +'&addfemssn3=' +addfemssn3 +'&addfemrel3=' +addfemrel3 +'&addfemagree3=' +addfemagree3 +'&addfemsig3=' +addfemsig3 +'&paymentmethod=' +paymentmethod +'&paymenttotal=' +paymenttotal +'&checknumber=' +checknumber +'&cardnumber=' +cardnumber +'&memtype3=' +memtype3 +'&expdate=' +expdate +'&seccode=' +seccode +'&paymentsig=' +paymentsig +'&msg='+escape(msg)); 
	http.onreadystatechange = printit;
	http.send(null);

}
//PRINT THE RESPONSE FROM PHP
function printit()
{
	if(http.readyState == 4)
	{
	
	document.getElementById('loading').style.display = 'none';
	document.getElementById('results').innerHTML = http.responseText; //PRINT THE PHP'S RESPONSE IN THE RESULTS DIV
	}
}	
function displaycheck()
{
	if(http.readyState == 4)
	{
		var showcheck = http.responseText;
		if(showcheck == '1') //CAPTCHA IS CORRECT
		{
			document.getElementById('captcha').style.border = '1px solid #49c24f';
			document.getElementById('captcha').style.background = '#bcffbf';
			document.getElementById('captchaerror').innerHTML = '';
	
			submitform(); //SUBMIT THE FORM
		}
		if(showcheck == '0')
		{
			document.getElementById('captcha').style.border = '1px solid #c24949';
			document.getElementById('captcha').style.background = '#ffbcbc';
			document.captchaform.captcha.value = ''; //RESET THE CAPTCHA INPUT'S VALUE
			document.captchaform.captcha.focus(); //CHANGE THE FOCUS TO CAPTCHA INPUT
			document.getElementById('captchaerror').innerHTML = '<font color="#c24949"><b>Please Re-enter the CAPTCHA</b></font>';
		}
	}
}