// CREATING THE REQUEST
var correct;

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 = 'formular/image_req.php';
	dorefresh(url, displayimg);
}

function dorefresh(url, callback)
{
	sess.open('POST', 'formular/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(submission)
{
	var url = 'formular/process.php?captcha=' + submission;
	docheck(url, displaycheck);
	
}

function docheck(url, callback)
{
	http.open('GET', url, true);
	http.onreadystatechange = displaycheck;
	http.send(null);

}

function changeInputType(oldObject) {
	var input = oldObject;
	var newInput = document.createElement('input');
	newInput.type = 'submit';
	newInput.name = input.name
	newInput.value = input.value;
	
	//newInput.onclick = checkForm;
	newInput.className = 'submit';
	input.parentNode.replaceChild(newInput, input);
}

function displaycheck()
{

	if(http.readyState == 4)
	{
		var showcheck = http.responseText;

		if(showcheck == "correct")
		{
			document.getElementById('captcha').style.borderColor = "green";	
		    document.getElementById('captcha').disabled = true;
		    document.getElementById('check').value = 'Absenden';
		    changeInputType(document.getElementById('check'));
		} else if(showcheck == "error"){
			document.getElementById('captcha').style.borderColor = "red";
		    alert("Bitte geben Sie den korrekten Sicherheitscode an.");
		}
	}
}