window.onload = function() {
	setFooter();
}
window.onresize = function() {
	setFooter();
}
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;
}
function setFooter() {
	if ((document.getElementById) && (document.body.className != 'iframed')) {
		var windowHeight=getWindowHeight();
		if (windowHeight>0) {
			var contentHeight=obj_height('header')+obj_height('content');
			var footerElement=document.getElementById('footer');
			var footerHeight=footerElement.offsetHeight;
			if (windowHeight >= (contentHeight+footerHeight)) {
				footerElement.style.position='absolute';
				footerElement.style.bottom='0px';
			}
			else {
				footerElement.style.position='static';
			}
		}
	}
}
function obj_height(id) {
	obj = document.getElementById(id);
	return obj.offsetHeight;
}
function load_iframe(url, domNode, width, height, myclass) {
	exists = false;
	nodeId = 0;
	htmlId = hash(url);
	for(i=0;i<domNode.childNodes.length;i++) {
		cObj = domNode.childNodes[i];
		if((cObj.nodeType == 1) && (cObj.getAttribute('src') == url)) {
			exists = true;
			nodeId = i;
		}
	}
	if(!exists) {
		embryo = document.createElement('iframe');
		embryo.setAttribute('width', width);
		embryo.setAttribute('height', height);
		embryo.className = myclass;
		embryo.id = htmlId;
		embryo.setAttribute('src',url);
		domNode.appendChild(embryo);
	}
	else {
		cObj = domNode.childNodes[nodeId];
		cObj.setAttribute('width', width);
		cObj.setAttribute('height', height);
		cObj.id = htmlId;
		cObj.className = myclass;
	}
} 
function mark_element_for_delete(node) {
	node.id = 'kill_me';
}
function execute_element(doc) {
	node = doc.getElementById('kill_me');
	node.parentNode.removeChild(node);
}
function good_place(node) {
	if(document.body.getAttribute('class') == 'iframed') {
		id = hash(document.baseURI)
		iframe = (parent.document.getElementById(id)) ? parent.document.getElementById(id) : parent.document.getElementsByTagName('iframe')[0];
		return iframe;
	}
	else {
		return node.parentNode.parentNode.nextSibling.firstChild;
	}
}
function inject_before(node,html) {
	embryo = document.createElement('span');
	child = node.parentNode.insertBefore(embryo,node)
	child.innerHTML = html;
	return child;
}

function suicide() {
	id = hash(document.baseURI)
	child = (parent.document.getElementById(id)) ? parent.document.getElementById(id) : parent.document.getElementsByTagName('iframe')[0];
	child.parentNode.removeChild(child);
}
function iframe_node() {
	id = hash(document.baseURI)
	me = (parent.document.getElementById(id)) ? parent.document.getElementById(id) : parent.document.getElementsByTagName('iframe')[0];
	return me;
}
function resize_me() {
	id = hash(document.baseURI)
	child = (parent.document.getElementById(id)) ? parent.document.getElementById(id) : parent.document.getElementsByTagName('iframe')[0];
	if(child.getAttribute('height') < document.height) {
		child.setAttribute('height',document.height+10);
	}
}
function silent_edit(obj, table, col, uid) {
	text = obj.textContent;
	height = obj.offsetHeight;
	obj.innerHTML = '';
	embryo = document.createElement('textarea');
	embryo.style.height = height+'px';
	embryo.style.font = 'inherit';
	embryo.style.border = 'none';
	embryo.style.margin = '0'
	embryo.style.background = 'transparent';
	embryo.innerHTML = text;
	child = obj.appendChild(embryo);
	obj.setAttribute('onclick','');
	child.focus();
	child.setAttribute('onblur',"silent_save(this, '"+table+"', '"+col+"', '"+uid+"')");
}
function silent_save(obj, table, col, uid) {
	text = obj.value;
	url = '/silent_save.php?table='+table+'&col='+col+'&uid='+uid+'&value='+text;
	load_iframe(url, document.getElementById('temp'), 200, 80, 'inline');
	parent = obj.parentNode;
	parent.removeChild(obj)
	parent.innerHTML = text;
	parent.setAttribute('onclick','silent_edit(this)');
}
function get_cookie(NameOfCookie) {
	if (document.cookie.length > 0)
	{
		begin = document.cookie.indexOf(NameOfCookie+"=");
		if (begin != -1)
		{
			begin += NameOfCookie.length+1;
			end = document.cookie.indexOf(";", begin);
			if (end == -1) end = document.cookie.length;
			return unescape(document.cookie.substring(begin, end)); 
		}
	}
	return "";
}
function draw_vip_menu() {
	master_obj = document.getElementById('user_menu');
	embryo = document.createElement("div");
	referenceElement = master_obj.getElementsByTagName('div')[0];
	var vip_menu = master_obj.insertBefore(embryo, referenceElement);
	vip_menu.id = 'vip_menu';
	if(get_cookie("username") != '') {
		vip_menu.innerHTML = 'Inloggad som '+get_cookie("username")+' | <a href="/vip/login/logoff.php">Logga ut<a/>'+
	 	'| <a href="/conf/ext/xmas/new_present.php?close=1" onclick="load_iframe(this.href, document.getElementById(\'new_present\'), 350, 180,\'drop_in\'); return false;">L&auml;gg till present</a>'+
		'<div id="new_present"></div>';
	}
	else {
		vip_menu.innerHTML = '<a href="http://www.envitjul.se/vip/login/login.php?login=newuser">Bli medlem</a>';
	}
} 
function hash(text) {
	// don't consider this secure in any way :)
	num = 65536;
	for(var i=0;i<text.length;i++) {
		num += text.charCodeAt(i)*Math.pow(3,i);
	}
	return dec2hex(num).substr(0,16);
}
function dec2hex(int){
	var len=16
	var base = 'abcdefghijklmnop';
	var ret='';
	while(int>0){
		ret = base.charAt(int%len) + ret;
		int = Math.floor(int/len);
	}
	return ret;
}
function advance(obj) {
	// for surveys
	ec = 0;
	while((obj.className != 'active') && (ec < 20)) {
		obj = obj.parentNode
		ec++;
	}
	obj_old = obj
	obj = obj.nextSibling;
	while((obj.nodeType != 1) && (obj.nextSibling) && (ec < 20)) {
		obj = obj.nextSibling;
		ec++;
	}
	if(obj.nodeType == 1) {
		obj.className = 'active';
		obj_old.className = 'inactive';
	}
}