/*************************************************/
/* MSDN TD object
/* http://msdn.microsoft.com/workshop/author/dhtml/reference/objects/td.asp
/*************************************************/

/*************************************************/
/** Defining the classes                         */
/** Level 1,2,3 MUST HAVE DIFFERENT NAMES!!!!    */
/*************************************************/
 var theDefaultClass_level1 = 'menustandaard_level1';
 var thePointerClass_level1 = 'rollover_level1';
 var theMarkClass_level1    = 'marked_level1';

 var theDefaultClass_level2 = 'menustandaard_level2';
 var thePointerClass_level2 = 'rollover_level2';
 var theMarkClass_level2    = 'marked_level2';
 
 var theDefaultClass_level3 = 'menustandaard_level3';
 var thePointerClass_level3 = 'rollover_level3';
 var theMarkClass_level3    = 'marked_level3';

 //array to remember wich menu is clicked per level
 var clicked_row = new Array;
 //array to remember wich menu is opened
 var opened_menu = new Array;
 
function ChangeMenu (menuItem, theMenuId, theLevel, theAction, theSub) {
	//alert('ChangeMenu ('+menuItem+', '+theMenuId+', '+theLevel+', '+theAction+', '+theSub+')');
	//get the current class
	currentClass = menuItem.className;
	
	//action = click
	if(theAction == 'click'){
		//if clicked when NOT selected
		if(clicked_row[theLevel]!=theMenuId){
			//check if there is a menu open on same level
			if((typeof(opened_menu[theLevel])!= 'undefined')&&(opened_menu[theLevel]!='')){
				//close the menu
				var menu_to_close = opened_menu[theLevel];
				menu_to_close.style.display='none';
				//if level 1 then turn arrow
				//if (theLevel=='1'){
				//	var image=eval('window.document.image_'+opened_menu[theLevel].id);
				//	image.src="media/bullets/menupijl_close.gif";
				//}
			}

			//get number of used levels
			var usedLevels = clicked_row.length;
			if (usedLevels==0){usedLevels=1;}
			for(x=theLevel;x<=usedLevels-1;x++){
				//define level classes
				//alert('theMarkClass_level'+x+'\n'+'theDefaultClass_level'+x);
				var theMarkedLevelClass = eval('theMarkClass_level'+x);
				var theDefaultLevelClass = eval('theDefaultClass_level'+x);
				var thePointerLevelClass = eval('thePointerClass_level'+x);
				//set class to default on same and higher level

				allTDs = document.all.tags("TD");
				for (i=0; i<allTDs.length; i++) 
				{
					if (allTDs(i).className==theMarkedLevelClass)
					{
				        allTDs(i).className=theDefaultLevelClass;
					}
					if (allTDs(i).className==thePointerLevelClass)
					{
				        allTDs(i).className=theDefaultLevelClass;
					}
				}
				clicked_row[x] = '';
			}
			//set current class to marked
			if(theSub!=''){
				menuItem.className = eval('theMarkClass_level'+theLevel);
			} else {
				menuItem.className = eval('thePointerClass_level'+theLevel);
			}
			//if submenu -> open submenu
			if(theSub!=''){
				//if(theLevel=='1'){
				//	var image=eval('window.document.image_'+theSub.id);
				//	image.src="media/bullets/menupijl_open.gif";
				//}
				//set menu as openend in array
				opened_menu[theLevel] = theSub;
				//show sub level 2
				theSub.style.display='';
			}
			//set menuitem as clicked in array
			clicked_row[theLevel]=theMenuId;
		}else{
		//if clicked when selected
			//if submenu
			if(theSub!=''){
				//if open -> close
				if(theSub.style.display == ''){
					theSub.style.display='none';
					//if level 1 turn arrow
					//if(theLevel=='1'){
					//	var image=eval('window.document.image_'+theSub.id);
					//	image.src="../images_new/menu_but.gif";
					//}
					opened_menu[theLevel] = '';
					//get number of used levels
					var usedLevels = clicked_row.length;
					if (usedLevels==0){usedLevels=1;}
					for(x=theLevel;x<=usedLevels-1;x++){
						//define level classes
						//alert('theMarkClass_level'+x+'\n'+'theDefaultClass_level'+x);
						var theMarkedLevelClass = eval('theMarkClass_level'+x);
						var theDefaultLevelClass = eval('theDefaultClass_level'+x);
						//set class to default on same and higher level
		
						allTDs = document.all.tags("TD");
						for (i=0; i<allTDs.length; i++) 
						{
							if (allTDs(i).className==theMarkedLevelClass)
							{
						        allTDs(i).className=theDefaultLevelClass;
							}
						}
						clicked_row[x] = '';
						menuItem.className = eval('thePointerClass_level'+theLevel);
					}
				}else{
					theSub.style.display='';
					//if level 1 turn arrow
					//if(theLevel=='1'){
					//	var image=eval('window.document.image_'+theSub.id);
					//	image.src="media/bullets/menupijl_open.gif";
					//}
					menuItem.className = eval('theMarkClass_level'+theLevel);
					opened_menu[theLevel] = theSub;
				}
				//if close -> open
			}
			clicked_row[theLevel]=theMenuId;
		}
	}

	//action = over
	if(theAction == 'over'){
		//if over when NOT selected
		if(clicked_row[theLevel]!=theMenuId){
			//change class in mouse over class
			menuItem.className = eval('thePointerClass_level'+theLevel);
		} else {
		
		}
	}

	//action = out
	if(theAction == 'out'){
		//if clicked set class to marked
		//if not clicked set class to default
		//change class back to default or clicked
		if(clicked_row[theLevel] == theMenuId){
			if(theSub!=''){
				/*menuItem.className = eval('theMarkClass_level'+theLevel);*/
			} else {
				menuItem.className = eval('thePointerClass_level'+theLevel);
			}
		}else{
			menuItem.className = eval('theDefaultClass_level'+theLevel);
		}
	}
}
