var http_request = false;

function makePOSTRequest(url, parameters,stateChangeHandler) {
  http_request = false;
  if (window.XMLHttpRequest) { // Mozilla, Safari,...
	 http_request = new XMLHttpRequest();
	 if (http_request.overrideMimeType) {
		// set type accordingly to anticipated content type
		//http_request.overrideMimeType('text/xml');
		http_request.overrideMimeType('text/html');
	 }
  } else if (window.ActiveXObject) { // IE
	 try {
		http_request = new ActiveXObject("Msxml2.XMLHTTP");
	 } catch (e) {
		try {
		   http_request = new ActiveXObject("Microsoft.XMLHTTP");
		} catch (e) {}
	 }
  }
  if (!http_request) {
	 alert('Cannot create XMLHTTP instance');
	 return false;
  }
  
  //http_request.onreadystatechange = processResults;
  eval("http_request.onreadystatechange = " + stateChangeHandler + ";")
  http_request.open('POST', url, true);
  http_request.setRequestHeader("Content-type", "application/x-www-form-urlencoded"); 
  http_request.setRequestHeader("Content-length", parameters.length);
  //****************************************************************
  //Removed this code as a work around for ie6 ready state 3 delay *
  //http_request.setRequestHeader("Connection", "close");          
  //****************************************************************
  var random_number = Math.floor(Math.random()* 99999999);
  parameters += "&rndm="+ random_number;
  http_request.send(parameters);
}            

function processLoginReturn() 
{

    if (http_request.readyState == 4) {
        if (http_request.status == 200) {
            //the response text is the sessionid
		    var result = http_request.responseText;
            var session = result.split("|")[0];
            var q_str   = result.split("|")[1];
		    if(session > -1)
		    {
                window.location = "http://cp3-demo.jenisonhosted.co.uk/cp3_demo/mainframe/mainframe.htm?q=" + session + q_str;
          
		    }
		    else
		    {
		        alert('Your login details failed. Please check they are spelt correctly and are the correct case');
		    }
	     }else {
	        alert('There was a problem with logging in. Error: '+ http_request.status);
	     }
    }
}


function submitLogin()
{
    var username = document.getElementById("username").value;
    var password = document.getElementById("password").value;
    if (username.length==0){
        alert('Your login details failed. Please enter a valid Username.');
    }else if (password.length==0){
            alert('Your login details failed. Please enter a valid Password.');
          }else {
            var poststr = "Username_txt=" + encodeURI(username);
			    poststr+= "&Password_txt=" + encodeURI(password);
			    poststr+= "&post_URL=" + encodeURI('http://cp3-demo.jenisonhosted.co.uk/cp3/login/loginCheck.aspx')
            makePOSTRequest("request_forward.asp", poststr,"processLoginReturn");	
          }
}

function aKeyWasPressed(e){
    //keycode 13 is code for return key
    if (e.keyCode==13){
        submitLogin();
    }
}
