// Browser DetectionisMac = (navigator.appVersion.indexOf("Mac")!=-1) ? true : false;NS4 = (document.layers) ? true : false;IEmac = ((document.all)&&(isMac)) ? true : false;IE4plus = (document.all) ? true : false;IE4 = ((document.all)&&(navigator.appVersion.indexOf("MSIE 4.")!=-1)) ? true : false;IE5 = ((document.all)&&(navigator.appVersion.indexOf("MSIE 5.")!=-1)) ? true : false;ver4 = (NS4 || IE4plus) ? true : false;NS6 = (!document.layers) && (navigator.userAgent.indexOf('Netscape')!=-1)?true:false;// Body onload utility (supports multiple onload functions)var gSafeOnload = new Array();function SafeAddOnload(f){	if (IEmac && IE4)  // IE 4.5 blows out on testing window.onload	{		window.onload = SafeOnload;		gSafeOnload[gSafeOnload.length] = f;	}	else if  (window.onload)	{		if (window.onload != SafeOnload)		{			gSafeOnload[0] = window.onload;			window.onload = SafeOnload;		}				gSafeOnload[gSafeOnload.length] = f;	}	else		window.onload = f;}function SafeOnload(){	for (var i=0;i<gSafeOnload.length;i++)		gSafeOnload[i]();}  function getWindowHeight() {	 var windowHeight = 0;	 if (typeof(window.innerHeight) =='number') {		 windowHeight = window.innerHeight;	 }	 else {		 if (document.documentElement &&		 document.documentElement.clientHeight) {			 windowHeight = document.documentElement.clientHeight;		 }		 else {			 if (document.body && document.body.clientHeight) {				 windowHeight = document.body.clientHeight;			 }		 }	 }	 return windowHeight; }// this function is needed to work around // a bug in IE related to element attributesfunction hasClass(obj) {	var result = false;	if (obj.getAttributeNode("class") != null) {		result = obj.getAttributeNode("class").value;	}	return result;}   /**/function tableRuler(){	if (document.getElementById && document.createTextNode)	{		var tables=document.getElementsByTagName('table');		for (var i=0;i<tables.length;i++)		{			//if(tables[i].className=='ruler')			if (tables[i].className.search(/ruler/) >= 0)			{				var trs=tables[i].getElementsByTagName('tr');				for(var j=0;j<trs.length;j++)				{					if(trs[j].parentNode.nodeName=='TBODY')					{						trs[j].onmouseover = addTableRulerClass;						trs[j].onmouseout = removeTableRulerClass;					}				}			}		}	}}function removeTableRulerClass(){	this.className = this.oldClass;}function addTableRulerClass(){	this.oldClass = this.className;	this.className = "ruled";}/*function stripe(id) {	// the flag we'll use to keep track of 	// whether the current row is odd or even	var even = false;		// if arguments are provided to specify the colours	// of the even & odd rows, then use the them;	// otherwise use the following defaults://	var evenColor = arguments[1] ? arguments[1] : "#fff";//	var oddColor = arguments[2] ? arguments[2] : "#eee";	var evenClass = arguments[1] ? arguments[1] : "even";	var oddClass = arguments[2] ? arguments[2] : "odd";		// obtain a reference to the desired table	// if no such table exists, abort	var table = document.getElementById(id);	if (! table) { return; }		// by definition, tables can have more than one tbody	// element, so we'll have to get the list of child	// &lt;tbody&gt;s 	var tbodies = table.getElementsByTagName("tbody");		// and iterate through them...	for (var h = 0; h < tbodies.length; h++) {			// find all the &lt;tr&gt; elements... 		var trs = tbodies[h].getElementsByTagName("tr");				// ... and iterate through them		for (var i = 0; i < trs.length; i++) {					var clazz = even ? evenClass : oddClass;			if (hasClass(trs[i])) {				clazz = trs[i].className & "" & clazz;			}			trs[i].className = clazz;					/*			// avoid rows that have a class attribute			// or backgroundColor style			if (! hasClass(trs[i]) &&				! trs[i].style.backgroundColor)			{							// get all the cells in this row...				var tds = trs[i].getElementsByTagName("td");								// and iterate through them...				for (var j = 0; j < tds.length; j++) {									var mytd = tds[j];									// avoid cells that have a class attribute					// or backgroundColor style					if (! hasClass(mytd) &&						! mytd.style.backgroundColor)					{						mytd.style.backgroundColor = even ? evenColor : oddColor;					}				}			}			// flip from odd to even, or vice-versa			even =  ! even;		}	}}	*/function stripeTables() {	if (document.getElementById && document.createTextNode)	{		var tables=document.getElementsByTagName('table');		for (var i=0;i<tables.length;i++)		{			//if(tables[i].className=='striped')			if (tables[i].className.search(/striped/) >= 0)			{				stripe(tables[i]);			}		}	}}function stripe(table) {	// the flag we'll use to keep track of 	// whether the current row is odd or even	var even = false;		// if arguments are provided to specify the classes	// of the even & odd rows, then use the them;	// otherwise use the following defaults:	var evenClass = arguments[1] ? arguments[1] : "even";	var oddClass = arguments[2] ? arguments[2] : "odd";		// by definition, tables can have more than one tbody	// element, so we'll have to get the list of child	// &lt;tbody&gt;s 	var tbodies = table.getElementsByTagName("tbody");		// and iterate through them...	for (var h = 0; h < tbodies.length; h++) {			// find all the &lt;tr&gt; elements... 		var trs = tbodies[h].getElementsByTagName("tr");				// ... and iterate through them		for (var i = 0; i < trs.length; i++) {					var clazz = even ? evenClass : oddClass;			if (hasClass(trs[i])) {				clazz = trs[i].className & "" & clazz;			}			trs[i].className = clazz;						// flip from odd to even, or vice-versa			even =  ! even;		}	}}	/* function setFooter() {	if (document.getElementById) {		var windowHeight = getWindowHeight();		if (windowHeight > 0) {			var contentHeight = document.getElementById('content').offsetHeight;			var footerElement = document.getElementById('footer');			var footerHeight  = footerElement.offsetHeight;			if (windowHeight - (contentHeight + footerHeight) >= 0) {				footerElement.style.position = 'relative';				footerElement.style.top = (windowHeight - (contentHeight + footerHeight)) + 'px';			}			else {				footerElement.style.position = 'static';			}		}	}}*/function setFooter() {	if (document.getElementById) {		var windowHeight = getWindowHeight();		if (windowHeight > 0) {			var headerHeight = document.getElementById('header').offsetHeight;			var containerHeight = document.getElementById('container').offsetHeight;			var footerElement = document.getElementById('footer');			var footerHeight  = footerElement.offsetHeight;			if (windowHeight - (containerHeight) >= 0) {				footerElement.style.position = 'relative';				footerElement.style.top = (windowHeight - (containerHeight+headerHeight)) + 'px';			}			else {				footerElement.style.position = 'static';			}		}	}}function testbox(form, ctrl, value) {	if (value == "" || value.indexOf ('@',1) == -1 ||	value.indexOf ('.',3) == -1)	{		return (false);	}	else	{		return (true);	}}