var xmlhttp;

function stateChanged()
{
if (xmlhttp.readyState==4)
  {
  document.getElementById("submitSimulator").innerHTML=xmlhttp.responseText;

  }
}

function GetXmlHttpObject()
{
if (window.XMLHttpRequest)
  {
  // code for IE7+, Firefox, Chrome, Opera, Safari
  return new XMLHttpRequest();
  }
if (window.ActiveXObject)
  {
  // code for IE6, IE5
  return new ActiveXObject("Microsoft.XMLHTTP");
  }
return null;
}




function submitSimulator()
{
    var ready = true;

    if(testLength( document.forms["submitSim"].elements["simulatorName"].value, 2, 43, 'simNameError') == false)
        {
            ready = false;
        }
        
    if(testLength( document.forms["submitSim"].elements["simulatorWebsite"].value, 7, 98, 'simWebsiteError') == false)
        {
            ready = false;
        }
        
    if(testLength( document.forms["submitSim"].elements["yourName"].value, 2, 43, 'yourNameError') == false)
        {
            ready = false;
        }
        
    if(testEmail( document.forms["submitSim"].elements["yourEmail"].value, 'yourEmailError') == false)
        {
            ready = false;
        }
        
    if(document.forms["submitSim"].elements["antibot"].value != 9)
        {
            ready = false;
            document.getElementById('antibotLabel').id = "antiBotError";
        }
       

    if(ready)
        {
            xmlhttp=GetXmlHttpObject()
            if (xmlhttp==null)
              {
              alert ("Your browser does not support XML HTTP Request");
              return;
              }



            var urlA="submitter.php";
            var url = "";
            url+="simName="+document.forms["submitSim"].elements["simulatorName"].value;
            url+="&simWebsite="+document.forms["submitSim"].elements["simulatorWebsite"].value;
            url+="&submitterName="+document.forms["submitSim"].elements["yourName"].value;
            url+="&submitterEmail="+document.forms["submitSim"].elements["yourEmail"].value;
            url+="&submitterMessage="+document.forms["submitSim"].elements["message"].value;
            


            xmlhttp.open("POST",urlA,true);
            //Send the proper header infomation along with the request
                    xmlhttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
                    xmlhttp.setRequestHeader("Content-length", url.length);
                    xmlhttp.setRequestHeader("Connection", "close");
                    xmlhttp.onreadystatechange=stateChanged ;
            xmlhttp.send(url);
        }



    
}

function testLength(string, minLength, maxLength, errorID)
{
    

    if(string.length < minLength)
        {
            document.getElementById(errorID).innerHTML = "Input must be atleast " + minLength + " characters long.";
            return false;
        }
    else if(string.length > maxLength)
        {
            document.getElementById(errorID).innerHTML = "Input must be less than " + maxLength + " characters long.";
            return false;
        }
    else
        {
            document.getElementById(errorID).innerHTML = "";
            return true;
        }
}

function testEmail(string,  errorID)
{
    var valid = false;
    for(var i = 0; i < string.length; i++)
        {
            if(string.charAt(i)=='@')
                {
                    valid = true;
                }
        }
    if(valid)
        {
            document.getElementById(errorID).innerHTML = "";
        }
    else
        {
            document.getElementById(errorID).innerHTML = "Invalid email address.";
        }

    if(string.length < 5 || string.length > 58)
        {
            valid = false;
            document.getElementById(errorID).innerHTML = "Incorrect Length.";
        }
         

     return valid;
}


