//======================================================================================
//							HTML FORM FUNCTIONALITIES
//======================================================================================

function submitForm(obj) {
	var params = "";
	for (i = 0; i < obj.getElementsByTagName("input").length; i++) {
		if (obj.getElementsByTagName("input")[i].type == "hidden") {
			params += obj.getElementsByTagName("input")[i].name + "=" + escape(encodeURI(obj.getElementsByTagName("input")[i].value)) + "&";
		}
		if (obj.getElementsByTagName("input")[i].type == "text") {
			params += obj.getElementsByTagName("input")[i].name + "=" + escape(encodeURI(obj.getElementsByTagName("input")[i].value)) + "&";
		}
		if (obj.getElementsByTagName("input")[i].type == "checkbox") {
			if (obj.getElementsByTagName("input")[i].checked) {
				params += obj.getElementsByTagName("input")[i].name + "=" + escape(encodeURI(obj.getElementsByTagName("input")[i].value)) + "&";
			} else {
				params += obj.getElementsByTagName("input")[i].name + "=&";
		   	}
		}
		if (obj.getElementsByTagName("input")[i].type == "radio") {
			if (obj.getElementsByTagName("input")[i].checked) {
				params += obj.getElementsByTagName("input")[i].name + "=" + escape(encodeURI(obj.getElementsByTagName("input")[i].value)) + "&";
			}
	 	}
		if (obj.getElementsByTagName("input")[i].tagName == "SELECT") {
			var sel = obj.getElementsByTagName("input")[i];
			params += sel.name + "=" + escape(encodeURI(sel.options[sel.selectedIndex].value)) + "&";
	 	}	 
	}
	
	for (i = 0; i < obj.getElementsByTagName("select").length; i++) {
		var sel	= obj.getElementsByTagName("select")[i];
		params += sel.name + "=" + escape(encodeURI(sel.options[sel.selectedIndex].value)) + "&";
	}
	
	for (i = 0; i < obj.getElementsByTagName("textarea").length; i++) {
		params += obj.getElementsByTagName("textarea")[i].name + "=" + escape(encodeURI(obj.getElementsByTagName("textarea")[i].value)) + "&";	
	}
	
	//document.getElementById('result_div').innerHTML = '<br /><br /><br /><img src="graphics/sendingmail.gif" alt="Sending e-mail..." /><br /><br />Sending e-mail...';
	document.getElementById('contactform').style.display = 'none';
	document.getElementById('result_div').style.display = 'block';
	
	if (params != "") {
		typeform	= document.contactform.typeform.value;
		if (typeform == "friend")
			setTimeout("submitAjaxForm('functions/processInformFriend.php', \'" + params + "\')", 1500);
		else if (typeform == "other")
			setTimeout("submitAjaxForm('functions/processForm.php', \'" + params + "\' )", 1500);
	}
}


//======================================================================================
//							AJAX FUNCTIONALITIES
//======================================================================================

var ajaxRequest;

function submitAjaxForm(url, params) {
	if (params != "") {
		ajaxRequest		= GetAjaxObject();
		if (ajaxRequest == null) {
			alert ("Browser does not support HTTP Request");
			return;
		}
		
		ajaxRequest.onreadystatechange	= formSent;
		ajaxRequest.open("POST", url, true);
		//Send the proper header information along with the request
		ajaxRequest.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
		ajaxRequest.setRequestHeader("Content-length", params.length);
		ajaxRequest.setRequestHeader("Connection", "close");
		ajaxRequest.send(params);
	}
}

function changeQuestion() {
		document.getElementById('anti_spam').style.display = 'none';
		document.getElementById('anti_spam_question').style.display = 'block';
		
		xmlHttp		= GetAjaxObject();
		if (xmlHttp == null) {
			alert ("Browser does not support HTTP Request");
			return;
		}
		
		var url		= "../conf/anti_spam.php";
		url		+= "?sid=" + Math.random();
		
		xmlHttp.onreadystatechange	= questionChanged;
		xmlHttp.open("GET", url, true);
		xmlHttp.send(null);	
}



function GetAjaxObject() {
	var xmlHttp=null;
	try
	{
		// Firefox, Opera 8.0+, Safari
		xmlHttp=new XMLHttpRequest();
	}
	catch (e) {
		//Internet Explorer
		try {
			xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");
		}
		catch (e) {
			xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
		}
	}
	return xmlHttp;
}

function formSent() {
	if (ajaxRequest.readyState == 4 || ajaxRequest.readyState == "complete") {
		response	= ajaxRequest.responseText;
		document.getElementById('result_div').innerHTML = response;
	}
}

function questionChanged() {
	if (xmlHttp.readyState == 4 || xmlHttp.readyState == "complete") {
		response	= xmlHttp.responseText;
		document.getElementById('anti_spam').innerHTML = response;
		
		document.getElementById('anti_spam').style.display = 'block';
		document.getElementById('anti_spam_question').style.display = 'none';
	}
}
