// charset=utf-8
// $Id$
// $HeadURL$
// +----------------------------------------------------------------------+
// | mcm                                                                  |
// | version 5.5                                                          |
// | (c) 2002-2008 monsun media (http://www.monsun-media.com)             |
// +----------------------------------------------------------------------+


/**
* mcm
*
* @author	hebing <hebing@monsun-media.com>
*/
var EggersmannNavigation = {

	/**
	* inits the navigation
	*
	* @param	Event	evt
	* @return	void
	*/
	init : function(evt){
		var i, targetElement, sourceElement;
		for( i=1; i<=4; i++){
			MainnaviElem = document.getElementById('mn'+i);
			QuicklinkElem = document.getElementById('ql'+i);
			if( !MainnaviElem ){
				continue;
			}
			if( !QuicklinkElem ){
				continue;
			}
			if( window.addEventListener ){
				MainnaviElem.addEventListener('mouseover',EggersmannNavigation.highlightElement,false);
				MainnaviElem.addEventListener('mouseout',EggersmannNavigation.resetElement,false);
				QuicklinkElem.addEventListener('mouseover',EggersmannNavigation.highlightElement,false);
				QuicklinkElem.addEventListener('mouseout',EggersmannNavigation.resetElement,false);
			}else if( window.attachEvent ){
				MainnaviElem.attachEvent('onmouseover',EggersmannNavigation.highlightElement);
				MainnaviElem.attachEvent('onmouseout',EggersmannNavigation.resetElement);
				QuicklinkElem.attachEvent('onmouseover',EggersmannNavigation.highlightElement);
				QuicklinkElem.attachEvent('onmouseout',EggersmannNavigation.resetElement);
				
			}
		}
	}
	,
	/**
	* highlightElement
	*
	* @param	Event	evt
	* @return	void
	*/
	highlightElement : function(evt){
		var target = evt.target ? evt.target : evt.srcElement;
		var targetElementId, targetElement;
 		//console.log(target.id);
 		switch (target.id) {
 			case "mn1": targetElementId = 'ql1'; break;
 			case "mn2": targetElementId = 'ql2'; break;
 			case "mn3": targetElementId = 'ql3'; break;
 			case "mn4": targetElementId = 'ql4'; break;
 			case "ql1": targetElementId = 'mn1'; break;
 			case "ql2": targetElementId = 'mn2'; break;
 			case "ql3": targetElementId = 'mn3'; break;
 			case "ql4": targetElementId = 'mn4'; break;
 		}
		targetElement = document.getElementById(targetElementId);
		if( targetElement ){
			EggersmannNavigation.addCssClass(targetElement,'active');
		}
	}
	,

	/**
	* highlightElement
	*
	* @param	elementId
	* @return	void
	*/
	resetElement : function(evt){
		var target = evt.target ? evt.target : evt.srcElement;
		var targetElementId, targetElementId;
 		//console.log(target.id);
 		switch (target.id) {
 			case "mn1": targetElementId = 'ql1'; break;
 			case "mn2": targetElementId = 'ql2'; break;
 			case "mn3": targetElementId = 'ql3'; break;
 			case "mn4": targetElementId = 'ql4'; break;
 			case "ql1": targetElementId = 'mn1'; break;
 			case "ql2": targetElementId = 'mn2'; break;
 			case "ql3": targetElementId = 'mn3'; break;
 			case "ql4": targetElementId = 'mn4'; break;
 		}
		targetElement = document.getElementById(targetElementId);
		if( targetElement ){
			EggersmannNavigation.removeCssClass(targetElement,'active');
		}
	}
	,
	/**
	* add a CSS-class declaration to an element
	*
	* @param	object		el			reference to a node element
	* @param	string		className	name of a css class
	* @return	void
	*/
	addCssClass : function(el,className){
		var classAry = el.className.split(" ");
		var newClassName = '';
		for( i in classAry) {
			if( classAry[i]==className ){
				continue;
			};
			newClassName += classAry[i] + ' ';
		}
		newClassName += className;
		el.className = newClassName;
	}
	,
	/**
	* remove an assigned CSS-class from an element
	*
	* @param	object		el			reference to a node element
	* @param	string		className	name of a css class
	* @return	void
	*/
	removeCssClass : function(el,className){
		var classAry = el.className.split(" ");
		var newClassName = '';
		for( i in classAry) {
			if( classAry[i]==className ){
				continue;
			};
			newClassName += classAry[i] + ' ';
		}
		el.className = newClassName;
	}
}


// initialize the EggersmannNavigation
if( window.addEventListener ){
	window.addEventListener("load",function(){ EggersmannNavigation.init(); },false);
}else if( window.attachEvent ){
	window.attachEvent("onload",function(){ EggersmannNavigation.init(); });
};
