




function setCookie(cookieName,cookieValue,nDays) {
	var today = new Date();
	var expire = new Date();
	if (nDays==null || nDays==0) nDays=1; // at least one day
	expire.setTime(today.getTime() + 3600000*24*nDays);
	document.cookie = cookieName+"="+escape(cookieValue) + ";expires="+expire.toGMTString();
}

function getCookie(name) {
	var dc = document.cookie;
	var prefix = name + "=";
	var begin = dc.indexOf("; " + prefix);
	if (begin == -1) {
		begin = dc.indexOf(prefix);
		if (begin != 0) 	return null;
	} else {
		begin += 2;
	}
	var end = document.cookie.indexOf(";", begin);
	if (end == -1) {
		end = dc.length;
	}
	return unescape(dc.substring(begin + prefix.length, end));
}





/* some dhtml functions */

function addEvent(obj, evType, fn ){
	if (obj.addEventListener){
		obj.addEventListener(evType, fn, true);
		return true;
	} else if (obj.attachEvent){
		var r = obj.attachEvent("on"+evType, fn);
		return r;
	} else {
		return false;
	}
}

function removeEvent(obj, evType, fn, useCapture){
	if (obj.removeEventListener){
		obj.removeEventListener(evType, fn, useCapture);
		return true;
	} else if (obj.detachEvent){
		var r = obj.detachEvent("on"+evType, fn);
		return r;
	} else {
		//alert("Handler could not be removed");
	}
}

// actual window viewable content height
function getViewportHeight() {
	if (window.innerHeight!=window.undefined) return window.innerHeight;
	if (document.compatMode=='CSS1Compat') return document.documentElement.clientHeight;
	if (document.body) return document.body.clientHeight; 
	return window.undefined; 
}

// actual window viewable content width
function getViewportWidth() {
	if (window.innerWidth!=window.undefined) return window.innerWidth; 
	if (document.compatMode=='CSS1Compat') return document.documentElement.clientWidth; 
	if (document.body) return document.body.clientWidth; 
	return window.undefined; 
}

// usefull for hidding selects in IE so they do not blead through dhtml elements
function hideTag(tagName) {
	var tags = document.getElementsByTagName(tagName);
	for (var i = 0 ; i < tags.length ; i++) {
		tags[i].style.visibility = 'hidden' ;
	} 
	return;
	for(var i = 0; i < document.forms.length; i++) {
		for(var e = 0; e < document.forms[i].length; e++){
			if(document.forms[i].elements[e].tagName == tagName ) {
				document.forms[i].elements[e].style.visibility="hidden";
			}
		}
	}
}

// usefull for un-hidding selects in IE so they do not blead through dhtml elements
function showTag(tagName) {
	for(var i = 0; i < document.forms.length; i++) {
		for(var e = 0; e < document.forms[i].length; e++){
			if(document.forms[i].elements[e].tagName == tagName) {
			document.forms[i].elements[e].style.visibility="visible";
			}
		}
	}
}

// makes e event usable for all
function niceE (e){
	if (typeof e == 'undefined') e = window.event;
	if (typeof e.layerX == 'undefined') e.layerX = e.offsetX;
	if (typeof e.layerY == 'undefined') e.layerY = e.offsetY;
	return e;
}

// object height
function findHeight(obj){
	var divHeight = 0;
	if(obj.offsetHeight) {
		divHeight = obj.offsetHeight;
	}else{
		divHeight = document.defaultView.getComputedStyle(obj, "").getPropertyValue("height");
	}
	return divHeight ;
}

// object width
function findWidth(obj){
	var divWidth = 0;
	if(obj.offsetWidth) {
		divWidth = obj.offsetWidth;
	}else{
		divWidth = document.defaultView.getComputedStyle(obj, "").getPropertyValue("width");
	}
	return divWidth ;
}

// object top
function findPosX(obj){
	var curleft = 0;
	if (obj.offsetParent){
		while (obj.offsetParent){
			curleft += obj.offsetLeft
			obj = obj.offsetParent;
		}
	}else if (obj.x){
		curleft += obj.x;
	}
	return curleft;
}

// object left
function findPosY(obj){
	var curtop = 0;
	if (obj.offsetParent){
		while (obj.offsetParent){
			curtop += obj.offsetTop;
			obj = obj.offsetParent;
		}
	}else if (obj.y){
		curtop += obj.y;
	}
	return curtop;
}

// shows hides block element
function showHideBlock (block){
	var obj = document.getElementById (block) ;
	if(obj)obj.style.display = (obj.style.display == 'none' ) ? 'block' :  'none' ;
}



