
var BrowserDetect = {
	init: function () {
		this.browser = this.searchString(this.dataBrowser) || "An unknown browser";
		this.version = this.searchVersion(navigator.userAgent)
			|| this.searchVersion(navigator.appVersion)
			|| "an unknown version";
		this.OS = this.searchString(this.dataOS) || "an unknown OS";
		
        this.ns4=(this.browser=="Netscape" && this.version==4);
        this.ie4=(this.browser=="Explorer" && this.version==4);
        this.Mac=(this.OS=="Mac");
        this.Windows=(this.OS=="Windows");
	},
	searchString: function (data) {
		for (var i=0;i<data.length;i++)	{
			var dataString = data[i].string;
			var dataProp = data[i].prop;
			this.versionSearchString = data[i].versionSearch || data[i].identity;
			if (dataString) {
				if (dataString.indexOf(data[i].subString) != -1)
					return data[i].identity;
			}
			else if (dataProp)
				return data[i].identity;
		}
	},
	searchVersion: function (dataString) {
		var index = dataString.indexOf(this.versionSearchString);
		if (index == -1) return;
		return parseFloat(dataString.substring(index+this.versionSearchString.length+1));
	},
	dataBrowser: [
		{
			string: navigator.userAgent,
			subString: "Chrome",
			identity: "Chrome"
		},
		{ 	string: navigator.userAgent,
			subString: "OmniWeb",
			versionSearch: "OmniWeb/",
			identity: "OmniWeb"
		},
		{
			string: navigator.vendor,
			subString: "Apple",
			identity: "Safari"
		},
		{
			prop: window.opera,
			identity: "Opera"
		},
		{
			string: navigator.vendor,
			subString: "iCab",
			identity: "iCab"
		},
		{
			string: navigator.vendor,
			subString: "KDE",
			identity: "Konqueror"
		},
		{
			string: navigator.userAgent,
			subString: "Firefox",
			identity: "Firefox"
		},
		{
			string: navigator.vendor,
			subString: "Camino",
			identity: "Camino"
		},
		{		// for newer Netscapes (6+)
			string: navigator.userAgent,
			subString: "Netscape",
			identity: "Netscape"
		},
		{
			string: navigator.userAgent,
			subString: "MSIE",
			identity: "Explorer",
			versionSearch: "MSIE"
		},
		{
			string: navigator.userAgent,
			subString: "Gecko",
			identity: "Mozilla",
			versionSearch: "rv"
		},
		{ 		// for older Netscapes (4-)
			string: navigator.userAgent,
			subString: "Mozilla",
			identity: "Netscape",
			versionSearch: "Mozilla"
		}
	],
	dataOS : [
		{
			string: navigator.platform,
			subString: "Win",
			identity: "Windows"
		},
		{
			string: navigator.platform,
			subString: "Mac",
			identity: "Mac"
		},
		{
			string: navigator.platform,
			subString: "Linux",
			identity: "Linux"
		}
	]

};
BrowserDetect.init();

var savedRightText=null;

function getObj(id){
	var obj;
	if(BrowserDetect.ie4)obj=document.all[id];
	else
	    if(BrowserDetect.ns4)obj=document[id];
	        else
	        	obj=document.getElementById(id);
	return obj;
}

function getStyleObj(id){
	var obj;
	if(BrowserDetect.ie4)obj=document.all[id].style;
	else 
	    if(BrowserDetect.ns4)obj=document[id];
	    else 
	        obj=document.getElementById(id).style;
	return obj;
}

function moveObj(div,x,y){
	var obj=getStyleObj(div);
	obj.left=x;
	obj.top=y;
}

function showObj(div){
	var obj=getStyleObj(div);
	obj.visibility='visible';
	obj.display='block';
}

function hideObj(div){
	var obj=getStyleObj(div);
	obj.visibility='hidden';
	obj.display='none';
}

function writeObj(div, text){
	var obj=getObj(div);
	if(BrowserDetect.ns4){
		obj.document.write(text)
		obj.document.close();
	}else obj.innerHTML=text;
}

function getObjX(div){
	return parseInt(getStyleObj(div).left);
}

function getObjY(div){
	return parseInt(getStyleObj(div).top);
}

function changeImg(id, newImage){
	var imgObj=getObj(id);
	if(typeof(imgObj)=='object'){
		imgObj.src=newImage;
	}
}

function changeBgColor(id, color)
{
	var obj=getStyleObj(id);
	if(typeof(obj)=='object'){
		obj.backgroundColor=color;
	}	
}

var now;

function getLeftPaddedString( s, len, padChar )
{
	while( s.length < len )
		s = padChar + s;
		
	return s;
}

function getTimePart( val )
{
	return getLeftPaddedString( val.toString(), 2, '0' );
}

function getTimeString( date )
{
	return getTimePart( date.getHours() ) + ":" + getTimePart( date.getMinutes() ) + ":" + getTimePart( date.getSeconds() );
}

function startClock(hours, minutes, seconds)
{
	now = new Date();
	now.setHours(hours);
	now.setMinutes(minutes);
	now.setSeconds(seconds);

	writeObj('ClockTime', getTimeString(now));
	
	var timerID = setInterval("showTime()",1000);
}

function showTime()
{
	now.setSeconds(now.getSeconds()+1);
	writeObj('ClockTime', getTimeString( now ) );
}

function printPage(){
   if(window.print) window.print();
   else{
     if(BrowserDetect.Mac)alert("Tryck Command + P för att skriva ut sidan")
	 else alert("Tryck Ctrl + P för att skriva ut sidan")
   }
}

function toggleDisplay( id )
{
	var obj=getStyleObj( id );
	if(obj.display=='none')
		obj.display='block';
	else
		obj.display='none';
}

