//**********************************************************************'
//
// DHTML-valikko funktiot v 2.0
// 
// Toimii testatusti Explorer 4 ja 5 sekä Netscape 4 ja 6
// Funktiot tunnistaa käytetyn selaimen ja tekee toiminnot sen mukaisesti.
//
//***********************************************************************

//***********************************************************************
// MUUTTUJAT
// =========
// Asennettaessa dhtml-valikkoa, muuta seuraavat skriptit vastaamaan
// käyttötarkoitusta. Muuta muutettavaa skriptissä ei periaatteessa ole..
//***********************************************************************

// aika sekunteina, jonka kuluttua valikko piilotetaan, jos hiiri ei ole päällä
var ALKUARVO = 2;

// 1 valikkotason aukaisukohdan määritys (x ja y akseli) eri selaimilla 
var ie_x1 = 0;
var ie_y1 = 20;
var ns4_x1 = 0;
var ns4_y1 = 20;
var ns6_x1 = 0;
var ns6_y1 = 21;


// Muuttujia, joita ei saa muuttaa
var laskuri = ALKUARVO;
var timer;
var ns6=document.getElementById&&!document.all?1:0
var i = 0;
var last1 = ""; // hide_menu-funktioiden käyttämiä muuttujia
var last2 = "";
var last3 = "";



// SELAIMEN ALUSTUS

// Tunnistaa ja alustaa NS
if (navigator.appName == 'Netscape')
{ 
	browsLayer = 'document.layers'; 
	ifStyle = ''; 
} 
// Tunnistaa ja alustaa IE
else { 
    var browsLayer = 'document.all'; 
	ifStyle = '.style'; 
} 



//*********************************************************************
// MENU 1
// ======
// Ensimmäisen valikkotason näyttäminen
//*********************************************************************

function show_menu1(e,valikko)
{
	// NS6 alustuksia
	var ns6=document.getElementById&&!document.all?1:0
	var temp=ns6?document.getElementById(valikko).style:null;
	
	//Piilotetaan vanhat valikot näkyvistä
	hide_menu1();  

	
	var menu = valikko;

	// Tunnistaa ja alustaa NS, tämä uudestaan Ns:n takia
	if (navigator.appName == 'Netscape')
	{ 
		//Alustetaan muutujia
		browsLayer = 'document.layers'; 
		ifStyle = ''; 
			
		// Määritetään valikon paikka ruudulla suhteessa kohtaan josta sitä kutsuttiin
		if(ns6==0){
			eval(browsLayer + '["' + menu + '"]' + ifStyle + '.left=e.pageX-e.layerX +' + ns4_x1);
			eval(browsLayer + '["' + menu + '"]' + ifStyle + '.top=e.pageY-e.layerY +' + ns4_y1);
		} else {
			temp.left=e.pageX-e.layerX+ns6_x1;
			temp.top=e.pageY-e.layerY+ns6_y1;
		}
	} 
	// Tunnistaa ja alustaa IE, tämä uudestaan NS:n takia
	else{ 
		//Alustetaan muuttujia
	    var browsLayer = 'document.all'; 
		ifStyle = '.style'; 
			
		// Määritetään valikon paikka ruudulla suhteessa kohtaan josta sitä kutsuttiin
		eval(browsLayer + '["' + menu + '"]' + ifStyle + '.left=document.body.scrollLeft+event.clientX-event.offsetX+' + ie_x1);
		eval(browsLayer + '["' + menu + '"]' + ifStyle + '.top=document.body.scrollTop+event.clientY-event.offsetY+' + ie_y1);	
	} 

	// Näyttää valikon
	if(ns6) temp.visibility="visible";
	else eval(browsLayer + '["' + menu + '"]' + ifStyle + '.visibility="visible"');

	last1 = menu; // Alustaa muuttujan jota käytetään piilotuksessa
	return false;
}


//*******************************************************************
// ENSIMMÄISEN TASON VALIKON PIILOTUS
// ==================================
// Piilottaa show_menu1 -funktiolla avatun valikon
//*******************************************************************

function hide_menu1()
{
	var menu;
	// Tunnistaa ja alustaa NS
	if (navigator.appName == 'Netscape')
	{ 
		browsLayer = 'document.layers'; 
		ifStyle = ''; 
	} 
	// Tunnistaa ja alustaa IE
	else{ 
      	var browsLayer = 'document.all'; 
		ifStyle = '.style'; 
	} 
	if (last1 != "")
	{
		// Otaa vanhan valikon ja piilottaa sen
		menu = last1;
		var temp=ns6?document.getElementById(menu).style:null;

		// Piilottaa valikon
		if(ns6) temp.visibility="hidden";
		else eval(browsLayer + '["' + menu + '"]' + ifStyle + '.visibility="hidden"');
	}
}


//******************************************************************
// APUFUNKTIOT
// ===========
// Funktiot, joita käytetään ajan laskemiseen ja automaattiseen 
// piilotukseen.
//******************************************************************


// Laskee sekuntteja kuinka kauan valikkolaatikko on näkyvissä
function time_hide()
{
	laskuri--;  // Vähentää laskuria
	
	// Jos laskuri on nolla
	if(laskuri == 0)
	{
		hideall();  // Piilotetaan kaikki valikot
		laskuri = ALKUARVO;  // Alustetaan laskuri alkuarvolla
		return; // Lopetetaan funktion
	}
	// Jos laskuri ei ole vielä nolla, toistetaan funktio
	timer = setTimeout("time_hide()", 1000);
}


// Pysäyttää laskurin ja alustaa sen alkuarvolla
function stop_timer()
{
	clearTimeout(timer);
	laskuri = ALKUARVO;
}


// Piilottaa kaikki funktiot
function hideall()
{
	hide_menu1();
}

