
/* stíluslap */
alternateStyle.setConfig( 'swapJs', false );
alternateStyle.setConfig( 'useCookie', true );
alternateStyle.addAlternate( { css : 'skin-default', indicatorId : 'little' } );
alternateStyle.addAlternate( { css : 'skin-big'    , indicatorId : 'large'  } );
alternateStyle.initStyle();


/* fényreklám */
loadEventBinding( window, function() {
	marqee.init( 'title' );
} );
var marqee = {
	el : null,
	root : null,
	init : function( sRoot ) {
		this.root = document.getElementById( sRoot );
		this.el = this.root.firstChild;
		this.el.style.left = this.root.offsetWidth + 'px';
		window.setInterval( 'marqee.scroll()', 30 );
	
	},
	scroll : function() {
		var nLeft = this.el.offsetLeft - 1;
		if ( nLeft < 0 - this.el.offsetWidth ) {
			nLeft = this.root.offsetWidth;
		};
		this.el.style.left = nLeft + 'px';  
	}
};


/* menü */
loadEventBinding( window, function() {
	headerMenu.setConfig();
	headerMenu.init();
	innerMenu.setConfig();
	innerMenu.init();
} );
var headerMenu = {
	version : '1.0',
	nodeNames : {
		ul : 'ul',
		label : 'span',
		li : 'li'
	},
	classNames : {
		reg : /menu-popup/i,
		subitem : 'menu-popup-sub-item',
		item : 'menu-popup-item'
	},
	init : function() {
		var elsUL, elsA, i, bMenu = false;

		function setUnselectable( node ) {
			if ( is.ie ) {
				node.setAttribute('unselectable', true );
				node.setAttribute('hidefocus', true)
			}
			if ( is.gecko ) {
				node.style.MozUserSelect = 'none';
				node.style.MozUserFocus = 'none';
			}
		}

		elsA = document.getElementsByTagName('A');
		for ( i = 0; i < elsA.length; i++ ) {
			if ( headerMenu.classNames.reg.test( elsA[i].className ) ) {
				eventBinding( elsA[i], true, 'mouseover', headerMenu.popUpMenu, false );
				setUnselectable( elsA[i] );
				bMenu = true;
				if ( getNextElement( elsA[i] ) && getNextElement( elsA[i] ).tagName.toLowerCase() == headerMenu.nodeNames.ul ) {
					elsUL = getNextElement( elsA[i] );
					if ( !( is.ie5 && is.mac ) ) {
						elsUL.style.visibility = 'hidden';
						elsUL.style.display = 'block';
						elsUL.style.width = 199 + 'px';
						elsUL.style.height = elsUL.offsetHeight + 'px';
						elsUL.style.display = 'none';
						elsUL.style.visibility = 'visible';
					}
					else { // ie5Mac hiba, hogy ablakszélességre nyitja ki, és nem csak a beltartalom szélességére
						elsUL.style.width = 199 + 'px';
					}
				}
			}
		}
		if ( bMenu ) {
			eventBinding( document, true, 'mousedown', headerMenu.popUpMenu, false );
		}
	},
	setConfig : function() {
		popUpMenuClickFlag = false;
		FORCE_IE_EVENTBINDING = true;
	},
	popUpMenu : function( e ) {
		var elTarget, elItem, elSub, elBar, i, rootEl;
		function getSrcElement( node ) {
			if ( !node || node.tagame == 'BODY' ) {
				return null;
			}
			if ( headerMenu.classNames.reg.test( node.className ) ) {
				return node;
			}
			else {
				return getSrcElement( node.parentNode );
			}
		};
		function getElSub( elItem ) {
			return getNextElement( elItem );
		};
		function getElBar( elItem ) {
			if ( String( elItem ) == 'undefined' || !elItem ) {
				return getFirstElement( document.getElementById( 'main-nav' ) );
			}
			else if ( elItem.nodeType == 1 && elItem.tagName.toLowerCase() == headerMenu.nodeNames.ul ) {
				return elItem;
			}
			else {
				return getElBar( elItem.parentNode );
			}
		};
		function setActive( elItem ) {
			elItem.className = elItem.className + '-active';
		};
		function setInactive( elItem ) {
			elItem.className = elItem.className.substring( 0, elItem.className.length - 7 );
		};
		function wiewMenu( elBar, elItem, elSub ) {
			var itemLeft, itemTop, itemWidth, itemHeight, subWidth, subHeight, winWidth, winHeight, winTop, zIndex;
			// értékátvétel
			elSub.style.visibility = 'hidden';
			elSub.style.display = 'block';
			getWindowDimension();
			createFullOffset( elItem );
			createFullOffset( elItem.parentNode.parentNode );
			itemLeft = elItem.offsetX - elItem.parentNode.parentNode.offsetX;
			itemTop = elItem.offsetY - elItem.parentNode.parentNode.offsetY;
			itemWidth = elItem.offsetWidth;
			itemHeight = elItem.offsetHeight;
			subWidth = elSub.offsetWidth;
			subHeight = elSub.offsetHeight;
			winWidth = window.strictInnerWidth;
			winHeight = window.strictInnerHeight;
			winTop = window.strictScrollTop;
			if ( elBar.parentNode.id == 'main-nav' ) {
//				elSub.style.left = parseInt( itemLeft - 88 + ( itemWidth / 2 ) ) + 'px';
//				elSub.style.top  = parseInt( itemTop + 10 + itemHeight ) + 'px';
				elSub.style.left = parseInt( itemLeft - 0 ) + 'px';
				elSub.style.top  = parseInt( itemTop + 0 + itemHeight ) + 'px';
			}
			else { // leftre állítás
				if ( itemLeft + itemWidth + subWidth < winWidth ) // normál bal
					elSub.style.left = itemLeft + itemWidth - 30 + 'px';
				if ( itemLeft + itemWidth + subWidth >= winWidth ) // képernyőre jobb oldalra való helyezés
					elSub.style.left = winWidth - subWidth - 30 + 'px';
				elSub.style.top = itemTop + 'px';
				if ( subHeight > winHeight ) { // scroll
					if ( !( is.opera && is.appVer >= 7 ) || !( is.ie5 && is.mac ) ) {
						elSub.style.top = winTop + 2 + 'px';
						elSub.realHeight = elSub.style.height; // hogy vissza lehessen állítani az eredeti magasságát becsukáskor
						elSub.style.height = winHeight - 4 + 'px';
					}
					else { // opera7-ben ismeretlen hiba miatt nem megy a scroll, ie5Mac-ben is tiltva van
						elSub.style.top = winTop + 2 + 'px';
					}
				}
			};
			if ( !is.ie5 ) {
				elSub.style.zIndex = ( 1 + getComputedStylePropertyValue( elBar, 'z-index', '' ) )
			}
			elSub.style.visibility = 'visible';
			setActive( elItem );
			elSub.style.position = 'absolute';
			elBar.activeItem = elItem;
		}
		function closeMenu( activeItem ) {
			var elSub, elBar;
			elBar = getElBar( activeItem );
			elSub = getElSub( activeItem );
			if ( getElBar( elSub ).activeItem != null ) {
				closeMenu( getElBar( elSub ).activeItem );
			}
			elSub.style.display = 'none';
			elSub.style.visibility = 'hidden';
			if ( is.ie5 && is.mac ) {
				document.body.style.backgroundColor = 'white'
				document.body.style.backgroundColor = 'black'
				document.body.style.backgroundColor = 'white'
			}
			setInactive( activeItem );
			elBar.activeItem = null;
		}
		if ( !e ) e = window.event;
		if ( is.gecko || ( is.opera && is.appVer >= 7 ) || is.saf ) {
			elItem = e.target;
			if ( elItem.nodeType == 3 ) {
				elItem = elItem.parentNode;
			}
			e.stopPropagation();
		}
		else if ( is.ie ) {
			elItem = getSrcElement( window.event.srcElement );
			window.event.cancelBubble = true;
		}
		if ( ( !elItem || elItem.tagName.toLowerCase() != 'a' ) && ( e.type == 'mousedown' || e.type == 'resize' ) ) {
			rootEl = getFirstElement( document.getElementById('main-nav') );
			if ( rootEl.activeItem != null ) {
				closeMenu( rootEl.activeItem );
			}
			popUpMenuClickFlag = false;
			return;
		}
		if ( e.type == 'mouseover' ) 
			popUpMenuClickFlag = true;
		if ( popUpMenuClickFlag ) {
			elBar = getElBar( elItem );
			elSub = getElSub( elItem );
			if ( elBar.activeItem != null ) {
				if ( getElSub( elBar.activeItem ) == elSub ) {
					return false;
				}
				closeMenu( elBar.activeItem )
			}
			if ( elSub ) {
				wiewMenu( elBar, elItem , elSub )
			}
		}
	}
};
var innerMenu = {
	version : '1.0',
	nodeNames : {
		ul : 'ul',
		label : 'span',
		li : 'li'
	},
	classNames : {
		reg : /menu-roll/i,
		subitem : 'menu-roll-sub-item',
		item : 'menu-roll-item'
	},
	init : function() {
		var elsUL, elsA, i, bMenu = false;

		function setUnselectable( node ) {
			if ( is.ie ) {
				node.setAttribute('unselectable', true );
				node.setAttribute('hidefocus', true)
			}
			if ( is.gecko ) {
				node.style.MozUserSelect = 'none';
				node.style.MozUserFocus = 'none';
			}
		}

		elsA = document.getElementsByTagName('A');
		for ( i = 0; i < elsA.length; i++ ) {
			if ( innerMenu.classNames.reg.test( elsA[i].className ) ) {
				eventBinding( elsA[i], true, 'mousedown', innerMenu.popUpMenu, false );
				setUnselectable( elsA[i] );
				bMenu = true;
				if ( getNextElement( elsA[i] ) && getNextElement( elsA[i] ).tagName.toLowerCase() == innerMenu.nodeNames.ul ) {
					elsUL = getNextElement( elsA[i] );
					elsUL.style.display = 'none';
					elsUL.style.visibility = 'visible';
					if ( elsUL.className == 'menu-roll-active' ) {
						elsA[i].className       = elsA[i].className + '-active';
						elActiveItem            = getFirstElement( document.getElementById( 'inner-nav' ) );
						elActiveItem.activeItem = getPreviousElement( elsUL );
						elsUL.style.display     = 'block';
					}
				}
			}
		}
	},
	setConfig : function() {
		popUpMenuClickFlag = false;
		FORCE_IE_EVENTBINDING = true;
	},
	popUpMenu : function( e ) {
		var elTarget, elItem, elSub, elBar, i, rootEl;
		function getSrcElement( node ) {
			if ( !node || node.tagName == 'BODY' ) {
				return null;
			}
			if ( innerMenu.classNames.reg.test( node.className ) ) {
				return node;
			}
			else {
				return getSrcElement( node.parentNode );
			}
		};
		function getElSub( elItem ) {
			return getNextElement( elItem );
		};
		function getElBar( elItem ) {
			if ( String( elItem ) == 'undefined' || !elItem ) {
				return getFirstElement( document.getElementById( 'inner-nav' ) );
			}
			else if ( elItem.nodeType == 1 && elItem.tagName.toLowerCase() == innerMenu.nodeNames.ul ) {
				return elItem;
			}
			else {
				return getElBar( elItem.parentNode );
			}
		};
		function setActive( elItem ) {
			elItem.className = elItem.className + '-active';
		};
		function setInactive( elItem ) {
			elItem.className = elItem.className.substring( 0, elItem.className.length - 7 );;
		};
		function wiewMenu( elBar, elItem, elSub ) {
			elSub.style.display = 'block';
			if ( !is.ie5 ) {
				elSub.style.zIndex = ( 1 + getComputedStylePropertyValue( elBar, 'z-index', '' ) )
			}
			elSub.style.visibility = 'visible';
			setActive( elItem );
			elBar.activeItem = elItem;
		}
		function closeMenu( activeItem ) {
			var elSub, elBar;
			elBar = getElBar( activeItem );
			elSub = getElSub( activeItem );
			if ( getElBar( elSub ).activeItem != null ) {
				closeMenu( getElBar( elSub ).activeItem );
			}
			elSub.style.display = 'none';
			elSub.style.visibility = 'hidden';
			if ( is.ie5 && is.mac ) {
				document.body.style.backgroundColor = 'white'
				document.body.style.backgroundColor = 'black'
				document.body.style.backgroundColor = 'white'
			}
			setInactive( activeItem );
			elBar.activeItem = null;
		}
		if ( !e ) e = window.event;
		if ( is.gecko || ( is.opera && is.appVer >= 7 ) || is.saf ) {
			elItem = e.target;
			if ( elItem.nodeType == 3 ) {
				elItem = elItem.parentNode;
			}
			e.stopPropagation();
		}
		else if ( is.ie ) {
			elItem = getSrcElement( window.event.srcElement );
			window.event.cancelBubble = true;
		}
		if ( ( !elItem || elItem.tagName.toLowerCase() != 'a' ) && ( e.type == 'mousedown' || e.type == 'resize' ) ) {
			rootEl = getFirstElement( document.getElementById('inner-nav') );
			if ( rootEl.activeItem != null ) {
				closeMenu( rootEl.activeItem );
			}
			popUpMenuClickFlag = false;
			return;
		}
		if ( e.type == 'mousedown' ) 
			popUpMenuClickFlag = true;
		if ( popUpMenuClickFlag ) {
			elBar = getElBar( elItem );
			elSub = getElSub( elItem );
			if ( elBar.activeItem != null ) {
				if ( getElSub( elBar.activeItem ) == elSub ) {
					return false;
				}
				closeMenu( elBar.activeItem )
			}
			if ( elSub ) {
				wiewMenu( elBar, elItem , elSub )
			}
		}
	}
}

