<!--

	// images and mousover-images
	dynimg_normal	= new Array();
	dynimg_over		= new Array();
	
	// additional code to be executed on click/over/out
	dynimg_over_customcode	= new Array();
	dynimg_down_customcode	= new Array();
	dynimg_out_customcode	= new Array();

	// List of all dynimages, auto-filled by "init"
	dynimg_list				= new Array();

	// Those are called as event.
	// since events do not accept parameters, we read the id from 'this'
	// and call a function with that parameter.
	//
	function new_menu_mouseover()	{	id=this.id; menu_mouseover( id ); }
	function new_menu_mousedown()	{	id=this.id;	menu_mousedown( id ); }
	function new_menu_mouseout()	{	id=this.id;	menu_mouseout(  id ); }


	function menu_mouseover( id ) {
		if( dynimg_over[id] ) 				menu_highlight( id );
		if ( dynimg_over_customcode[id] )	eval( dynimg_over_customcode[id] );
	}

	function menu_mouseout() {
		if( dynimg_normal[id] )				menu_lowlight(id);
		if ( dynimg_out_customcode[id] )	eval( dynimg_out_customcode[id] );
	}
	
	function menu_mousedown( id ) {
		menu_forcehighlight_tree( id );
		if ( dynimg_down_customcode[id] )	eval( dynimg_down_customcode[id] );
		if( dynimg_over[id] ) 				menu_forcehighlight_tree(id);
	}

	
	function menu_highlight( id ) {
//window.defaultStatus +=parseInt(dest_x);
//obj("debug").innerHTML += id + "<br>";
		if( obj(id) && dynimg_over[id] ) {
			obj(id).src = dynimg_over[id].src;
		}
	}

	function menu_lowlight( id ) {
		if( obj( id ).getAttribute("forceactive")==1 )  {
			obj(id).src = dynimg_over[id].src;
		} else {
			obj(id).src = dynimg_normal[id].src;
		}
	}

	function menu_highlight_tree( id ) {
		while( id.match(/^menu_img_/) ) {
			menu_highlight( id );
			id = menu_parent( id );
		}
	}

	function menu_parent( id ) {
		// parents go like: _a_a_ba -> _a_ab -> _aa
		id = id.replace(/.$/, "");	// remove last letter
		id = id.replace(/_(.)$/, "$1");	// change a_b to ab
		return(id);
	}
	
	
//	function menu_lowlight_all() {
//		for( var i=0 ; i<dynimg_list.length ; i++ ) {
//			obj(dynimg_list[i]).setAttribute("forceactive" ,0);
//		}
//	}


	function menu_forcehighlight_tree( id ) {
		for( var i=0 ; i<dynimg_list.length ; i++ ) {
			if( obj(dynimg_list[i]).getAttribute("forceactive")==1 ) {
				obj(dynimg_list[i]).setAttribute("forceactive" ,0);
				menu_lowlight( dynimg_list[i] );
			}
		}
		
		// activate all parents. Goes like: _a_a_ba -> _a_ab -> _aa
		while( id.match(/^menu_img_/) ) {
//if( ! obj( id ) ) {alert("Does not exist: "+id);}
			obj( id ).setAttribute("forceactive" ,1);
			menu_highlight( id );
			id = id.replace(/.$/, "");	// remove last letter
			id = id.replace(/_(.)$/, "$1");	// change a_b to ab
		}
	}

//		window.defaultStatus = id;



	/*
		Init an image as mouseover
	*/
	function auto_over_init( id ) {
		
//		if( ! obj(id) )		obj("debug").innerHTML += id+" - ";
//		if( ! obj(id) )		alert(id);
		
		if( obj(id) )	{
		
//		dynimg_list.push(id);
			dynimg_list[ dynimg_list.length ] = id;	// collect list of images. IE5Mac suxx and does not know "push".
	
			// normal image
			dynimg_normal[id] = new Image(); dynimg_normal[id].src = obj( id ).src;
			
			// mouseover image
			overpath 		= obj( id ).getAttribute("ovr");
			dynimg_over[id] = new Image(); dynimg_over[id].src = overpath;
	
			// is image forced highlighted? Then set normal = over, so mouseover is done invisible.
			forceactive	= obj( id ).getAttribute("forceactive")==1 ? 1 : 0;
			obj( id ).setAttribute("forceactive" , forceactive);		// maybe unintialized. Now it is.
			//if( forceactive ) {
			//	dynimg_normal[id].src = dynimg_over[id].src;
			//}
			
			obj( id ).onmouseover	= new_menu_mouseover;
			obj( id ).onmouseout	= new_menu_mouseout;
			obj( id ).onmousedown	= new_menu_mousedown;
	
			// Simulate one mouseout to actualize state, care for forceactive
			menu_lowlight( id );
			//obj(id).src = dynimg_normal[id].src;
			
		}
	}

//-->