//##################################################################################

//## FORM SUBMIT WITH AJAX                                                        ##

//## @Author: Simone Rodriguez aka Pukos <http://www.SimoneRodriguez.com>         ##

//## @Version: 1.2                                                                ##

//## @Released: 28/08/2007                                                        ##

//## @License: GNU/GPL v. 2 <http://www.gnu.org/copyleft/gpl.html>                ##

//##################################################################################



function xmlhttpPost(strURL,formname,responsediv,responsemsg) {
	var error = false;
	var msg = '';
		//document.forms["myForm"]["enq_name"].value
if(formname=="sendenquiry1"){
	
	var formsname = formname;
    var name = document.forms[1].enq_name.value;
	var email = document.forms[1].enq_email.value;
	var phone = "";
	var req = document.forms[1].enq_req.value;
	var category =  document.forms[1].enq_category.value;
	var funname = formsname;
	
	if(document.forms[1].enq_name.value == "" ) {
		msg+="Please enter your name\n"; 
		error = true;
	}
	
	if(document.forms[1].enq_email.value == "") {
		msg+="Please enter your email\n"; 
		error = true;
	}
	
	if(document.forms[1].enq_req.value == "") {
		msg+="Please enter your requirement\n"; 
		error = true;
	}

} else if(formname=="sendenquiry2"){
	
	var formsname = formname;
    var name = document.forms[2].enq_name.value;
	var email = document.forms[2].enq_email.value;
	var phone = document.forms[2].enq_phone.value;
	var req = document.forms[2].enq_req.value;
	var category =  "";
	var funname = formsname;
	
	if(document.forms[2].enq_name.value == "" ) {
		msg+="Please enter your name\n"; 
		error = true;
	}
	
	if(document.forms[2].enq_email.value == "") {
		msg+="Please enter your email\n"; 
		error = true;
	}
	
	if(document.forms[2].enq_req.value == "") {
		msg+="Please enter your requirement\n"; 
		error = true;
	}
	
	
} else {

	var formsname ="sendenquiry";
	var name = document.forms[0].enq_name.value;
	var email = document.forms[0].enq_email.value;
	var phone = "";
	var req = document.forms[0].enq_req.value;
	var category =  ' ';
	var funname = formsname;
	
	
   if(document.forms[0].enq_name.value == "" ) {
		msg+="Please enter your name\n"; 
		error = true;
	}
	
	if(document.forms[0].enq_email.value == "") {
		msg+="Please enter your email\n"; 
		error = true;
	}
	
	if(document.forms[0].enq_req.value == "") {
		msg+="Please enter your requirement\n"; 
		error = true;
	}
	
	
}

	if(error == true) {
		alert(msg);
		return false;
	} 
	
	var xmlHttpReq = false;

    var self = this;

    // Xhr per Mozilla/Safari/Ie7

    if (window.XMLHttpRequest) {

        self.xmlHttpReq = new XMLHttpRequest();

    }

    // per tutte le altre versioni di IE

    else if (window.ActiveXObject) {

        self.xmlHttpReq = new ActiveXObject("Microsoft.XMLHTTP");

    }
		
	var data = "?name="+name+"&email="+email+"&phone="+phone+"&req="+req+"&cat="+category+"&fun="+funname;
	
	strURL = strURL + data;
	
	self.xmlHttpReq.open('POST', strURL, true);

    self.xmlHttpReq.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');

    self.xmlHttpReq.onreadystatechange = function() {

        if (self.xmlHttpReq.readyState == 4) {

			// Quando pronta, visualizzo la risposta del form

            updatepage(self.xmlHttpReq.responseText,responsediv);

        }

		else{

			// In attesa della risposta del form visualizzo il msg di attesa

		//	updatepage(responsemsg,responsediv);



		}

    }

    self.xmlHttpReq.send(getquerystring(formname));

}



function getquerystring(formname) {

    var form = document.forms[formname];

	var qstr = "";



    function GetElemValue(name, value) {

        qstr += (qstr.length > 0 ? "&" : "")

            + escape(name).replace(/\+/g, "%2B") + "="

            + escape(value ? value : "").replace(/\+/g, "%2B");

			//+ escape(value ? value : "").replace(/\n/g, "%0D");

    }

	

	var elemArray = form.elements;

    for (var i = 0; i < elemArray.length; i++) {

        var element = elemArray[i];

        var elemType = element.type.toUpperCase();

        var elemName = element.name;

        if (elemName) {

            if (elemType == "TEXT"

                    || elemType == "TEXTAREA"

                    || elemType == "PASSWORD"

					|| elemType == "BUTTON"

					|| elemType == "RESET"

					|| elemType == "SUBMIT"

					|| elemType == "FILE"

					|| elemType == "IMAGE"

                    || elemType == "HIDDEN")

                GetElemValue(elemName, element.value);

            else if (elemType == "CHECKBOX" && element.checked)

                GetElemValue(elemName, 

                    element.value ? element.value : "On");

            else if (elemType == "RADIO" && element.checked)

                GetElemValue(elemName, element.value);

            else if (elemType.indexOf("SELECT") != -1)

                for (var j = 0; j < element.options.length; j++) {

                    var option = element.options[j];

                    if (option.selected)

                        GetElemValue(elemName,

                            option.value ? option.value : option.text);

                }

        }

    }

    return qstr;

}

function updatepage(str,responsediv){
             alert(str);
	         document.getElementById('sendenquiry').reset();
             document.getElementById('sendenquiry1').reset();
			 document.getElementById('sendenquiry2').reset();
}
