// 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 EggersmannReferenceFilter = {

	/**
	* inits the navigation
	*
	* @param	Event	evt
	* @return	void
	*/
	init : function(evt){
		var SelectObject = document.getElementById('reference-filter-company_id');
		
		if( window.addEventListener ){
			SelectObject.addEventListener('change',EggersmannReferenceFilter.changeBgImage,false);
			SelectObject.addEventListener('change',EggersmannReferenceFilter.displayActivityFieldsSelect,false);
		}else if( window.attachEvent ){
			SelectObject.attachEvent('onchange',EggersmannReferenceFilter.changeBgImage);
			SelectObject.attachEvent('onchange',EggersmannReferenceFilter.displayActivityFieldsSelect);
		}
	}
	,
	/**
	* changeBgImage
	*
	* @param	Event	evt
	* @return	void
	*/
	changeBgImage : function(evt){
		var target = evt.target ? evt.target : evt.srcElement;
		var targetObject = document.getElementById('ReferenceFilterForm');
		var i;
		for (i = 0; i < target.length; i++){
			//console.log(target.options[i].value);
    		if (target.options[i].selected == true){
				EggersmannReferenceFilter.addCssClass(targetObject,'company'+target.options[i].value);
    		}else{
    			EggersmannReferenceFilter.removeCssClass(targetObject,'company'+target.options[i].value);
    		}
    	}
	}
	,
	/**
	* displayRubrikSelect
	*
	* @param	Event	evt
	* @return	void
	*/
	displayActivityFieldsSelect : function(evt){
		var target = evt.target ? evt.target : evt.srcElement;
		var targetObject = document.getElementById('checkarea-activityfield');
		var targetSelect = document.getElementById('activityfield');
		targetObject.style.display="block";
		var servletUrl = 'plugins/ActivityFieldsDb/eggersmann/activityfieldsfilter.php?company_id='+target.options[target.selectedIndex].value;
		var xmlReq = mcm.createXmlHttpRequest();
		xmlReq.open('GET',servletUrl,true);
		xmlReq.send(null);
		xmlReq.onreadystatechange = function(){
			if( xmlReq.readyState==4 ){
				/*if( xmlReq.status==200 ){
					targetSelect.innerHTML = xmlReq.responseText;
				}*/
				EggersmannReferenceFilter.deleteAllOptions(targetSelect);
				var optionsAry = eval('(' + xmlReq.responseText + ')');
				var i,newOpt;
				for( i=0; i<optionsAry.length; i++ ){
					selected = optionsAry[i].selected==1 ? true : false;
					newOpt = new Option(optionsAry[i].text,optionsAry[i].value,false,selected);
					targetSelect.options[targetSelect.options.length] = newOpt;
				}
			}
		}
	}
	,
	/**
	* 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;
	}
	,
	/**
	* delete all options of a select field
	*
	* @param	DomNode	obj
	* @return	void
	*/
	deleteAllOptions : function(obj){
		obj.length = 0;
	}
}


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