// mannsberger.at navigation
// (c) N. Landsteiner 2006; www.masswerk.at

var pageTabOpacit= 0.17;
var hiTabOpacity= 0.15;
//var tabPadding=2;
var tabPadding=0;
var defaultPageTabClr='#425468';
var defaultHiTabClr='#25415E';
var tabTimer=null;

var isMsieMac=((navigator.userAgent.indexOf('MSIE')>0) && (navigator.userAgent.indexOf('Mac')>0) && (!window.opera));

function init() {
	// init pageLayout
	if (!window.isMSIElt7) 
	{
		pageDOMinit();
	}
	// init tabs
	var success=setOpacity(getElement('mainnav_pagetab'), pageTabOpacit);
	if ((success) && (!isMsieMac)) {
		setOpacity(getElement('mainnav_hitab'), hiTabOpacity);
	}
	else {
		var t=getElement('mainnav_pagetab');
		if ((t) && (t.style)) t.style.background=defaultPageTabClr;
		t=getElement('mainnav_hitab');
		if ((t) && (t.style)) t.style.background=defaultHiTabClr;
	}
	var links=(document.getElementsByTagName)?
		document.getElementsByTagName('a') :
		document.links;
	for (var i=0; i<links.length; i++) {
		var l=links[i];
		if (l.className=="mainnavitem") {
			l.onmouseover=setPageNavHi;
			l.onmouseout=setPageNavLo;
		}
		else if (l.className=="mainnavitem_on") {
			setPageTab(l, true);
		}
	}
}

function setPageNavHi(e) {
	if (tabTimer) {
		clearTimeout(tabTimer);
		tabTimer=null;
	}
	var target=((window.event) && (event.srcElement))? event.srcElement: this;
	setPageTab(target, false);
	return true;
}

function setPageNavLo(e) {
	tabTimer=setTimeout('hideHiTab()', 100);
	return true;
}

function hideHiTab() {
	if (tabTimer) {
		clearTimeout(tabTimer);
		tabTimer=null;
	}
	var obj=getElement('mainnav_hitab');
	if ((obj) && (obj.style)) obj.style.visibility='hidden';
}

function setPageTab(item, isSelectedItem) {
	var tabid=(isSelectedItem)? 'mainnav_pagetab' : 'mainnav_hitab';
	var tab=getElement(tabid);
	var head=getElement('head');
	if ((head) && (item) && (tab)) {
		var w=getIntValue(item.offsetWidth);
		var x=getElementPosX(item)-getElementPosX(head);
		if (isMsieMac) x-=5;
		tab.style.width=w+2*tabPadding+'px';
		tab.style.left=x-tabPadding+'px';
		tab.style.visibility='visible';
	}
}

function getIntValue(v) {
	v=parseInt(v,10);
	return isNaN(v)? 0:v;
}

function getElement(id) {
	if (document.getElementById) {
		return document.getElementById(id);
	}
	else if (document.all) {
		return document.all[id];
	}
	else return null;
}

function setOpacity(element, value) {
	// 0 > value < 1.0
	var success=false;
	if ((element) && (element.style)) {
		if (value>1) value=1
		else if (value<=0) value=0;
		if (typeof element.style.opacity != 'undefined') {
			element.style.opacity=value;
			success=true;
		}
		if (typeof element.style.filter != 'undefined') {
			element.style.filter='Alpha(Opacity='+parseInt(value*100)+')';
			success=true;
		}
		else if (typeof element.style.MozOpacity != 'undefined') {
			element.style.MozOpacity=value;
			success=true;
		}
		else if (typeof element.style.KhtmlOpacity != 'undefined') {
			element.style.KhtmlOpacity=value;
			success=true;
		}
	}
	return success;
}

function getElementPosX(element) {
	var x=0;
	if (element.offsetParent) {
		while (element.offsetParent) {
			x += element.offsetLeft;
			element = element.offsetParent;
		}
	}
	else if (element.parentElement) {
		while (obj.parentElement) {
			x += element.offsetLeft;
			element = element.parentElement;
		}
	}
	else if (element.x) {
		x=element.x;
	}
	return x;
}

function setClassName(obj, cn) {
	obj.className=cn;
}

function goChildHref(obj) {
	if ((obj.childNodes) && (obj.childNodes.length) && (obj.childNodes[0].href)) {
		self.location.href=obj.childNodes[0].href;
	}
	else if ((obj.children) && (obj.children.length) && (obj.children[0].href)) {
		self.location.href=obj.children[0].href;
	}
}

function showInfomail(Thema) {
	var obj=getElement("infomail");
	if (!obj) return;
	if (window.isMSIElt7) {
		var x=Math.floor((getWindowWidth()-obj.offsetWidth)/2)+getScrollX();
		var y=100;
		//Math.min(50,Math.floor((getWindowHeight()-obj.offsetHeight)/2))+getScrollY();
	}
	else {
		var x=Math.floor((getWindowWidth()-obj.offsetWidth)/2);
		var y=Math.min(50,Math.floor((getWindowHeight()-obj.offsetHeight)/2));
	}
	
	obj.style.left=x+'px';
	obj.style.top=y+'px';
	obj.style.visibility='visible';
	/*
	var bitte=getElement("Bitte");
	if (!bitte) return;
	bitte.value=Thema;
	*/
	
	var bitte=getElement("referenz");
	if (!bitte) return;
	bitte.value=Thema;
	
}

function closeInfomail() {
	var obj=getElement("infomail");
	if (obj) obj.style.visibility='hidden';
}

function getWindowHeight() {
	if (window.innerHeight) return window.innerHeight;
	else if (document.documentElement) return document.documentElement.clientHeight;
	else return document.body.clientHeight || 0;
}

function getWindowWidth() {
	if (window.innerWidth) return window.innerWidth
	else if (document.documentElement) return document.documentElement.clientWidth
	else return document.body.clientWidth || 0;
}
function getScrollX() {
	if (typeof window.pageXOffset != 'undefined') return window.pageXOffset
	else if (document.documentElement) return document.documentElement.scrollLeft
	else if (document.body) return document.body.scrollLeft
	else return 0;
}
function getScrollY() {
	if (typeof window.pageYOffset != 'undefined') return pageYOffset
	else if (document.documentElement) return document.documentElement.scrollHeight
	else if (document.body) return document.body.scrollTop
	else return 0;
}


// --------------------------------------------------------------------
// page layout
// --------------------------------------------------------------------

var footerHeight=34;
var footerWidth=972;
var headerHead=131;

function pageDOMinit() {
	// set footer position
	if (isMsieMac) {
		var footer=getElement('footer');
		if ((footer) && (footer.style))
		footer.style.position='relative';
		footer.style.top=-footerHeight+'px';
		footer.style.visibility='visible';
		return;
	}
	var mainPaine=getElement('main');
	if ((mainPaine) && (mainPaine.style)) {
		mainPaine.style.minHeight=getIntValue(getWindowHeight())-footerHeight-headerHead+'px';
	}
	var footer=getElement('footer');
	if ((footer) && (footer.style)) {
		footer.style.top=getIntValue(getWindowHeight())-footerHeight+'px';
		footer.style.left=getIntValue(getElementPosX(getElement('main')))+'px';
		footer.style.zIndex=2;
		footer.style.visibility='visible';
	}
	window.onresize=onDOMResize;
}

function onDOMResize() {
	setTimeout('pageDOMinit()',1);
}

function tryPopup(url) {
	var popwin = window.open(
		url,
		'ImageWindow',
		'width=820,height=620,resizable=true,scrollbars=no,'+
		'toolbar=no,locationbar=no, status=no,menubar=no'
	);
	if (popwin) {
		// we have a popup-window, return false
		if (window.focus) popwin.focus();
		return false;
	}
	else {
		// window.open() returned null (popup blocked)
		// rely on link, so return true
		return true;
	}
}

// eof
