//var itemStatus= new Array();
var itemStatusObj= new Object();
//var itemIdArr= new Array();
var itemIdObj= new Object();
//var globalItemID= ''
var globalItemID= new Object();
var globalCurrentPrefix= ''
var intID= new Object();
var outp= new Object();
var globalActiveItem = new Object();
var globalPreviousSelectedItems = new Object();
var globalSpecialMode = new Object;

function activeItem(prefix,itemID){
    //alert('activeITem is called\n prefix: '+prefix+'\n itemID: '+itemID)
    globalActiveItem[prefix]=itemID;        
}

function smallerItems(prefix,classname, parentname){

		var allItems = document.getElementsByClassName(classname, parentname);
		//alert(allItems.length);
		itemStatusObj[prefix] = new Array();
		itemIdObj[prefix]     = new Array();
		//alert($(allItems[0]).id);
		for (var i = 0; i < allItems.length; i++) {
		if(i+1==globalActiveItem[prefix]){
		  itemStatusObj[prefix][i]=1;
		}else{
		  itemStatusObj[prefix][i]=0;
		}
		
		//itemStatus[i]=0;
		itemIdObj[prefix][i]=allItems[i].id;
		
		//itemIdArr[i]=allItems[i].id;
		
		//alert(parseInt(allItems[i].id.substr(prefix.length+6,2),10)+'<----->'+globalActiveItem[prefix]);
   		if(parseInt(allItems[i].id.substr(prefix.length+6,2),10)!=globalActiveItem[prefix]){
   		    if($(allItems[i].id+'_items')){
   		     //  alert('hide '+allItems[i].id+'_items'); 
   		       Element.hide($(allItems[i].id+'_items'));  
   		    }
    	}
    	
    	
		}

		//debugArrs('end smallerItems');
}

function showItemByName(accordionID,itemTitle,moveToStatus,prefix){
    var sliceStr='&ix_openItem=';
    var searchString = window.location.search;
    var start= searchString.indexOf(sliceStr); 
    searchString=searchString.substr(start);
    var end=searchString.indexOf('&');
    if(end>0){
        itemID=searchString.substr(sliceStr.length,end);
    }else{
        itemID=searchString.substr(sliceStr.length);
    } 
// moveToStatus 1 || 0 
// every header, any tag-type, needs a class name like param itemTitle  (eg. extractItemTitle)
		var allItems = document.getElementsByClassName(itemTitle, accordionID);
		//alert(allItems.length);
		$('debugOut').innerHTML=decodeURI(itemID);
		for (var i = 0; i < allItems.length; i++) {
    		if(allItems[i].innerHTML==decodeURI(itemID))
    		{
    		    var k=i+1;
    		    if(k<10){k='0'+k};
    		    if(moveToStatus==1){
    		      showItem(prefix,'glossary_item_'+k,'scroll');
    		    }else{
    		      showItem(prefix,'glossary_item_'+k);
    		    }
                
    		}
		}
		


}

function showItem(prefix,itemID,specialMode){
    globalSpecialMode['showItem']=specialMode;
    highliteActiveItem(prefix,itemID);
    //alert(prefix);
    //alert(itemID);
	globalItemID[prefix]= itemID;
	globalCurrentPrefix=prefix;
	
	intID[prefix]= parseInt(globalItemID[prefix].substr(prefix.length+6,2),10);
	//alert(intID);

	if(itemStatusObj[prefix][intID[prefix]-1]==0){
		new Effect.BlindDown(itemID+'_items',{duration: 0.4, beforeStart:closeOpenedItem, afterFinish:setStatus});
	}else{
		//alert('action:close alredy openend '+itemIdArr[intID-1]);
		new Effect.BlindUp(itemID+'_items',{duration: 0.4, afterFinish:setStatusClosed});
		itemStatusObj[prefix][intID[prefix]-1]=0;
	}
}

function closeOpenedItem(obj){
	//debugArrs('Start OpenendItem');
	for (var i = 0; i < itemStatusObj[globalCurrentPrefix].length; i++) {
	    
		if(itemStatusObj[globalCurrentPrefix][i]==1){
			new Effect.BlindUp(itemIdObj[globalCurrentPrefix][i]+'_items',{duration: 0.4, afterFinish:setStatusClosed});
			itemStatusObj[globalCurrentPrefix][i]=0;
		}
	}
}

function setStatus(obj){
    if(globalSpecialMode['showItem']=='scroll' || globalSpecialMode['showItem']==1 ){
        //alert('scroll!\n'+globalItemID[globalCurrentPrefix]);
        Element.scrollTo(globalItemID[globalCurrentPrefix]);
    }    
	itemStatusObj[globalCurrentPrefix][intID[globalCurrentPrefix]-1]=1;
	//debugArrs('Ende setStauts');
}

function setStatusClosed(obj){
	itemStatusObj[globalCurrentPrefix][intID[globalCurrentPrefix]-1]=0;
	//debugArrs('Ende setStautsClosed');
}

function debugArrs(titlestring){
	outp=titlestring+'\n\n';
	for (var i = 0; i < itemIdArr.length; i++) {
		outp+= i+' -> '+	itemIdArr[i]+'\n';
	}
	outp+='\n\n';

	for (var i = 0; i < itemStatus.length; i++) {
		outp+= i+' -> '+	itemStatus[i]+'\n';
	}
	alert(outp);
}


function highliteActiveItem(prefix, itemID){
    removeOldHighlites(prefix);
    if(!globalPreviousSelectedItems[prefix]){globalPreviousSelectedItems[prefix]= new Array();}
    globalPreviousSelectedItems[prefix].push(itemID);
    Element.addClassName(itemID,'accActiveItem');
}


function removeOldHighlites(prefix){
    if(globalPreviousSelectedItems[prefix]){
        for(var i=0; i<globalPreviousSelectedItems[prefix].length; i++){
            Element.removeClassName(globalPreviousSelectedItems[prefix][i],'accActiveItem');
        }
        globalPreviousSelectedItems[prefix]= new Array();
    }
}



/*



	var maxHeightItems = new Array();
	var checkIT=0;
	function smallerItems(){

		maxHeightItems[0]='all heights for all Items';

			for (i=1;i<=5;i++){
				try {
					maxHeightItems[i]= (Element.getHeight($('item_'+i))/14)*100;
					$('item_'+i).style.height='15px';
					$('item_'+i).style.overflow='hidden';
					//$('item_'+i+'_status').innerHTML='&nbsp;&nbsp;&nbsp;mehr...';
				}catch(error){}finally{}
			}

		}



	function showItem(itemID){
  //checkIT++;
	var idArr= itemID.split("_");
	var idNR=idArr[1];
		if(Element.getHeight($(itemID))<=15){
			$(itemID).style.height='15px';
				//$('checkStatus').innerHTML=checkIT+": showitem_OPEN --- "+Element.getHeight($(itemID));
			  new Effect.Scale(itemID, maxHeightItems[idNR], { duration:0.3, afterFinish: myCallBackOnFinish} );

				//$(itemID).style.height='auto';
			}else{
				//$('checkStatus').innerHTML=checkIT+": --- "+Element.getHeight($(itemID));
				var tmpPerc= Element.getHeight($(itemID))/100;
				var destPerc = 15/tmpPerc;
				new Effect.Scale(itemID, destPerc ,{ duration:0.3});
				//$(itemID).style.height='15px';
				//$(itemID+'_status').innerHTML='&nbsp;&nbsp;&nbsp;mehr...';
			}

	}

function myCallBackOnFinish(obj){
//  $(obj.element.id).style.height='auto';
}

	function hoverOn(itemID){
		$(itemID+'_outer').style.cursor='pointer';

	}
*/