// JavaScript Document

var focus_hack = function(el) {
	var els,i;
	els = el.getElementsByTagName("INPUT");
	for(i=0;i<els.length;i++)
		if(els[i].type == 'text' && els[i].value == '') {
			els[i].focus();
			break;
		}
};

function formatCurrency(num) {
	num = num.toString().replace(/\$|\,/g, '');
	if (isNaN(num)) num = '0';
	sign = (num == (num = Math.abs(num)));
	num = Math.floor(num * 100 + 0.50000000001);
	cents = num % 100;
	num = Math.floor(num / 100).toString();
	if (cents < 10) cents = '0' + cents;
	for (var i = 0; i < Math.floor((num.length-(1 + i)) / 3); i++)
	num = num.substring(0, num.length-(4 * i + 3)) + ',' + num.substring(num.length-(4 * i + 3));
	return (((sign) ? '' : '-') + '$' + num + '.' + cents);
}

function formatCurrencyPlain(num) {
   num = isNaN(num) || num === '' || num === null ? 0.00 : num;
   return parseFloat(num).toFixed(2);
}

function updateBNAText()
{
xmlHttpBNAText=GetXmlHttpObject();
if (xmlHttpBNAText==null)
  {
  alert ("Your browser does not support AJAX!");
  return;
  }
var url="updatebnatext.asp";
url=url+"?sid="+Math.random();
xmlHttpBNAText.onreadystatechange=updatebnatextdiv;
xmlHttpBNAText.open("GET",url,true);
xmlHttpBNAText.send(null);
return false;
}

function updatebnatextdiv()
{
if (xmlHttpBNAText.readyState==4)
		{
			document.getElementById('bnatextdiv').innerHTML=xmlHttpBNAText.responseText;
		}
}

function savefield(trecid, tname, tvalue, tfile, tpage, twhichid)
{
xmlHttpsavefield=GetXmlHttpObject();
if (xmlHttpsavefield==null)
  {
  alert ("Your browser does not support AJAX!");
  return;
  }
var url="savefield.asp";
url=url+"?recid="+trecid+"&name="+encodeURIComponent(tname)+"&value="+encodeURIComponent(tvalue)+"&file="+encodeURIComponent(tfile)+"&whichid="+twhichid;
if (typeof(tpage)=='string') {
	alert(typeof(tpage) + "-" + url + " - " + tpage);
}
url=url+"&sid="+Math.random();
xmlHttpsavefield.onreadystatechange=updatesavefield(tpage);
xmlHttpsavefield.open("GET",url,true);
xmlHttpsavefield.send(null);
return false;
}

function updatesavefield(tpage)
{
	return function() {
		if (xmlHttpsavefield.readyState==4)
		{
			if (xmlHttpsavefield.responseText!="ok") {
				alert(xmlHttpsavefield.responseText);
			} else {
				if ( typeof(tpage)!='undefined' ) {
					tpage();
				}
			}
		}
	}
}

function GetXmlHttpObject()
{
var xmlHttp=null;
try
  {
//   Firefox, Opera 8.0+, Safari
  xmlHttp=new XMLHttpRequest();
  }
catch (e)
  {
 //  Internet Explorer
  try
    { xmlHttp=new ActiveXObject("Msxml2.XMLHTTP"); }
  catch (e)
    { xmlHttp=new ActiveXObject("Microsoft.XMLHTTP"); }
  }
return xmlHttp;
}


function generalDivUpdater(tprogram, twhere, twhat, textra1, textra2, textra3, textra4)
{
var xmlHttpgendivupdate=GetXmlHttpObject();
if (xmlHttpgendivupdate==null)
  {
  alert ("Your browser does not support AJAX!");
  return;
  }
var url=tprogram + "?what="+twhat+"&extra1="+textra1+"&extra2="+textra2+"&extra3="+textra3+"&extra4="+textra4;
url=url+"&sid="+Math.random();
xmlHttpgendivupdate.onreadystatechange=updategendivupdatediv(xmlHttpgendivupdate, twhere);
xmlHttpgendivupdate.open("GET",url,true);
xmlHttpgendivupdate.send(null);
return false;
}

function updategendivupdatediv(xmlHttpgendivupdate, twhere)
{
	return function() {
		if (xmlHttpgendivupdate.readyState==4)
		{
			document.getElementById(twhere).innerHTML=xmlHttpgendivupdate.responseText;
		}
	}
}

function genericUpdate(tprog, tdiv, callback) {
	var xmlHttpGU=GetXmlHttpObject();
	var url= tprog
	xmlHttpGU.onreadystatechange = function() {
		if (xmlHttpGU.readyState==4)
		{
		document.getElementById(tdiv).innerHTML=xmlHttpGU.responseText;
//		alert(tprog + "|" + tdiv + xmlHttpGU.responseText);
		if (typeof callback != 'undefined') callback();
		}
	}
	xmlHttpGU.open("GET",url,true);
	xmlHttpGU.send(null);
	return false;
}

