 var f = false;
 
 function DP_AJAX(url, formname) {
	 ClearError ();
	Startloader();
	 
  if (!f && http) {
	 var fields = new Array();
    if(formname){
      var ajax = formname;
    }
    //loop through form elements and retrieve field NAMEs and Values
    for (var x = 0; x < eval("document."+ajax+".elements.length"); x++){
	
     // join them into a string.
 eval("fields.push(document."+ajax+
".elements[x].name+'='+document."
+ajax+".elements[x].value)");
     }
    elem = 'errors';
    //sendf looks like "username=myusername&password=mypass"
    var sendf = fields.join('&');
    http.open("POST", url, true);
    http.onreadystatechange = Response;
    http.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
    http.send(sendf);
    f = true;
	}
}


//XMLhttprequest

function XMLHTTPObject() {
   var xmlhttp;
 if (window.ActiveXObject) {
    // Instantiate the latest Microsoft ActiveX Objects
    if (_XML_ActiveX) {
       xmlhttp = new ActiveXObject(_XML_ActiveX);
     } else {
     // loops through the various versions of XMLHTTP to ensure we're using the latest
     var versions = ["MSXML2.XMLHTTP", "Microsoft.XMLHTTP", 
"Msxml2.XMLHTTP.7.0", "Msxml2.XMLHTTP.6.0", "Msxml2.XMLHTTP.5.0", 
"Msxml2.XMLHTTP.4.0", "MSXML2.XMLHTTP.3.0"];
     for (var i = 0; i < versions.length ; i++) {
       try {
        // Try and create the ActiveXObject for Internet Explorer, if it doesn't work, try again.
        xmlhttp = new ActiveXObject(versions[i]);
         if (xmlhttp) {
          var _XML_ActiveX = versions[i];
          break;
        }
      }
      catch (e) {
         // TRAP
       } ;
     }
   ;
   }
  } // Well if there is no ActiveXObject available it must be firefox, opera, or something else
   if (!xmlhttp && typeof XMLHttpRequest != 'undefined') {
    try {
      xmlhttp = new XMLHttpRequest();
    } catch (e) {
       xmlhttp = false;
     }
   }
  return xmlhttp;
 }
var http = XMLHTTPObject(); // Create the XMLHttpRequest Object.


// recieving function



function Response() {
  if (http.readyState == 4) {
    if(http.status == 200){
      setTimeout  ("status200()",1500);
	  
    } else {
      var results = "Unable to connect to the email server.<br/> Please email me at <a href='mailto:email@sarahbrookephotography.com'>email@sarahbrookephotography.com</a>";
      var para = document.getElementById('messageArea');
      para.innerHTML = results;
	  }
  }
}

function status200 (){
	results = http.responseText; // http.responseXML;
      var para = document.getElementById('messageArea'); //or whatever ID you gave your element.
      //para.innerHTML = results;	
	  eval(http.responseText);
      f = false; // re activate the AJAX function
}


function Startloader () {
	var send = document.getElementById('send');
	send.style.visibility = "hidden";	 
		var results = "Please wait while we process your information. <br /> <img src='images/ajax-loader.gif'/>";
		  var para = document.getElementById('messageArea');
		  para.innerHTML = results;
		var loading = document.getElementById('loadingMessage');
		centerdiv('loadingMessage');
		loading.style.display="block"
	 }

function KillLoader (){
	var loader = document.getElementById('loading');
	loading.style.display="none";
}

function ClearError () {
      var para = document.getElementById('messageArea');
      para.innerHTML = "";	
	  var loading = document.getElementById('loadingMessage');
	  loading.style.display="block";
}

function showSend () {
	var send = document.getElementById('send');
	send.style.visibility = "visible";
}

function centerdiv(IDname)
    { 
    mydiv = document.getElementById(IDname);
    mydiv.style.display = "block";
    var x = (document.body.clientWidth / 2) - (mydiv.offsetWidth / 2);
    var y = (document.body.clientHeight / 2) - (mydiv.offsetHeight / 2);    
    mydiv.style.top = y;
    mydiv.style.left = x;
    }
