/***************************************************************************
*                             slide_menu.js
*                          -------------------
*   begin                : Tuesday, Nov 26, 2002
*   copyright            : (c) 2002 w2c
*   web                  : www.w2c.at
*   email                : support@w2c.at
*
***************************************************************************/
 
/***************************************************************************
*
*   Slide menu code
*
***************************************************************************/


// Settings (can be changed)
//--------------------------------
var top = -9;		// top value for starting animation
var bottom = 122;	// end vertical value for stopping animation
var speed = 10;		// speed of animation - steps in pixels per "animation-frame"
var delay = 10;		// delay between the "animation-frames"
		
var menu = new Array();	// menues
menu[0] = 'menu01';
menu[1] = 'menu02';
menu[2] = 'menu03';
menu[3] = 'menu04';
//--------------------------------
// don't edit anything after here
	
var time;

// check for browser capabilities
var ie = (document.all) ? 1 : 0;	// it is an internet explorer
var ns4 = (document.layers) ? 1 : 0;	// it is a netscape 4.x
var dom = (document.getElementById) ? 1 : 0;	// it is a netscape 6+ or a browser which knows the getElementById function

// show menu
function showMenu (myMenu) 
{
	if (ie) { document.all[myMenu].style.visibility = 'visible'; }
	else if (ns4) { document.layers[myMenu].visibility = 'visible'; }
	else if (dom) { document.getElementById(myMenu).style.visibility = 'visible'; }
}
// hide menu
function hideMenu (myMenu)
{
	if (ie) { document.all[myMenu].style.visibility = 'hidden'; } 
	else if (ns4) { document.layers[myMenu].visibility = 'hidden'; }
	else if (dom) { document.getElementById(myMenu).style.visibility = 'hidden'; }
}
	
// check which menu is open	
function checkOpen (myMenu) 
{
	for (z=0;z<menu.length;z++)
	{
		if (menu[z] != myMenu)
		{
			if (ie) { check = document.all[menu[z]].style.pixelTop > top; }
			else if (ns4) { check = document.layers[menu[z]].top > top; }
			else if (dom) { check = parseInt(document.getElementById(menu[z]).style.top) > top; }
	   	    if (check) { closeMenu(menu[z]); } 
		}
	}
}
	
// open menu
function openMenu (myMenu)
{
	checkOpen(myMenu);	// check if other menues are open if yes --> close them except the one which opens

	clearTimeout(time);
	showMenu(myMenu);
		
	// check vertical position of menu
	if (ie) { check = document.all[myMenu].style.pixelTop + speed >= bottom; }
	else if (ns4) { check = document.layers[myMenu].top + speed >= bottom; }
   	else if (dom) { check = parseInt(document.getElementById(myMenu).style.top) + speed >= bottom; }	

    if (check) { // stop animation

		if (ie) { check = document.all[myMenu].style.pixelTop = bottom; }
		else if (ns4) { check = document.layers[myMenu].top = bottom; }
    	else if (dom) { check = document.getElementById(myMenu).style.top = bottom; }	

        clearTimeout(time);
		//set layer for clear state visible
		if (ie) { document.all.cmbottom.style.visibility = 'visible'; }
		else if (ns4) { document.layers.cmbottom.visibility = 'visible'; }	
		else if (dom) { document.getElementById("cmbottom").style.visibility = 'visible'; }	
	} else { // animate!
		if (ie) { document.all[myMenu].style.pixelTop += speed; }
		else if (ns4) { document.layers[myMenu].top += speed; }
    	else if (dom) { document.getElementById(myMenu).style.top = bottom; }	// no animation, cause too slow		

		time=setTimeout("openMenu('"+myMenu+"')", delay);
	}
}
	
// close menu
function closeMenu (myMenu)
{
	clearTimeout(time);
	
	// check vertical position of menu
	if (ie) { check = document.all[myMenu].style.pixelTop + speed <= top; }
	else if (ns4) { check = document.layers[myMenu].top + speed <= top; }
   	else if (dom) { check = parseInt(document.getElementById(myMenu).style.top) + speed <= top; }
    	
    if (check) { // stop animation
        clearTimeout(time);

		if (ie) { document.all[myMenu].style.pixelTop = top; }
		else if (ns4) { document.layers[myMenu].top = top; }
		else if (dom) { document.getElementById(myMenu).style.top = top; }
		hideMenu(myMenu);
	} else { //animate!
		// set layer for clear state visible
		if (ie) { document.all.cmbottom.style.visibility = 'hidden'; }
		else if (ns4) { document.layers.cmbottom.visibility = 'hidden'; }	
		else if (dom) { document.getElementById("cmbottom").style.visibility = 'hidden'; }	

		if (ie) { document.all[myMenu].style.pixelTop -= speed; }
		else if (ns4) { document.layers[myMenu].top -= speed; }
		else if (dom) { document.getElementById(myMenu).style.top = top; }	// no animation, cause too slow	
            
		time=setTimeout("closeMenu('"+myMenu+"')", delay);
	}
}
