//   -			-			-			-			-			Uitklap
function klap_uit( ctrl ) {
	var elt = lib_DOM_getElementsByClass('inhoud', ctrl);
	elt[0].style.display='inline';
	
	var elt2 = lib_DOM_getElementsByClass('leesverder', ctrl);
	elt2[0].style.display='none';
}

//   -			-			-			-			-			MENU'S
// todo make this recurse through an array of menu levels..
var sSubMenuOldLayer = '';
var sSubMenuRequestRemove = '';
var sOldSubvisible = '';
var sMenuOldLayer = '';
var sMenuRequestRemove = '';
var sOldvisible = '';

var MENU_DELAY = 1600;

var LastZIndex = 9999;

// activating a menu is right away 
function menu_activate_submenu( sMenuDiv ) {
	try {
	    if (sMenuRequestRemove==sMenuDiv) {
	        // prevent removing after timeout: keep alive!
	        sMenuRequestRemove = "";
	    } else {
	        if (sMenuDiv!=sMenuOldLayer) {
		        menu_remove_submenu();
		        if (sMenuOldLayer!="") {
			        MM_showHideLayers(sMenuOldLayer,'','hide');
			        sMenuRequestRemove = "";
			        s = layer_get_style(sMenuOldLayer);
			        if (s) s.zIndex = -1;	
		        }
		        MM_showHideLayers(sMenuDiv,'','show');
		        sMenuOldLayer = sMenuDiv;
		        s = layer_get_style(sMenuOldLayer);
		        if (s) {
					s.zIndex = LastZIndex - 1;	
					if (isIE) {
						var t_elt = $(sMenuDiv+"_t");
						if (t_elt) t_elt.style.height = ( $(sMenuDiv).offsetHeight - 13 ) + "px";
						var b_elt = $(sMenuDiv+"_b");
						if (b_elt) b_elt.style.width = $(sMenuDiv).offsetWidth + "px";
					
					}
				}	
	        } 
	    }
	}
	catch(e) {
		alert( e.description + "\r\n" );
	}
} 

// de-activating a menu is done with a delay, ensuring that this is what the user wants
function menu_deactivate_submenu( ) {
    if (sMenuOldLayer!="") {
        sMenuRequestRemove = sMenuOldLayer;
        window.setTimeout ( "menu_remove_submenu('" + sMenuOldLayer + "')", MENU_DELAY);
    }
} 

// actual removal of a menu, milliseconds after the mouse has left the 'hot-zone' 
function menu_remove_submenu() {
    if (sMenuRequestRemove!="") {
        if (sMenuOldLayer!="") MM_showHideLayers(sMenuOldLayer,'','hide');
        s = layer_get_style(sMenuOldLayer);
        if (s) s.zIndex = -1;	
        sMenuOldLayer="";
        sMenuRequestRemove="";
        
        menu_remove_sub_submenu();
    }
}

    // activating a menu is right away 
function menu_activate_sub_submenu( sMenuDiv ) {
    if (sSubMenuRequestRemove==sMenuDiv) {
        // prevent removing after timeout: keep alive!
        sSubMenuRequestRemove = "";
    } else {
        if (sMenuDiv!=sSubMenuOldLayer) {
	        menu_remove_sub_submenu();
	        if (sMenuOldLayer!="") {
		        MM_showHideLayers(sSubMenuOldLayer,'','hide');
		        sSubMenuRequestRemove = "";
		        s = layer_get_style(sSubMenuOldLayer);
		        if (s) s.zIndex = -1;
	        }
	        MM_showHideLayers(sMenuDiv,'','show');
	        sSubMenuOldLayer = sMenuDiv;
	        s = layer_get_style(sSubMenuOldLayer);
	        if (s) s.zIndex = LastZIndex - 1;	
        } 
    }
} 

// de-activating a menu is done with a delay, ensuring that this is what the user wants
function menu_deactivate_sub_submenu( ) {
    if (sSubMenuOldLayer!="") {
        sSubMenuRequestRemove = sSubMenuOldLayer;
        window.setTimeout ( "menu_remove_sub_submenu('" + sSubMenuOldLayer + "')", MENU_DELAY);
    }
} 

// actual removal of a menu, milliseconds after the mouse has left the 'hot-zone' 
function menu_remove_sub_submenu() {
    if (sSubMenuRequestRemove!="") {
        if (sSubMenuOldLayer!="") MM_showHideLayers(sSubMenuOldLayer,'','hide');
        s = layer_get_style(sSubMenuOldLayer);
        if (s) s.zIndex = -1;	
        sSubMenuOldLayer="";
        sSubMenuRequestRemove="";
        // post a delayed message to remove the parent
        menu_deactivate_submenu();
    }
}

function sync_menu(nID) {
    var subm  = document.getElementById( 'menu'      + nID.toString() );
    var mainm = document.getElementById( 'mainmenu_' + nID.toString() );
    var c     = document.getElementById( 'sd_middlecontainer');
    if (subm) subm.style.left = mainm.offsetLeft + c.offsetLeft;
}

function sync_submenu(nSubmenuID, nSubSubMenuID, regel) {
    var subm      = document.getElementById( 'menu'    + nSubmenuID.toString() );
    var sub_subm  = document.getElementById( 'submenu' + nSubSubMenuID.toString() );
    var c         = document.getElementById( 'sd_middlecontainer');
    if (subm) {
        sub_subm.style.top = subm.offsetTop + regel*22 + 11;
        sub_subm.style.left = subm.offsetLeft + (subm.offsetWidth - 10);
//		sub_subm.style.width = '150';
    }
}   

function setclass( TRElt, className) {
    if (TRElt.childNodes) {
	    for (t=0;t<TRElt.childNodes.length;t++) {
		    TRElt.childNodes[t].className = className; 	
	    }
    }
}
