detect = function() {
	var agent 	= navigator.userAgent.toLowerCase();
	//var ieVer = 0;
	this.isIE7 = false;
	var safariVer = (agent.indexOf('safari/') != -1) ? parseInt(agent.split('safari/')[1]) : 0;
	this.isMac		= (agent.indexOf('mac') != -1);
	this.isWin		= (agent.indexOf('win') != -1);
	this.isWin2k	= (this.isWin && (
			agent.indexOf('nt 5') != -1));
	this.isWinSP2	= (this.isWin && (
			agent.indexOf('xp') != -1 || 
			agent.indexOf('sv1') != -1));
	this.isOther	= (
			agent.indexOf('unix') != -1 || 
			agent.indexOf('sunos') != -1 || 
			agent.indexOf('bsd') != -1 ||
			agent.indexOf('x11') != -1 || 
			agent.indexOf('linux') != -1);
	this.isSafari	= (agent.indexOf('safari') != -1);
	this.isSafari2	= (safariVer >= 412);
	this.isOpera	= (agent.indexOf('opera') != -1);
	this.isNN		= (agent.indexOf('netscape') != -1);
	this.isIE		= (agent.indexOf('msie') != -1);
	var re  = new RegExp("msie ([0-9]{1,}[\.0-9]{0,})");
	if (re.exec(agent) != null) {
      var ver = parseFloat( RegExp.$1 );
      this.isIE7 = (ver >= 7);
	}	
}

function createCookie(name,value,days)
{
	if (days)
	{
		var date = new Date();
		date.setTime(date.getTime()+(days*24*60*60*1000));
		var expires = "; expires="+date.toGMTString();
	}
	else var expires = "";
	document.cookie = name+"="+value+expires+"; path=/";
}

function readCookie(name)
{
	var nameEQ = name + "=";
	var ca = document.cookie.split(';');
	for(var i=0;i < ca.length;i++)
	{
		var c = ca[i];
		while (c.charAt(0)==' ') c = c.substring(1,c.length);
		if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length,c.length);
	}
	return null;
}

function eraseCookie(name)
{
	createCookie(name,"",-1);
}

function nameToCssId(name) {
	name=name.replace(new RegExp("[,.':;]+"), "");
	name=name.replace(/-/g,"_");
	name=name.replace(/ /g,"_");
	return name
}
