//-- it is not allowed to load this site in foreign frames
if (top != self) top.location.replace(window.location.href);

//-- Initialisations

var bannerhide = 0, banner = null;
var banner_generated_elements = [];
var bigadhide = 0, bigad = null;


//-- Menu code
var menus = [], nav_current = [], nav_hide_delay = [];

function init_menu(menuid, active)
{
	//menus[menus.length] = menuid;
	var li = first_child(document.getElementById(menuid)), cur = 1, a;
	while (li)
	{
		if (active)
		{
			if (cur == active)
			{
				addClass(li, 'active');
				if (active == 1) addClass(li, 'firstactive');
			}
			else if (active + 1 == cur) addClass(li, 'pvactive');
		}

		li.menuid = 'mainmenu';
		li.onmouseover = siteNavHover;
		li.onmouseout = siteNavHideCurrentSetDelay;
		li.submenu = init_submenu(li, 'mainmenu');

		if (menuid == 'tabnav')
		{
			a = first_child(li);
			while (a)
			{
				if (a.tagName.toLowerCase() == 'a')
				{
					a.style.backgroundImage = 'url(' + IfURL + 'tab/' + a.className + (cur == active ? '1' : '2') + '.gif)';
					a.firstChild.style.display = 'none';
					break;
				}

				a = node_after(a);
			}
		}

		li = node_after(li);
		cur++;
	}
}

function unload_menu()
{
	var i = menus.length;
	while (i--)
	{
		var li = first_child(document.getElementById(menus[i]));
		while (li)
		{
			li.submenu = null;
			li = node_after(li);
		}
	}
}
window.onunload = unload_menu;

function init_submenu(menuitem, menuid)
{
	var submenu = first_child(menuitem);
	while (submenu)
	{
		if (submenu.tagName.toLowerCase() == 'div')
		{
			submenu.menuid = menuid;
			submenu.onmouseover = siteNavHideClearDelay;
			submenu.onmouseout = siteNavHideCurrentDelay;
			if (menueffect != 'nopacity')
			{
				setOpacity(submenu, 0.95);
			}
	
			return submenu;
		}
	
		submenu = node_after(submenu);
	}

	return null;
}

function siteNavHover()
{
	if (this.menuid)
	{
		var submenu = this.submenu;
		var menuid = this.menuid;

		siteNavHideCurrent(menuid, submenu);

		if (submenu)
		{
			hide_banner(submenu);
			nav_current[menuid] = submenu;
			submenu.style.visibility = 'visible';
		}
	}
}

function siteNavHideCurrent(menuid, submenu)
{
	siteNavHideClearDelay(0, menuid);

	if (nav_current[menuid] && nav_current[menuid] != submenu)
	{
		nav_current[menuid].style.visibility = 'hidden';
		nav_current[menuid] = null;
		show_banner();
	}
}

function siteNavHideCurrentFade(menuid)
{
	if (nav_current[menuid])
	{
		var opacity = nav_current[menuid].opacity - 0.05;
		if (opacity <= 0)
		{
			siteNavHideCurrent(menuid);
		}
		else
		{
			setOpacity(nav_current[menuid], opacity);
			nav_hide_delay[menuid] = setTimeout('siteNavHideCurrentFade(\''+menuid+'\')', 50);
		}
	}
}

function siteNavHideCurrentDelay()
{
	if (this.submenu)
	{
		siteNavHideCurrentSetDelay(0, this.menuid);
		return true;
	}

	return false;
}

function siteNavHideCurrentSetDelay(e, menuid)
{
	if (!menuid && this) menuid = this.menuid;

	if (menuid)
	{
		if (menueffect == 'fade' && !is.opera && !is.ie50)
		{
			nav_hide_delay[menuid] = setTimeout('siteNavHideCurrentFade(\''+menuid+'\')', 500);
		}
		else
		{
			nav_hide_delay[menuid] = setTimeout('siteNavHideCurrent(\''+menuid+'\')', 500);
		}
	}
}

function siteNavHideClearDelay(e, menuid)
{
	if (!menuid && this) menuid = this.menuid;

	if (menuid && nav_hide_delay[menuid])
	{
		clearTimeout(nav_hide_delay[menuid]);
		nav_hide_delay[menuid] = null;
		if (menueffect == 'fade' && nav_current[menuid])
		{
			setOpacity(nav_current[menuid], 0.95);
		}
	}
}

function setOpacity(el, opacity)
{
	if (el && (!el.opacity || el.opacity != opacity))
	{
		el.opacity = opacity;
		if (el.filters)
		{
			if (el.filters.alpha)
			{
				el.filters.alpha.opacity = opacity * 100;
			}
			else
			{
				el.style.filter = 'alpha(opacity=' + (opacity * 100) + ')';
			}
		}
		else
		{
			el.style.opacity = opacity;
		}
	}
}

function hide_banner(submenu)
{
	if (bannerhide || bigadhide)
	{
		if (!submenu.left)
		{
			submenu.left = getOffsetLeft(submenu)
			submenu.top = getOffsetTop(submenu);
		}

		if (banner && bannerhide)
		{
			if (!(submenu.left > banner.left + banner.clientWidth || submenu.left + submenu.clientWidth < banner.left ||
				submenu.top > banner.top + banner.clientHeight || submenu.top + submenu.clientHeight < banner.top)) banner.style.display = 'none';
			var i = banner_generated_elements.length;
			while (i--)
			{
				banner_generated_elements[i].orgDisplay = banner_generated_elements[i].style.display;
				banner_generated_elements[i].style.display = 'none';
			}
		}

		if (bigad && bigadhide)
		{
			if (!bigad.left)
			{
				bigad.left = getOffsetLeft(bigad)
				bigad.top = getOffsetTop(bigad);
			}

			if (!(submenu.left > bigad.left + bigad.clientWidth || submenu.left + submenu.clientWidth < bigad.left ||
				submenu.top > bigad.top + bigad.clientHeight || submenu.top + submenu.clientHeight < bigad.top)) bigad.style.display = 'none';
		}
	}
}

function show_banner()
{
	if (banner && bannerhide)
	{
		banner.style.display = 'block';
		var i = banner_generated_elements.length;
		while (i--)
		{
			banner_generated_elements[i].style.display = banner_generated_elements[i].orgDisplay;
		}
	}

	if (bigad && bigadhide) bigad.style.display = 'block';
}

function init_sky()
{
	sky = document.getElementById('b_sky');
	var w = getDocumentProperty('clientWidth');
	var o = document.getElementById('if_layout').offsetLeft + sky.offsetLeft + sky.clientWidth;
	if (w > o)
	{
		wbds_writeTag('120X600','RIGHT');
		sky.style.visibility = 'visible';
//		window.onscroll = movesky;
//		setInterval('checkscrollevent()', 500);
	}
	else
	{
		sky.style.display = 'none';
		sky = null;
	}
}

var skymove = null;
var scrolltop = -1;
var skytop = 186;
function movesky()
{
	if (sky)
	{
		if (skymove) clearTimeout(skymove);
		skymove = setTimeout('slidesky()', 300);
	}
}

function slidesky()
{
	scrolltop = getDocumentProperty('scrollTop');
	var curtop = sky.offsetTop;

	if (curtop + 600 < scrolltop) curtop = scrolltop - 600;
	else if (curtop > scrolltop + getDocumentProperty('clientHeight')) curtop = getDocumentProperty('clientHeight');
	var diff = scrolltop + 50 - curtop;
	if (diff > 60) diff = 60;
	if (diff < -60) diff = -60;
	var newtop = curtop + Math.round(diff / 3);
	if (newtop < skytop)
	{
		newtop = skytop;
		diff = 0;
	}
	sky.style.top = newtop + 'px';
	if (diff) skymove = setTimeout('slidesky()', 30);
	else skymove = null;
}

function checkscrollevent()
{
	if (getDocumentProperty('scrollTop') != scrolltop)
	{
		window.onscroll();
		scrolltop = getDocumentProperty('scrollTop');
	}
}

//-- Inklap functies
var categories = [];
var klipklapcookie = [], skipcookie = true;

function toggle_categorydisplay(img)
{
	var display, cat = document.getElementById(img.id + '_sec');
	if (cat && preload[img.className])
	{
		if (img.src == preload[img.className]['closed'].src)
		{
			img.src = preload[img.className]['open'].src;
			cat.style.display = ''
			if (typeof klipklapcookie[img.id] != 'undefined')
				delete klipklapcookie[img.id];
		}
		else
		{
			img.src = preload[img.className]['closed'].src;
			cat.style.display = 'none'
			klipklapcookie[img.id] = 1;
		}

		if (!skipcookie)
		{
			var temp = [], i = 0;
			for (var category in klipklapcookie) temp[i++] = category;
			SetCookie('klipklapcookie', temp.join(','));
		}
	}
}

function toggle(name)
{
	var el = document.getElementById(name);
	if (el && typeof el.onclick == 'function') el.onclick();
}

function readCookies()
{
	var cookiecontent = GetCookie('klipklapcookie');
	if (cookiecontent !== null)
	{
		var temp = cookiecontent.split(','), i = temp.length;
		while (i--)
			klipklapcookie[temp[i]] = 1;

		i = categories.length;
		while (i--)
			if ( typeof klipklapcookie[categories[i]] != 'undefined' )
				toggle(categories[i]);
	}

	skipcookie = false;
}

//-- Show/Hide script
function show(div_id)
{
	var el = document.getElementById(div_id);
	if (el) el.style.visibility = 'visible';
}

function hide(div_id)
{
	var el = document.getElementById(div_id);
	if (el) el.style.visibility = 'hidden';
}

//-- Selectbox navigatie
function jumpsite(location)
{
	if (location != '') window.location.href = BaseURL + location;
}

//-- DOM functions
function is_ignorable( nod )
{
	return (nod.nodeType == 8 || (nod.nodeType == 3 && !/[^\t\n\r ]/.test(nod.data)));
}

function node_before( sib )
{
	if (sib)
	{
		while ((sib = sib.previousSibling))
		{
			if (!is_ignorable(sib)) return sib;
		}
	}

	return null;
}

function node_after( sib )
{
	if (sib)
	{
		while ((sib = sib.nextSibling))
		{
			if (!is_ignorable(sib)) return sib;
		}
	}

	return null;
}

function last_child( par )
{
	if (par && par.nodeType == 1)
	{
		var res=par.lastChild;
		do
		{
			if (!is_ignorable(res)) return res;
		}
		while ((res = res.previousSibling));
	}

	return null;
}

function first_child( par )
{
	if (par && par.nodeType == 1)
	{
		var res=par.firstChild;
		do
		{
			if (!is_ignorable(res)) return res;
		}
		while ((res = res.nextSibling));
	}

	return null;
}

