function createRequestObject() {
    var tmpXmlHttpObject;
    
    //depending on what the browser supports, use the right way to create the XMLHttpRequest object
    if (window.XMLHttpRequest) { 
        // Mozilla, Safari would use this method ...
        tmpXmlHttpObject = new XMLHttpRequest();
	
    } else if (window.ActiveXObject) { 
        // IE would use this method ...
        tmpXmlHttpObject = new ActiveXObject("Microsoft.XMLHTTP");
    }
    return tmpXmlHttpObject;
}

//call the above function to create the XMLHttpRequest object
var http = createRequestObject();

function makeGetRequest(myRemoteCall) {
    //make a connection to the server ... specifying that you intend to make a GET request 
    //to the server. Specifiy the page name and the URL parameters to send
    http.open('get', this.remoteUrl);
	
    //assign a handler for the response
    http.onreadystatechange = bind(myRemoteCall, "processResponse");
	
    //actually send the request to the server
    http.send(null);
}

function remoteCall(remoteUrl, errorDiv, form){
    this.remoteUrl=remoteUrl;
    this.errorDiv=errorDiv;
    this.form=form;
}

remoteCall.prototype.makeGetRequest=makeGetRequest;
remoteCall.prototype.processResponse=processResponse;

function makeRequest(){
    
        email=document.advertisement.email.value;
		name=document.advertisement.name.value;
		company=document.advertisement.company.value;
		phone=document.advertisement.phone.value;
		comments=document.advertisement.comments.value;
        url='checkAdvertiseInput.php?email=' + email + '&name=' + name + '&company=' + company + '&phone='+ phone + '&comments=' + comments;
        form=document.advertisement;
        myRemoteCall= new remoteCall(url, 'errorMesg', form);

        myRemoteCall.makeGetRequest(myRemoteCall);
}

function bind(toObject, methodName){
    return function(){return toObject[methodName]()}
}

function processResponse() {
    //check if the response has been received from the server
    if(http.readyState == 4){
        //read and assign the response from the server
        var response = http.responseText;
        if(response == "valid"){
            this.form.submit();
        }
        else{
            document.getElementById(this.errorDiv).innerHTML = response; 
        }
    }
}
