var required = new Array();
var contactHttp;

function check_form(srcform) { 
	if (srcform && srcform.required) { 
		var required_string = srcform.required.value;
		var fields = required_string.split(',');
		for (i=0; i<fields.length; i++) {
			var el = srcform.elements.namedItem(fields[i]);
			if (el == null || el.value.length <= 0) {
				return false;
			}
		}
	}
	return true;	
}

function set_required(field) { 
	required.push(field);
}


// for reverse compatibility
function submit_form(src_form) {
	return submit_form_path(src_form, "submit_form.php");
}

function submit_form_path(src_form, form_path) {
	if (check_form(src_form)) {
		contactHttp = GetXmlHttpObject()
		if (contactHttp == null) {
                 alert ("Browser does not support HTTP Request")
                 return false;
		}	
		var url = form_path+"?sid="+Math.random()
		var parameters = "";
		var paramct=0;
		for(i=0; i<src_form.elements.length; i++)
		{
			if (src_form.elements[i].name.length > 0) 
			{ 	
				if (paramct > 0)  { parameters += "&" } 
				parameters += encodeURIComponent(src_form.elements[i].name) + "=" + encodeURIComponent(src_form.elements[i].value);
				paramct++;
			}
			
		}
		contactHttp.onreadystatechange = formSubmitted;
		contactHttp.open('POST', url, true);
    		contactHttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
	      	contactHttp.setRequestHeader("Content-length", parameters.length);
      		contactHttp.setRequestHeader("Connection", "close");
	      	contactHttp.send(parameters);
	} else {
		alert('You must fill in the required fields');
	}
	return false;
}

function formSubmitted() {
	if (contactHttp.readyState == 4 || contactHttp.readyState == "complete")
	{
		document.getElementById("formarea").innerHTML=contactHttp.responseText
	}
}

function GetXmlHttpObject() {
        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;
}

