Array.find = function(ary, element)
{
	for(var i=0; i<ary.length; i++)
	{
		if(ary[i] == element)
		{
			return i;
		}
	}
	return -1;
}

function detectBrowser()
{
	var sDetect = navigator.userAgent.toLowerCase();
	var sBrowser, sVersion;

//	if (sDetect.indexOf('konqueror') + 1)
//	{
//		sBrowser = "Konqueror";
//		OS = "Linux";
//	}
	if (sDetect.indexOf('konqueror') + 1)
	{
		sBrowser = "Konqueror";
	}
	else if (sDetect.indexOf('firefox') + 1)
	{
		sBrowser = "Safari";
	}
	else if (sDetect.indexOf('safari') + 1)
	{
		sBrowser = "Safari";
	}
	else if (sDetect.indexOf('omniweb') + 1)
	{
		sBrowser = "OmniWeb";
	}
	else if (sDetect.indexOf('opera') + 1)
	{
		sBrowser = "Opera";
	}
	else if (sDetect.indexOf('webtv') + 1)
	{
		sBrowser = "WebTV";
	}
	else if (sDetect.indexOf('icab') + 1)
	{
		sBrowser = "iCab";
	}
	else if (sDetect.indexOf('msie') + 1)
	{
		sBrowser = "Internet Explorer";
	}
	else if (!(sDetect.indexOf('compatible') + 1))
	{
		sBrowser = "Netscape Navigator"
//		version = detect.charAt(8);
	}
	else sBrowser = "An unknown browser";

	return sBrowser

//	if (!version) version = detect.charAt(place + thestring.length);

//	if (!OS)
//	{
//		if (checkIt('linux')) OS = "Linux";
//		else if (checkIt('x11')) OS = "Unix";
//		else if (checkIt('mac')) OS = "Mac"
//		else if (checkIt('win')) OS = "Windows"
//		else OS = "an unknown operating system";
//	}
}

function getRowDispType()
{
	var dispType = "table-row";
/*
	var browserName = navigator.appName;
	if (browserName == "Microsoft Internet Explorer")
	{
		dispType = "block";
	}
*/
	if (detectBrowser() == "Internet Explorer")
	{
		dispType = "block";
	}

	return dispType;
}

function getCellDispType()
{
	var dispType = "table-cell";

	if (detectBrowser() == "Internet Explorer")
	{
		dispType = "block";
	}

	return dispType;
}

function gBID(elementID)
{
	return document.getElementById(elementID);
}

function catchEnter(e)
{
	var code;

	if (!e)
	{
		var e = window.event;
	}

	if (e.keyCode)
	{
		code = e.keyCode;
	}
	else if (e.which)
	{
		code = e.which;
	}

	if (code==13)
	{
		return true;
	}
	else
	{
		return false;
	}
}

function redirectTo(address)
{
	if (location.replace)
	{
		location.replace(address);
	}
	else
	{
		location.href = address;
	}
}

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 catchEnter(e)
{
	var code;

	if (!e)
	{
		var e = window.event;
	}

	if (e.keyCode)
	{
		code = e.keyCode;
	}
	else if (e.which)
	{
		code = e.which;
	}

	if (code==13)
	{
		return true;
	}
	else
	{
		return false;
	}
}

