
function BlockSafari()
{
var browser="NC"; // non-compliant to w3c

var x = navigator;
var Name = x.appName;
var UA = x.userAgent;

if (UA.search("afari") > 0)
	window.location = "safari-user.htm";
}

function MakeRequest()
{
	var strParams = ComputeFormParams();
	MakeRequestWorker(strParams);
}
function MakeRequestWorker(strParams)
{ 
document.getElementById('submitButton').disabled = true;
  var xmlHttp = getXMLHttp();
 
  xmlHttp.onreadystatechange = function()
  {
    if(xmlHttp.readyState == 4)
    {
		document.getElementById('submitButton').disabled = false;
	  HandleResponse(xmlHttp.responseText);
	  window.scrollBy(0, 100);
		
    }
  }
  xmlHttp.open("POST", "loanform.php", true);

xmlHttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
xmlHttp.setRequestHeader("Content-length", strParams.length);
xmlHttp.setRequestHeader("Connection", "close");
  xmlHttp.send(strParams);
}

function getXMLHttp()
{
  var xmlHttp

  try
  {
    //Firefox, Opera 8.0+, Safari
    xmlHttp = new XMLHttpRequest();
  }
  catch(e)
  {
    //Internet Explorer
    try
    {
      xmlHttp = new ActiveXObject("Msxml2.XMLHTTP");
    }
    catch(e)
    {
      try
      {
        xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
      }
      catch(e)
      {
        alert("Your browser does not support AJAX!")
        return false;
      }
    }
  }
  return xmlHttp;
} //end getXMLHttp()

var alListFormEntries;
var currentQuestion = "3";
function ComputeFormParams()
{
	if(!alListFormEntries)
		InitListFormEntries();
	var strParams = "";
	strParams += "divId=" + idCurrentDiv + "&";
	strParams += "question=" + currentQuestion + "&";
//alert("question=" + currentQuestion);
	//avoid outputting 'undefined'
	if(reasonIneligible)
		strParams += "reasonIneligible=" + reasonIneligible + "&";

	var i;
	for(i = 0; i < alListFormEntries.length; i++)
	{
		var strId = alListFormEntries[i];
		var val = GetElValue(strId);
		strParams += strId + "=" + val + "&";
	}
	return strParams;
}

function GetEl(strId)
{
	return document.getElementById(strId);
}
function SetElValue(el, val)
{
	if(el.id.indexOf("rad") == 0) //handle radio case
		el.checked = val;
	else
		el.value = val;	
}
function GetElValue(strId)
{
	var el = GetEl(strId);
	if(strId.indexOf("rad") == 0) //handle radio case
		return el.checked;
	return el.value;
}
function InitListFormEntries()
{
	alListFormEntries = new Array();

	AddEl("Name");
	AddEl("Email");

	AddEl("radAgreeToTerms1");
	AddEl("radAgreeToTerms2");
}
function AddEl(strId)
{
	alListFormEntries.push(strId);
}
function AddElArray(alListAppend)
{
	var i;
	for(i = 0; i < alListAppend.length; i++)
	{
		AddEl(alListAppend[i]);
	}
}
function ShowError(strResponse)
{
	var strPrefix = "MSG=";
	if(strResponse.indexOf(strPrefix) == 0)
	{
		var error = strResponse.substring(strPrefix.length);
		alert(error);
		return true;
	}
	return false;
}


function MakeNewPage(strResponse)
{
	var strPrefix = "makenew=";
	if(strResponse.indexOf(strPrefix) == 0)
	{
		var divEntirePage = GetEl("divEntirePage");
		var html = strResponse.substring(strPrefix.length);
		divEntirePage.innerHTML = html;
		ScrollToStart();		
		return true;
	}
	return false;
}
function EnableForm()
{
	GetEl('Name').disabled = false;
	GetEl('Email').disabled = false;
	GetEl('radAgreeToTerms1').disabled = false;
	GetEl('radAgreeToTerms2').disabled = false;
}
var idCurrentDiv = 1;
var reasonIneligible;
function HandleResponse(strResponse)
{
//alert("resp=" + strResponse);
	if(strResponse == "ExitAjax")
	{
		alert("done with ajax");
		return;
	}
	if(ShowError(strResponse))
		return;
	if(MakeNewPage(strResponse))
		return;
	
	var hashValues = ParseResponse(strResponse);

	var urlRedir = hashValues['redir'];
	if(urlRedir)
	{
		window.location = urlRedir;
		return;
	}
	reasonIneligible = hashValues['reasonIneligible'];
	currentQuestion = hashValues['question'];

	if(idCurrentDiv == 1)
		HideFirstPage();

	var idNextDiv = hashValues['divId'];
	idCurrentDiv = idNextDiv;
	var divNext = CreateNextDiv(idNextDiv);

	var strHtml = hashValues['html'];
	divNext.innerHTML = strHtml;

	DisablePreviousControls();
	var strNewIds = hashValues['idsNew'];
	var alNewIds = strNewIds.split(',');
	AddElArray(alNewIds);

	//ScrollToEnd();
}
function HideFirstPage()
{
	GetEl('divFirstPage').style.display = 'none';
}
function DisablePreviousControls()
{
	var i;
	for(i = 0; i < alListFormEntries.length; i++)
		GetEl(alListFormEntries[i]).disabled = true;
}
function CreateNextDiv(idNextDiv)
{
	var divNext = document.createElement('div');
   	divNext.setAttribute('id', idNextDiv);
	document.getElementById('divContainer').appendChild(divNext);
	return divNext;
}
function ParseResponse(strResponse)
{
	var hashValues = new Array();
	var arRecords = strResponse.split('##');
	var i = 0;
	for(i = 0; i < arRecords.length; i++)
	{
		var arSegments = arRecords[i].split("=#");	
		var strField = trim(arSegments[0]);
		var strValue = trim(arSegments[1]);
		hashValues[strField] = strValue;
	}
	return hashValues;
}
function trim(s)
{
	if(!s)
		return s;
	var l=0; var r=s.length -1;
	while(l < s.length && s.charAt(l) == ' ')
	{	l++; }
	while(r > l && s.charAt(r) == ' ')
	{	r-=1;	}
	return s.substring(l, r+1);
}
function ScrollDown()
{
	window.scrollBy(0, 400);
}
function ScrollToStart()
{
	window.scrollBy(0, -10000);
}

function ScrollToEnd()
{
	window.scrollBy(0, 5000);
}
function Msg(str)
{
	alert(str);
}