<!--//
/*************************************

	Made by Mika Pajarinen
	Copyright Wmdata Novo 2004

	tbl_sysSelects_dropAll_tamfelt.js
 
*************************************/	

 

 if (brQ9.vs.length >0 && brQ9.na.length >0)  
{
// 
//////////////////////////////////////////

			// mika pajarinen , 31.5.2004, mouseoverefekti  / tamfelt 
			// tamfelt kustomointi
/* EI KÄYTÖSSÄ
var imgExtraPath = '/layout/commonimages/'; 
var menuSettingBoldLanguage = '';
var intActiveTopMenuLayer = -100;
*/ 

 // ==============================================================	
// selectin piilotus, tamfelt kustomointi, mika pajarinen, 03.06.2004
/* EI KÄYTÖSSÄ
var blnHasFlashObject = false;

function handleDiv(path,obj,html, top, left, visib)
{
	var txt= '', style = '';

		if (document.layers)
		{
			txt= path+ 'document.layers["' + obj + '"]';
			dom = 	eval(txt);
			if (dom)
			{
				if (top!=-1)
					{
						dom.top = top;
					}	
				if (left!=-1)
					{
						dom.left = left;
					}
				if (html)	
				{
			 		dom.document.open()
					dom.document.write(html);
					dom.document.close();
				}	
				if (visib!=-1)	
				{	
					style=visib ? 'visible': 'hidden'; 
					dom.visibility= style;
				}	
				
				
				dom = null;
			}	
			
		}
		else if (document.all)
		{
				 
			 txt= path+ 'document.all.' + obj;
			 dom = 	eval(txt);

			 if (dom)
			 {
			 
			 	if (top!=-1)
					{
						dom.style.pixelTop = top;
					}	
				if (left!=-1)
					{
						dom.style.pixelLeft= left;
					}
			 	
				if (html)	
				{	
			 		dom.innerHTML= html;
				}	
				
				if (visib!=-1)	
				{	
					style=visib ? 'visible': 'hidden';
			 		dom.style.visibility= style;
				}	
				
				
				dom = null;
			 }	
		}	
		else  
		{
			 txt= path+ 'document.getElementById("' + obj + '")';
			 dom = 	eval(txt);
			
			 if (dom)
			 {
			 		
			 	if (top!=-1)
					{
						dom.style.top= top;
					}	
				if (left!=-1)
					{
						dom.style.left= left;
					}
				if (html)	
				{	
			 		dom.innerHTML= html;
				}	
				
				if (visib!=-1)	
				{	
					style=visib ? 'visible': 'hidden';
					dom.style.visibility= style;
				}	
				
				dom = null;
			}	
			 
		}	
		
		
	 
		
}		
 // ==============================================================		
*/

 

		
function naviIn(id,otsikko, url, target, jscript, tila, parent, taso,drawtype,kummiseta, sysid, sysidPath, group, linkTypeId, linkTargetId, MainMenuid,ChildMenuid)
{
	this.id= id;
	this.otsikko= otsikko;
	this.url= url; 
	this.target= ((target=='data_1')? '_self' : target);
	this.jscript= jscript; 
	this.tila= tila;	
	this.parent= parent; 
	this.taso= taso; 
	this.childs=0;
	//0: linkki, 1 menuruler, 2 menutext
	this.drawtype=drawtype;	
	
	this.kummiseta=kummiseta;	
	this.sysid=sysid;	
	this.sysidPath=sysidPath; 
	this.group= group;
	
	// G2 SYS SETTINGS
	this['linkTypeId'] = linkTypeId;
	this['linkTargetId'] = linkTargetId;
	this['MainMenuid'] = MainMenuid;
	this['ChildMenuid'] = ChildMenuid;
	
	this['mName'] = (naviIn.arguments.length > 17 ) ? naviIn.arguments[17] : '';
	 
	 
	 
	//  mika pajarinen , 18.5.2004, portaalinvaihdot,    tamfelt kustomointi	
	if ((this.target=='_self' || this.target=='data_1') && this.group<=arrPrtIdArray.length)
	{
		this.target=='_self'; 
		this.url = '/index.asp?id=' +arrPrtIdArray[this.group-1]+'&data=1,' +this['linkTypeId']+',' + this['linkTargetId'];
	}
}


 	// alert(arrPrtIdArray);	




function trim(txt)
{
	var back=txt.toString();
	var fn=' ';
	var rp='';
	while (back.search(fn)>-1) 
		{ back=back.replace(fn,rp);	}
			
	return back;
}


function makeArray(len) {
    for (var i = 1; i < len; i++) this[i] = null;
	this.length = len;
}




function mreplace(txt,fn,rp)
{
	var back=txt.toString();
	while (back.search(fn)>-1) 
		{ back=back.replace(fn,rp);	}
			
	return back;
}






function cls_checkChilds22()
{

var levelTemp=0;
var levelTempCount=0;	
for (var i11 = 1; i11 <= this.navItit.length ; i11++)
	{
		// 11.12.2003, parametrimuutokset, mika pajarinen, 
	 this.navItit[i11].url =  this.navItit[i11].url + '&pid=' + pid2 + '&layout=' + layout2;
	for (var i12 = 1; i12 <= this.navItit.length ; i12++)
			{
				if (this.navItit[i12].parent==i11)
				{
					this.navItit[i11].childs= 1; 
					break; 
				}
				 
			}
	}

}



function cls_checkChilds2()
{
	// 1. 
var levelTemp=0;
var levelTempCount=0;	
for (var i11 = 1; i11 <= this.navItit.length ; i11++)
	{
		 this.navItit[i11].url =  this.navItit[i11].url + '&pid=' + pid2 + '&layout=' + layout2;
		this.navItit[i11].childs= (this.navItit.length > i11 && this.navItit[(i11+1)].taso> this.navItit[i11].taso) ? true : false;
	}	
}




function levelItem(ltxt,ltxt2,oncl,scr_onMOver,href,target,layerId,Xcord,rivityslisa,Ycord,linkId)
{
	this.linkin_teksti= ltxt;	// linkin teksti
	this.linkin_teksti_2= ltxt2;	// linkin mouseover teksti
	this.scr_onclick_event= oncl; 	// onclick event (not in use)
	this.scr_onmouseoverissa= scr_onMOver;	// eventti mouseoverissa 
	this.href= href;	// url
	this.target= target;	// target
	
	this.layerId= layerId;	// layeriid johon kuuluu osana
	
	this.Xcord= Xcord;	// linkin piirto koord x (oikealaita)
	this.rivityslisa= rivityslisa;
	this.Ycord= Ycord;	// linkin piirto koord y (ylareuna)
	
	this.id = linkId;	//linkin id
}

function layerItem(X,Y,X2,html, name, topParent)
{
//	this.active = false;	// onko layer aktiivinen (sen alla olevaa linkkia klikattu)
	this.X= X;	// layerin x koord sijainti		
	this.Y= Y;	// layerin y koord sijainti		
	this.X2= X2;	// layerin x koord sijainti	( right	)
	this.html= html; 	// layerin sisalto
	
	this.name= name; // valikon nimi (vain 1 tasolla)
	this.layerName= ''; 	// layerName eli id tunniste
	this.topParent= topParent; 	// paalayer jonka alla kyseinen layer on (1 tason id)
	
	this.xx = 0;	// nayttokoordinaatti x
	this.yy = 0; 	// nayttokoordinaatti y
	
	
}




/////////////////////////////////////////
function SysParseDataCOnfiq(com_Path,intTimeout, strMenu )
{
	/*
		luo layerirakenteen navItit- objektista 
		kayttaa globaaleja muuttujia , palauttaa layeri objektin
		
		parametrina menu objekti merkkijonona
	*/ 

var objMenu = eval( strMenu );


if (objMenu.navItit.length)
{
	var grId= 0;
	var targettiIs, linkinteksti, linkinteksti2, url, Level, menuName;
	var levCountTemp,levCountTempParentLevel, qw, lefty, toppy, righty, levCountMainTemp;
	var temp_x, temp_y, temp_tasoitus, temp_rivityslisa;
	var levCountMainTempPrevious, elemType; 
	var intMainLevelCounterTemp;
	var strId;
	var  KieltoOn=0;
	
	
	// loopataan lapi jokainen valikko 
	// huom: (valikot on kokokaisuudessaan yhdessa rakenteessa)
	for (var i22 = 1; i22 <= objMenu.navItit.length ; i22++)
	{
		// VALIKORAKENNE LOOP 
		
		targettiIs= objMenu.navItit[i22].target;
		linkinteksti= objMenu.navItit[i22].otsikko;
		linkinteksti2= objMenu.navItit[i22].otsikko;
		url= objMenu.navItit[i22].url;
		Level= objMenu.navItit[i22].taso;
		menuName = objMenu.navItit[i22]['mName'];
		elemType = objMenu.navItit[i22].drawtype;
		strId = objMenu.navItit[i22].sysid;
		
		
		if (KieltoOn && Level <= KieltoOn)  
		{	//  kiellon purku
			KieltoOn=0;
		}
		
	
		
		
//		if (trim(length) == '' || trim(targettiIs) == '')
		if (elemType)
		{	// kielto on tarpeen (ei ole linkki)
			
			if (KieltoOn==0)
			{	
				// kielto ei ollut  paalla, kiellon kiertaakseen tultava 
				// vastaan vahintaan saman tason hyvaksyttava linkki 
				KieltoOn=Level;
			}	
			else
			{
				// kielto oli jo paalla , kiellon kiertaakseen vahintaan saman tason hyvaksyttava linkki
				// tarkistetaan etta kierrettava taso on vahintaan kiellon aloitustaso
				// tai jos tulee viela pienempi taso niin sitten se 
				
				if (Level < KieltoOn)
				{
					KieltoOn = Level
				}
				
			}
		}

	
		if (!KieltoOn)
		{	// estetaan valikkoerottimien ja tekstien seka kaikkien niiden alla olevien paasy
			// osaksi valikkoa 
		
			if (grId!=objMenu.navItit[i22].group)
			{	// valikon vaihto ( tai aloitustilanne ) 
				//	alert('valikon vaihto' + menuName);
				for (qw = 1; qw <= objMenu.LevelMaxHandleCOunt ; qw++)
				{	// nollataan kaikkien tasojen keruu 
						objMenu.collectingLevel[qw]= false;
				}
				// kasiteltava valikko 
				grId= objMenu.navItit[i22].group;
				
			}
			
			// BEGIN yksittaisen valikon itemit 
			//////////////////////////////////////
			/////////////////////////////////////
			
			if (Level<=objMenu.LevelMaxHandleCOunt && Level>0)
			{	// taso on maaritellylla alueella esim 1 .. 3	
				// kaikki jotka eivat ole alueella, pois
				
				
				// YLEMPIEN TASOJEN KERAYKSEN NOLLAUS
				if (Level < objMenu.LevelMaxHandleCOunt)	
				{	// nollataan kaikkien kasiteltavaa tasoa alempien tasojen keruu
					// jos max taso, nollaus on siis turha
					for (qw = Level+1; qw <= objMenu.LevelMaxHandleCOunt ; qw++)
					{	// nollataan kaikkien kasiteltavaa tasoa ylempien tasojen keruu
							objMenu.collectingLevel[qw]= false;
					}
				}
				
				
				// KASITELTAVAN TASON KERAYKSEN ALOITUS  
				if( !(objMenu.collectingLevel[Level]) )
				{
					// tason seuraava layer counter ((eka)0 asetetaan [0] -->jolloin tulee lenghtiksi  length =1 jne ..)
					levCountTemp = objMenu.levelCoord[Level].length;

					
					// LASKETAAN LAYERILLE SIJAINTI KOORDINAATIT 
					// lyerin x,y (vasen ylakulma)
					if (Level==1)
					{	 
					// old:level 1 (top: aina 0, left: count * leveus)
						//lefty = Math.round(levCountTemp * objMenu.levelLengths_values[Level]);
						// x-koord tulee headerin mukaan
//						// lefty = Math.round(levCountTemp * objMenu.headerLinkLength * objMenu.headerLinkLengthSetting);
						//lefty = Math.round(levCountTemp * objMenu.headerLinkLength);
						//headerLinkLength ¤¤¤
						
						// =======================================================
						// mika pajarinen , 18.5.2004, kiinteat sijainnit,    tamfelt kustomointi
						//otetaankin joka ykkostason x-koordinaatille oma arvo  
						if(objMenu.levelOneXCoords) {
							if(levCountTemp<objMenu.levelOneXCoords.length)
								lefty=objMenu.levelOneXCoords[levCountTemp];
							else {
								lefty=objMenu.levelOneXCoords[objMenu.levelOneXCoords.length-1];
								lefty+=Math.round( (1+levCountTemp-objMenu.levelOneXCoords.length)* 
													objMenu.headerLinkLength );
								}
							}
						else lefty = Math.round(levCountTemp * objMenu.headerLinkLength);
						// mika pajarinen , 18.5.2004, kiinteat sijainnit,    tamfelt kustomointi
						// =======================================================		
						
						
						toppy = 0;
					}
					else 
					{	// level suurempi kuin 1, 
						// layer coords (y,x) otetaan yhta tasoa ylempaa, viimeisimmasta linkista (ja -1 arrayn aloitus korjaus)
						levCountTempParentLevel = objMenu.level_array[(Level-1)].length - 1;
						
						lefty = objMenu.level_array[(Level-1)][levCountTempParentLevel].Xcord;
						toppy = objMenu.level_array[(Level-1)][levCountTempParentLevel].Ycord;

						// ja mouseover yhta tasoa ylemmas ShowLevel(taso, layerid/layernum,toiminto)
						// && level_array[(Level-1)][levCountTempParentLevel].scr_onmouseoverissa= 'ShowLevel(' + Level + ',' + levCountTemp + ',false);';
						objMenu.level_array[(Level-1)][levCountTempParentLevel].scr_onmouseoverissa= 'ShowLevel(' + Level + ',' + levCountTemp + ',false';
					
					}
					
					// layerin oikean reuna y koordinaatti
					//	layerin X2 (right edge) 
					//righty = lefty + objMenu.levelLengths_values[Level]  + vLev_fix;

					righty = lefty + objMenu.levelLengths_values[Level];
					
					// ??
					
					// 1 tason ns kummiseta layer (minka layerin lapsi rakenteessa)
					// tarvitaan klikkauksen merkkausta varten 
					if (Level==1)
						{ 	// 1 taso eli nyt lisattavasta layerista tulee top.parent (eli itse)
							intMainLevelCounterTemp = (objMenu.levelCoord[1].length);
						}
					else
						{	// muu kuin 1 taso, top.parent 1 tason viimeisin 
							intMainLevelCounterTemp = (objMenu.levelCoord[1].length-1);
						}
					
					
					
					// lisataan uuden layerin tiedot 
					objMenu.levelCoord[Level][levCountTemp]= new layerItem(lefty,toppy,righty,'',menuName, intMainLevelCounterTemp);
					
					//alert(menuName + ' : ' + righty);
					
					// tason kerays paalle
					objMenu.collectingLevel[Level] = true;
				}
				
				// tason laskuri
				// kaytetaan lenghtia -- eli lisays tulee seuraavaan (siis uusi)
				// ja length kasvaa yhdella 
				levCountMainTemp = objMenu.level_array[Level].length;
				// saman tason edellinen item (jos level on 1 , ei saa kayttaa (paitsi jos ei ole aivan ensimmainen))
				levCountMainTempPrevious = levCountMainTemp-1;
				
				// LINKIN LASKENNALLINEN SIJAINTI
				// eli linkin alatason piirto koordinaatit
				// 	(jokaiseen linkkiin talletetaan tieto linkin ylataso (pikselia), seka multiple rivi tasoitus, linkin oikea reuna)

					if (Level==1)
					{	// ensimmainen taso
					
						// Y KOORDINAATTI 
						if (levCountMainTemp==0)
						{	// eka item (1 taso) layerissa
							// ensimmaisessa aloituskorkeus (0)
							temp_y = 0;
						}
						else if (objMenu.level_array[Level][levCountMainTempPrevious].layerId!=(objMenu.levelCoord[Level].length-1))
						{	//  jos edellinen 1 tason  linkki oli eri layerissa: eli layer vaihtunut juuri
							// kyseessa uusi 1 tason layer,  aloituskorkeus (0)
							temp_y = 0;
						}
						else
						{	// Y(edellinen 1 tason linkki y + edellisen mahdollinen rivitys lisa + korkeus ), 
							temp_y = (objMenu.level_array[Level][levCountMainTempPrevious].Ycord + objMenu.level_array[Level][levCountMainTempPrevious].rivityslisa + objMenu.vKork);
						}
					
						// X KOORDINAATTI 	
						// tason laskuri 
						// monesko 1 tason layer on * + leveys  siis etaisyys vasemmasta reunasta
						// HUOM : nyt -1 , silla nykyinen layer on jo lenghtissa mukana 
						//		ja ensimmaisen etaisyys vasemmasta reunastahan on 0 px
						levCountTemp = objMenu.levelCoord[Level].length-1;					
						levCountTemp = objMenu.levelCoord[Level].length-1;					
//						//temp_x = Math.round(levCountTemp * objMenu.headerLinkLength * objMenu.headerLinkLengthSetting) + objMenu.levelLengths_values[Level]  + objMenu.vLev_fix;
						//temp_x = Math.round(levCountTemp * objMenu.headerLinkLength) + objMenu.levelLengths_values[Level]  + objMenu.vLev_fix;
						// ========================================================
						// mika pajarinen , 18.5.2004, kiinteat sijainnit,    tamfelt kustomointi
						temp_x = objMenu.levelLengths_values[Level]  + objMenu.vLev_fix;
						if(objMenu.levelOneXCoords) {
							if(levCountTemp<objMenu.levelOneXCoords.length)
								temp_x+=objMenu.levelOneXCoords[levCountTemp];
							else {
								temp_x+=objMenu.levelOneXCoords[objMenu.levelOneXCoords.length-1];
								temp_x+=Math.round( (1+levCountTemp-objMenu.levelOneXCoords.length)* 
													objMenu.headerLinkLength );
								}
							}
						else lefty += Math.round(levCountTemp * objMenu.headerLinkLength);
						// ========================================================		
					}
					else
					{	// level GT 1
						
						// Y KOORDINAATTI 
							if (levCountMainTemp==0)
							{	// jos ensimmainen linkki kyseisella tasolla, otetaan y koordinaatti edelliselta tasolta   
								// edellisen tason laskuri
								levCountTemp = objMenu.level_array[(Level-1)].length-1;
								// itse arvo 
								temp_y =objMenu.level_array[(Level-1)][levCountTemp].Ycord;
							}	
							else if (objMenu.level_array[Level][levCountMainTempPrevious].layerId!=(objMenu.levelCoord[Level].length-1))				
							{ 	//  jos edellinen taman tason  linkki oli eri layerissa: eli layer vaihtunut juuri, otetaan y koordinaatti ylemmalta tasolta     
								// ylemman tason laskuri
								levCountTemp = objMenu.level_array[(Level-1)].length-1;
								// itse arvo 
								temp_y =objMenu.level_array[(Level-1)][levCountTemp].Ycord;
							}	
							else
							{ 	// toinen tai usemapi linkki layerissa, Y koordinaatti tulee edellisen saman  tason linkin mukaan (y+tasoitus+kork)  
								// Y(edellinen saman tason   linkki y + edellisen saman tason mahdollinen rivitys lisa + korkeus ), 
								temp_y = (objMenu.level_array[Level][levCountMainTempPrevious].Ycord + objMenu.level_array[Level][levCountMainTempPrevious].rivityslisa + objMenu.vKork);
							}
						
						// X KOORDINAATTI 	
						//   edellinen taso X + kasiteltavan tason leveys + tasoitus 	
						levCountTemp = objMenu.level_array[(Level-1)].length-1;
						temp_x = objMenu.level_array[(Level-1)][levCountTemp].Xcord + objMenu.levelLengths_values[Level]  + objMenu.vLev_fix;
						
					}
					
				// rivityslisa 
				temp_rivityslisa = (linkinteksti.length> objMenu.rivitysLimit_values[Level]) ? objMenu.vKork_fix : 0;
				// rivityslisa 2
				temp_rivityslisa+= (linkinteksti.length> (objMenu.rivitysLimit_values[Level]*2)) ? objMenu.vKork_fix : 0;
				// rivityslisa 3 
				temp_rivityslisa+= (linkinteksti.length> (objMenu.rivitysLimit_values[Level]*3)) ? objMenu.vKork_fix : 0;
				
					
				// lisataan uusi linkkiitem target
				objMenu.level_array[Level][levCountMainTemp]= new levelItem(linkinteksti, linkinteksti2, '', '', url, targettiIs, (objMenu.levelCoord[Level].length-1), temp_x, temp_rivityslisa, temp_y , strId);
 

			}
			//////////////////////////////////////
			/////////////////////////////////////
			// END yksittaisen valikon itemit 		
			
			
			// 	END estetaan valikkoerottimien  ...
		}
			
		// VALIKORAKENNE LOOP 	
	}
			

	
	//level_array[Level][levCountMainTemp]
	var intL, strHtml, intactivid, xid; // blnHasChilds;
	var strMouseOver,strMouseOverTd, strMouseClick, strMouseOut, strMouseOutTd, strChildMenuImage, strMouseClickTd;
	var strMouseOverTxt, strMouseOutTxt, intClassLevel; 
	var strLayerTg1,strLayerTg2, lf= String.fromCharCode(13,10);
	
	
	strLayerTg1 = '';				
	strLayerTg2	= '';		
	// mouse over alivalikot actions 
	
	if (brQ9.na=="net" && brQ9.vs=="4")
	{
		// onmouseover: callTimer(0);
		// onmouseout: callTimer(' + intTimeout + ');
		// netscape onmouse out hide
		
		strLayerTg1 = '<layer visibility="inherit"  onmouseout="' + com_Path + 'callTimer(' + intTimeout + ');" onmouseover="' + com_Path +'callTimer(0);">';
		strLayerTg2 = '</layer>';
	}
	else
	{
		strLayerTg1 = '<span   onmouseout="' + com_Path + 'callTimer(' + intTimeout + ');" onmouseover="' + com_Path +'callTimer(0);">';
		strLayerTg2 = '</span>';
	}
	
	// dotHtml='<tr><td background="/layout/suolaistajamakeaa/images/pilkkuviiva.gif" width="100%" height="1"></td></tr>';						
	// mika pajarinen, 22.1.2004, pilkkuviiva
	var dotHtml = ''; 
	
	for (qw = 1; qw <= objMenu.LevelMaxHandleCOunt ; qw++)
		{	// kaydaan jokainen level_array taso lapi [1 tason linkit], [2 tason linkit] jne ..
			// piirretaan layereiden html- versiot ja tallennetaan objektin tietoihin
		
			if	(objMenu.level_array[qw].length &&  objMenu.levelCoord[qw].length)
			{	// tasolla linkkeja seka layereita
				strHtml = '';
				intactivid = -1;
				for (xid = 0; xid < objMenu.level_array[qw].length ; xid++)
				{	// tason linkkien lapikaynti 
					
					
					if (objMenu.level_array[qw][xid].layerId!=intactivid) 
					{	// layerin vaihto tai aloitustilanne
					
						if (intactivid!=-1)
						{	// ei eka kerta, kerays oli siis  kaynnissa,
							// tallennetaan edellisen layerin html
							
							strHtml+= objMenu.strHtmlDivEnd;
							strHtml+=strLayerTg2;
							//objMenu.level_array[qw][intactivid].html = strHtml;
							// mac ie bug fix
							if (brQ9.na=='ie' && brQ9.mac)
							{
								strHtml = mreplace(strHtml,'</td>', '</TD>'+ lf);
								strHtml = mreplace(strHtml,'</tr>','</TR>'+lf);
								strHtml = mreplace(strHtml,'</table>','</TABLE>'+lf);
								strHtml = mreplace(strHtml,'</span>','</SPAN>'+lf);
								strHtml = mreplace(strHtml,'<br clear="all">','<BR CLEAR="ALL">'+lf);
								
							}
							objMenu.levelCoord[qw][intactivid].html = strHtml;
						}
						strHtml=strLayerTg1;
						strHtml+= objMenu.strHtmlDivBeg;
						intactivid = objMenu.level_array[qw][xid].layerId;
						
						// mika pajarinen, 22.1.2004, pilkkuviiva
						dotHtml = '';
					}
					
					
					// arvotaan oikea class (ryhman mukaan , tai sitten tason mukaan)
					// RYHMA EI AKTIIVISESSA KAYTOSSA, AINA TASON MUKAAN 
					intClassLevel = objMenu.SettingUseGroupColoring ? (objMenu.levelCoord[qw][intactivid].topParent+1) : qw;
					
					//topParent
					// linkin klikkaus (parametrina topParentLayerId --> korostusta varten)
					strMouseClick = com_Path + 'LinkClickEvent(' + objMenu.levelCoord[qw][intactivid].topParent + ',\'' +objMenu.level_array[qw][xid].id+ '\'); ';
					
					
					strMouseOut = '';
					
					
					strMouseOverTd = 'this.className=\'' +objMenu.cellId+ '_menutdactive' + intClassLevel + '\'; ';
					strMouseOutTd = 'this.className=\'' +objMenu.cellId+ '_menutd' + intClassLevel + '\'; ';

					strMouseOverTxt = ' return true; ';
					strMouseOutTxt = com_Path + 'SystemView(\'\'); return true; ';
					
					
					strMouseClickTd = '';
					// SystemView(''); return true
					
					if (trim(objMenu.level_array[qw][xid].scr_onmouseoverissa)!='')
					{	// on alatasoja 
						
						strChildMenuImage = objMenu.strImgChildLevelBoxTag;
						// event Mouseoverille (alatason paljastus)
						strMouseOver = com_Path + objMenu.level_array[qw][xid].scr_onmouseoverissa + ',\'' + objMenu.level_array[qw][xid].linkin_teksti_2 + '\'); ';;
					
					
					}
					else
					{	// ei alatasoja 
						
						strChildMenuImage = '';
						
						// event Mouseoverille (kaikkien alempien tasojen  ja muiden samantason piilotus)
						 strMouseOver = com_Path + 'MoveLevel(' + qw + ',' + intactivid + ',\'' + objMenu.level_array[qw][xid].linkin_teksti_2 + '\'); '
						//strMouseOver = com_Path + 'MoveLevel(' + qw + '); ';
					}
					
					// mika pajarinen, 22.1.2004, pilkkuviiva
					strHtml+=dotHtml;
					
					// itse tr
					strHtml+='<tr>';
						// TD

						strHtml+='<td ';						
						// leveytta voitaisiin tarkkailla
						strHtml+='width="' + objMenu.levelLengths_values[qw] + '" ';
						
						// td background image (childmenus )
						// strChildMenuImage
						strHtml+=((strChildMenuImage.length)? 'background="' + strChildMenuImage + '" ':'');
						
						// eritasoilla voisi olla omat stylet , myos omat mouseover vaihdokset
						strHtml += 'class="' +objMenu.cellId+ '_menutd' + intClassLevel + '" ';
						if (!(brQ9.vs=="4" && brQ9.na=="net"))
						{
							// td event muilla kuin ns:lla 
							
							//if (strMouseClickTd.length)
							//	strHtml+=' onClick="' + strMouseClickTd + '" ';
						
							// highlightBackground(this) seka (MoveLevel tai Showlevel )
							strHtml+='onMouseOver="' + strMouseOverTd + strMouseOver +  '" ';
						
							// darkenBackground(this) SystemView
							strHtml+='onMouseOut="' + strMouseOutTd + strMouseOutTxt +  '" ';
					    }
						strHtml+='>';
						
						// LINK TAG
						if (brQ9.na=="ie")
						{
							strHtml+='<A ';
							strHtml+='HREF="' + objMenu.level_array[qw][xid].href + '" ';
							strHtml+='TARGET="' + objMenu.level_array[qw][xid].target + '" ';
							// LinkClickEvent() 
							strHtml+=' class="' +objMenu.cellId+ '_valikkoLinkType" ';
							// pitaisiko toppiin menevilta linkeilta jattaa pois ??
							strHtml+='onClick="' + strMouseClick + '" ';
							// (MoveLevel tai Showlevel ) SystemView('')
							strHtml+='onMouseOver="' +  strMouseOver + strMouseOverTxt + '" ';
							//strHtml+='onMouseOver="' +  strMouseOver  + '" ';
							//  SystemView('')
							strHtml+='onmouseout="' +  strMouseOutTxt + '" ';
							strHtml+='>';

							strHtml+='<span style="width:100%;cursor:hand;">';
							
							//strHtml+=strChildMenuImage;
							
							//LINK TEXT
							strHtml+=objMenu.level_array[qw][xid].linkin_teksti + ((strChildMenuImage.length)?'&nbsp;<img align="bottom" src="/layout/tamfelt/images/alamenu.gif" width="7" height="9" border="0" alt="">':'') + '</a>';

							strHtml+='<br clear="all"></span>';	
							
							// BLANK GIFFI TASAAMAAN
							strHtml+='<img width="' + objMenu.levelLengths_values[qw] + '" height="1" src="' + objMenu.strImgBlankSrc + '" border="0">';
	

						}
						else	
						{
								
							//strHtml+=strChildMenuImage;
							strHtml+='<A class="' +objMenu.cellId+ '_valikkoLinkType" ';
							strHtml+='HREF="' + objMenu.level_array[qw][xid].href + '" ';
							strHtml+='TARGET="' + objMenu.level_array[qw][xid].target + '" ';
							// LinkClickEvent() 
							// pitaisiko toppiin menevilta linkeilta jattaa pois ??
							strHtml+='onClick="' + strMouseClick + '" ';
							// (MoveLevel tai Showlevel ) SystemView('')
							strHtml+='onMouseOver="' +  strMouseOver + strMouseOverTxt + '" ';
							//strHtml+='onMouseOver="' +  strMouseOver +  '" ';
							//  SystemView('')
							strHtml+='onmouseout="' +  strMouseOutTxt + '" ';
							strHtml+='>';
	
							//LINK TEXT
							// strHtml+=objMenu.level_array[qw][xid].linkin_teksti + '&nbsp;</a>';
							strHtml+=objMenu.level_array[qw][xid].linkin_teksti + ((strChildMenuImage.length)?'&nbsp;<img align="bottom" src="/layout/tamfelt/images/alamenu.gif" width="7" height="9" border="0" alt="">':'') + '</a>';

							// BLANK GIFFI TASAAMAAN
							strHtml+='<br clear="all">';
							strHtml+='<img width="' + objMenu.levelLengths_values[qw] + '" height="1" src="' + objMenu.strImgBlankSrc + '" border="0">';
							
						}
													
						strHtml+='</td>';						
					strHtml+='</tr>';	
					
					// mika pajarinen, 22.1.2004, pilkkuviiva
					 dotHtml='<tr><td style="padding: 0px 0px 0px 0px;" bgcolor="#D8D8DA" background="/layout/commonimages/pilkkuviiva2.gif" width="100%" height="1"></td></tr>';						
					
				}
				
				if (intactivid!=-1)
				{	// ei eka kerta, kerays oli siis  kaynnissa,
					// tallennetaan edellisen layerin html
					strHtml+= objMenu.strHtmlDivEnd;
					strHtml+=strLayerTg2;
					//objMenu.level_array[qw][intactivid].html = strHtml;
					// mac ie bug fix
					if (brQ9.na=='ie' && brQ9.mac)
					{
						strHtml = mreplace(strHtml,'</td>', '</TD>'+ lf);
						strHtml = mreplace(strHtml,'</tr>','</TR>'+lf);
						strHtml = mreplace(strHtml,'</table>','</TABLE>'+lf);
						strHtml = mreplace(strHtml,'</span>','</SPAN>'+lf);
						strHtml = mreplace(strHtml,'<br clear="all">','<BR CLEAR="ALL">'+lf);				
					
					}
					
					objMenu.levelCoord[qw][intactivid].html = strHtml;
				}
			
				// END tasolla linkkeja seka layereita
			}
			// END kaydaan jokainen ..
		}
	
		//var win= window.open();
		//win.document.write(objMenu.levelCoord[1][0].html);
		//	alert(objMenu.levelCoord[1][0].html);
		//	alert(objMenu.levelCoord[1].length);

		

}	

this._layers = objMenu.levelCoord;


objMenu = null;
}








function obj_G2MenuIe( itemref , strMenu )
{
	var able = false;
	var objMenu = eval( strMenu );
	
	
	if( objMenu && objMenu.brQ9.vs.length>0 && objMenu.brQ9.na.length>0 )   
	{

		// Selain ok 
	
		//menu objektin nimi
		this["conf_menuref"] = strMenu;
		
		
			// objektin tunniste kutsuille (luotavan objektin nimi)
		this["conf_itemref"] = itemref;
			// objektin komentopolku top to header
		//var x = getFramePath();
		this["conf_refPathBase"] = '';
		
		// POLKU LAYERIEN JUUREEN (kyseiseen frameen)
		this["conf_refPathTargetTxT"] = '';
		
		//  tahan headerin div:in nimi
		this["conf_refPathHeaderDiv"] = '';
		
		// for layers data
		this["layerSettings"] = null;

		// laskennalliset koordinaatit (kokovalikon sijoitteluun topissa)	
		// tata siis kaytetaan jos halutaan alkavaksi esim hieman kauempana reunasta
		//this["x-coordRef"] = eval(objMenu.strWinCoordXMethod) + ((objMenu.brQ9.vs=="4" && objMenu.brQ9.na=="net") ? 7 : 0);
		this["x-coordRef"] = eval(objMenu.strWinCoordXMethod);
		this["y-coordRef"] =  eval(objMenu.strWinCoordYMethod);

//================================================================ 
//== table layout on window resize fix, mika pajarinen , 17.9.2003
		this["x-coordRef_txt"] = objMenu.strWinCoordXMethod
		this["y-coordRef_txt"] =  objMenu.strWinCoordYMethod
//================================================================ 

		// relative scroll fix (JUST Y)
		this["y-coordRefFix"] = 0;
		
		// target body length
		this["x-target_body_length"] = 0;
		
		// relative scroll fix (JUST Y)
		//this["y-coordRefFix"] = 0;
		
		// timeout variable  (valikkojen piilotus timeout id)
		this["timeout"] = 0;
		
		// timeout setting (montako millisekuntia ennekuin layerit piiloon, kun kayttaja on vienyt hiiren pois divin paalta) 
		this["conf_timeout"] = 500;
		
		// aktiivinen paatoson elementti 1 tason id
		this["conf_activeTopParent"] = -1;
	
		// kaytetaanko klikatun paaryhman korostusta headerissa
		this["conf_SettingHeaderBold"] = objMenu.SettingHeaderBold;

		// 	VALIKON TYYPPI
		this["intConfLayeSelectType"]  = objMenu.intConfLayeSelectType;
		
			// 'indent'-valikon sisennys pikselia
			this["headerLinkIndentSetting"] = objMenu.headerLinkIndentSetting;
// mika pajarinen , 31.5.2004, mouseoverefekti  / tamfelt 
/* EI KÄYTÖSSÄ
			// tamfelt kustomointi
	  menuSettingBoldLanguage =  objMenu.html_language;
*/
	  

		if( this["intConfLayeSelectType"].length )
			{
				this["layerSettings"]= new SysParseDataCOnfiq(this["conf_refPathBase"] + this["conf_itemref"] + '.', this["conf_timeout"] , strMenu );
				//alert(this["layerSettings"]._layers[1][0].html)
			
			
					//asetetaan valikon otsikko valituksi
				if( objMenu.activeclicked ){
					for( qw = 1; qw <= objMenu.LevelMaxHandleCOunt ; qw++ ){	
						if( objMenu.level_array[qw].length &&  objMenu.levelCoord[qw].length ){
							
							for( xid = 0; xid < objMenu.level_array[qw].length ; xid++ ){
								if( objMenu.level_array[qw][xid].id==objMenu.activeclicked ){
									var intIndex = objMenu.level_array[qw][xid].layerId;
									this["conf_activeTopParent"]=objMenu.levelCoord[qw][intIndex].topParent;
									}
								}
									
							}
						}
					}	
			
			
				if (this["layerSettings"]._layers[1].length) 
				{
					// vahintaa 1 kpl 1 tason layereita, objekti voidaan enabloida
					able = true; 
				}
			}
			
			
			/////////////////////////////////////////	
			//  callTimer (kutsuu timeria, enabloi, disabloi valikon piilotuksen)
			this.callTimer = CLASS_callTimer;
			/////////////////////////////////////////
			
			/////////////////////////////////////////	
			//  ShowLevel (naytaa, piilottaa tasoja)
			this.ShowLevel = CLASS_ShowLevel;
			/////////////////////////////////////////
					
			/////////////////////////////////////////	
			//  MoveLevel (liikuttaa alatasotonta linkkia, piilottaa muut alatasot)
			this.MoveLevel = CLASS_MoveLevel;
			/////////////////////////////////////////
			
			/////////////////////////////////////////	
			//  LinkClickEvent (piilottaa valikot linkin klikkauksen yhteydessa)
			this.LinkClickEvent = CLASS_LinkClickEvent;
			/////////////////////////////////////////
				
			/////////////////////////////////////////	
			//  SystemView 
			this.SystemView = CLASS_SystemView;
			/////////////////////////////////////////
				
			/////////////////////////////////////////	
			//  updateControlLinks	(piirtaa headerin linkit)
			this.updateControlLinks = CLASS_updateControlLinks;
			/////////////////////////////////////////
			
			/////////////////////////////////////////	
			//  getControlHtml	(kokoaa controlpanelin html:n)
			this.getControlHtml = CLASS_getControlHtml;
			/////////////////////////////////////////
			
			/////////////////////////////////////////	
			//  checkObjVality	(tarkistaa objektin kelpoisuuden)
			this.checkObjVality = CLASS_checkObjVality;
			/////////////////////////////////////////
	
			/////////////////////////////////////////	
			//  setObjVIsibility	vaihtaa objektin nakyvyyden
			this.setObjVIsibility = CLASS_setObjVIsibility;
			/////////////////////////////////////////
	
			//////////////////////////////////////////
			//  checkObjValityLight	(tarkistaa objektin kelpoisuuden ok broser + dataa, ei ota kantaa objektin tilaan)
			this.checkObjValityLight = CLASS_checkObjValityLight;
			/////////////////////////////////////////
			
			/////////////////////////////////////////	
			//  drawControlBox	(piirtaa controlbox:in (ylahedari))
			this.drawControlBox = CLASS_drawControlBox;
			/////////////////////////////////////////
			
			//////////////////////////////////////////
			//  InstalSelects	(asentaa valikot keskiframeen)
			this.InstalSelects = CLASS_InstalSelects;
			/////////////////////////////////////////
			
			//////////////////////////////////////////
			//  UnInstalNaviObj	( uninstalloi navigaatio objektin )
			this.UnInstalNaviObj = CLASS_UnInstalNaviObj;
			/////////////////////////////////////////
	
			//////////////////////////////////////////
			//  handleDiv	( asettaa html:n diviin, siirtaa paikkaa )
			this.handleDiv = CLASS_handleDiv;
			/////////////////////////////////////////
			
			//////////////////////////////////////////
			//  instalAllDivs	( asettaa paoikoilleen ja tulostaa html:n diveihin )
			this.instalAllDivs = CLASS_instalAllDivs;
			/////////////////////////////////////////
			
			//////////////////////////////////////////
			//  getRelativePositions( hakee paivitetyn tiedon kohdeframen suhteellisesta sijainnista )
			 this.getRelativePositions = CLASS_getRelativePositions;
			/////////////////////////////////////////
			
			//////////////////////////////////////////
			//  updateLocations( paivittaa itemeitten sijainnnit )
			this.updateLocations = CLASS_updateLocations;
			/////////////////////////////////////////

			//////////////////////////////////////////
			//  defineLayerPositions( maarittaa layereitten sijainnnit )
			this.defineLayerPositions = CLASS_defineLayerPositions;
			/////////////////////////////////////////

			// 8.9.2003, timeoutkorjaus (taulukkoleiska)	
			//////////////////////////////////////////
			//  korjaa valikoiden jumituksen
			this.MoveTotal = CLASS_MoveTotal;
			/////////////////////////////////////////
			
			// 18.9.2003, lopetustoiminnot
			//////////////////////////////////////////
			//  vapautetaan muisti
			this.doExit = CLASS_doExit;
			/////////////////////////////////////////
			
			
			// mika pajarinen , 31.5.2004, mouseoverefekti  / tamfelt 
			// tamfelt kustomointi
			//////////////////////////////////////////
			//  handleImg	( vaihtaa hedarin kuvan, mouseover efekti )
			/* EI KÄYTÖSSÄ
			this.handleImg = CLASS_handleImg;
			*/
			/////////////////////////////////////////
				//////////////////////////////////////////
			//  CLASS_StaticMouseOver	 
			this.StaticMouseOver = CLASS_StaticMouseOver;
			/////////////////////////////////////////
			CLASS_StaticMouseOver
			
		 	//document.write('onresize = doresizeActions(\''+this["conf_itemref"]+'\');');
		//		this["conf_itemref"]
			// (this["conf_itemref"]+'.checkLocations()
			

	}

	// onko itemi aktiivinen
	// selain on OK, itemeitakin on mita kasitella, ottaa vastaan referensseja jne ...
	this["conf_vality"] = able;
	
	// onko saanut toimintapolut keskiframesta 
	this["conf_isMapped"] = false;
	
	// onko aktiivinen ottamaan kaskyja liittyen layereihin, nayta, piilota
	this["conf_state"] = false;
	
	
	objMenu = null;
}

	


//////////////////////////////////////////////////////////////////////////
// CLASS_callTimer 

function 	CLASS_callTimer(time)
{
	// jos 0 , niin peruutus 
	// jos > 0 niin kaikki piiloon sen kuluttua  
		// this["timeout"] = 0;			

	
	if (this["conf_vality"] && this["conf_state"] && this["conf_isMapped"])
		{
			// aktiivi kaytossa 
			if (!time)
			{	
				// timeout peruutus (mousecursor on entered td area)
				clearTimeout(this["timeout"]);
			}
			else
			{
				// timeout asetetaan (mousecursor on exited td area)			
				 this["timeout"] = setTimeout(this["conf_itemref"] + '.ShowLevel(-1,-1,false,\'\');',this["conf_timeout"]);							
			}	
		}
	
}
			
// END CLASS_callTimer
//////////////////////////////////////////////////////////////////////////






// mika pajarinen , 10.03.2004, menujen sijoitteluun liittyvä virhe korjattu 
// sijaintien määritys seuraavassa functiossa
//////////////////////////////////////////////////////////////////////////
// CLASS_getRelativePositions 

function 	CLASS_getRelativePositions()
{

	// getRelativePositions( hakee paivitetyn tiedon kohdeframen suhteellisesta sijainnista )
	// seka kohdeframen leveyden
	// tallettaa tiedot objektin kayttoon (Y coordinaatti (sivun ylareuna))
	

	if (this["conf_vality"])
		{
			//================================================================ 
			//== table layout on window resize fix, mika pajarinen , 17.9.2003
			this["x-coordRef"] = eval(this["x-coordRef_txt"]);
			this["y-coordRef"] =  eval(this["y-coordRef_txt"] );
			//================================================================
		
			if (brQ9.vs=="4" && brQ9.na=="net")
			{ 
				//this["y-coordRefFix"] = eval(this["conf_refPathTargetTxT"] + 'pageYOffset');
				this["y-coordRefFix"] = 0;
				this["x-target_body_length"] = eval(this["conf_refPathTargetTxT"] + 'innerWidth');
			}
			else if (brQ9.na=="ie")
			{
				//this["y-coordRefFix"] = eval(this["conf_refPathTargetTxT"] + 'document.body.scrollTop');
				this["y-coordRefFix"] = 0;
				this["x-target_body_length"] = eval(this["conf_refPathTargetTxT"] + 'document.body.offsetWidth');
			
			}	
			else if (brQ9.vs=="6" && brQ9.na=="net")
			{
				//this["y-coordRefFix"] = eval(this["conf_refPathTargetTxT"] + 'pageYOffset');
				this["y-coordRefFix"] = 0;
				this["x-target_body_length"] = eval(this["conf_refPathTargetTxT"] + 'innerWidth');
			}	
		}
	
	
}
			
// END CLASS_getRelativePositions
//////////////////////////////////////////////////////////////////////////





//////////////////////////////////////////////////////////////////////////
// CLASS_instalAllDivs 

function 	CLASS_instalAllDivs()
{

	// tulostaa html:t diveihin ja asettelee paikoilleen
	var blnBack = false;
	var strHtml = '';
	var qw, lName, xid, top, left;	
	
	var objMenu = eval( this["conf_menuref"] );
	

	for (qw = 1; qw < this["layerSettings"]._layers.length ; qw++)
		{
			if (this["layerSettings"]._layers[qw].length)
			{	// tasolla layereita

				for (xid = 0; xid < this["layerSettings"]._layers[qw].length ; xid++)	
					{
						lName = objMenu.cellId + '_layer' + qw + 'x' + xid;
						
						top= (this["y-coordRef"] + this["y-coordRefFix"] +  this["layerSettings"]._layers[qw][xid].yy);
						left= (this["x-coordRef"] + this["layerSettings"]._layers[qw][xid].xx);
						strHtml = this["layerSettings"]._layers[qw][xid].html;							
			
								
						// merkataan divin name
						this["layerSettings"]._layers[qw][xid].layerName = lName;
						
						this.handleDiv(this["conf_refPathTargetTxT"], lName, strHtml, top, left);
						
						}
						blnBack = true;
			}
			else
			{
				// jos jollain tasolla 1, 2 jne 
				// ei ole layereita, niin ei ole seuraavillakaan / ei laiteta
				break;
							
			}
		}


	objMenu = null;
	

	return blnBack;
}
			
// END CLASS_instalAllDivs
//////////////////////////////////////////////////////////////////////////



//////////////////////////////////////////////////////////////////////////
// CLASS_updateLocations 

function 	CLASS_updateLocations()
{
 
	//  paivittaa suhteellisen sijainnin ja paivittaa divien sijainnit 

	if (this["conf_vality"])
		{
			this.getRelativePositions();
			
			var qw, top, left;
			for (qw = 1; qw < this["layerSettings"]._layers.length ; qw++)
				{
					if (this["layerSettings"]._layers[qw].length)
					{	// tasolla layereita
										
						for (xid = 0; xid < this["layerSettings"]._layers[qw].length ; xid++)	
							{
								//top= (this["y-coordRef"] + this["y-coordRefFix"] +  this["layerSettings"]._layers[qw][xid].yy);
								// mika pajarinen , 18.9.2003
								// taulukkoleiskassa ei korjata y- akselin  scrollausta
								top= -1;
								//left = -1;
								//================================================================ 
								//== table layout on window resize fix, mika pajarinen , 17.9.2003
								left = (this["x-coordRef"] + this["layerSettings"]._layers[qw][xid].xx);
								//================================================================
								this.handleDiv(this["conf_refPathTargetTxT"], this["layerSettings"]._layers[qw][xid].layerName, '', top, left);
							}
					}
					else
					{
						// jos jollain tasolla 1, 2 jne 
						// ei ole layereita, niin ei ole seuraavillakaan / ei laiteta
						break;
					}
				}	
		}
	
	
}
			
// END CLASS_updateLocations
//////////////////////////////////////////////////////////////////////////



//////////////////////////////////////////////////////////////////////////
// CLASS_ShowLevel 

function 	CLASS_ShowLevel(level,layer,type,wtxt)
{
	// level: taso josta kasitellaan 1 .. n
	// 		kasitellaan kutsuttava taso ja siita alemmat tasot
	// layer: joka naytetaan (jos kaikki piiloon niin esim -1) 
	// type: true (header kutsuu 1 taso, talloin asetetaan sijainnit kohdalleen)
	//		false (joku muu, sijainteihin ei kosketa)		
		// ESIM :  1 taso kasitellaan 1 to max
		//		 2 taso kasitellaan 2 to max 
		// .alert('ShowLevel ' + level + '  ' + layer );
		// .showlevel(-1,-1,false) (kaikki piiloon )
		// .ShowLevel([taso][layerid]);	

	// wtxt window status text	
	
	
	if (this["conf_vality"] && this["conf_state"] && this["conf_isMapped"])
		{
			// 8.9.2003, timeoutkorjaus (taulukkoleiska)
			if (this["conf_timeout"])
			{
				this.callTimer(0);
			}
			// 
		
			if (level==1 && layer!=-1 && type)
			{
				
				// mika pajarinen , 31.5.2004, mouseoverefekti  / tamfelt 
				// tamfelt kustomointi
				/* EI KÄYTÖSSÄ
				if (intActiveTopMenuLayer!=-100)
					this.handleImg(this["conf_refPathBase"],intActiveTopMenuLayer,''); 
				intActiveTopMenuLayer = layer;
				this.handleImg(this["conf_refPathBase"],layer,'b');
				*/
				
				
				// ykkostason toiminto ja ei piilotus ja type, joten  (oletuksena)
				// kutsu tulee siis headerilta 
				// suoritetaan  itemeitten paikoitus operaatio
				this.updateLocations();
				
				// selectin piilotus, tamfelt kustomointi, mika pajarinen, 03.06.2004	
				/* EI KÄYTÖSSÄ 
				if (blnHasFlashObject) 
					handleDiv('','elcoProdFlash','', -1, -1, 0);
				*/	
			}
			
			// mika pajarinen , 31.5.2004, mouseoverefekti  / tamfelt 
			// tamfelt kustomointi
			/* EI KÄYTÖSSÄ
			if (level==-1 && layer==-1)
				if (intActiveTopMenuLayer!=-100)
					this.handleImg(this["conf_refPathBase"],intActiveTopMenuLayer,''); 
			*/		
			
			var qw, xid, ability;
			for (qw = 1; qw < this["layerSettings"]._layers.length  ; qw++)
			{	
				if (qw>=level)
					{
						// level sama tai suurempi  , taso kasitellaan lapi
						if (this["layerSettings"]._layers[qw].length)
							{	// tasolla layereita
								for (xid = 0; xid < this["layerSettings"]._layers[qw].length ; xid++)	
									{
										if (layer==xid && qw==level)
										{	
											// naytettava layer ja kasiteltava taso 
											// naytetaan
											//alert('nakyviin');
											ability = true;
										}	
										else
										{	// muut piilotetaan
											ability = false;
										}

										// varsinainen toiminto 
										//alert(this["conf_refPathTargetTxT"] + 'all("'+ this["layerSettings"]._layers[qw][xid].layerName +'").style.display = \'' + ability + '\'');
										
										this.setObjVIsibility(this["conf_refPathTargetTxT"],this["layerSettings"]._layers[qw][xid].layerName, ability, true);		
										//eval(this["conf_refPathTargetTxT"] + 'all("'+ this["layerSettings"]._layers[qw][xid].layerName +'").style.display = \'' + ability + '\'');
									}
							}
					}	
			}	
			
			
			
			// ==============================================================	
			// selectin piilotus, tamfelt kustomointi, mika pajarinen, 03.06.2004
			/* EI KÄYTÖSSÄ
			if (level==-1 && layer==-1)
			{
				if (blnHasFlashObject) 
				 handleDiv('','elcoProdFlash','', -1, -1, 1);
			}
			// ==============================================================	
			*/
			
			
			
			
			
			
			
			
			
			
			// window status
			if (!type && layer!=-1 && type!=-1)	
			{	
				// not header and not totalhide	
				this.SystemView(wtxt);
			}		
		}
}
			
// END CLASS_ShowLevel
//////////////////////////////////////////////////////////////////////////

	
	
//////////////////////////////////////////////////////////////////////////
// CLASS_MoveLevel 

function 	CLASS_MoveLevel(level, layer,wtxt)
{
	// 	 piilotetaan kaikki oman levelin muut layerit (paitsi itsemme) ja alempien tasojen kaikki layerit
	// 	.MoveLevel([level], ]}[omaid])

	if (this["conf_vality"] && this["conf_state"] && this["conf_isMapped"])
		{
			// eli kutsutaan piilotusta kaikille muille samantasoisille layereille
			//  ja kaikille alemman tason linkeille 
			this.ShowLevel(level,layer,false,wtxt)
		}
}

// END CLASS_MoveLevel
//////////////////////////////////////////////////////////////////////////


			

// 8.9.2003, timeoutkorjaus (taulukkoleiska)
//////////////////////////////////////////////////////////////////////////
// CLASS_MoveTotal 
			// mika pajarinen , 31.5.2004, mouseoverefekti  / tamfelt 
			// tamfelt kustomointi
function 	CLASS_MoveTotal(layer)
{
	// pistaa kaikki menut piiloon , jos hiirta ei vieda ennen yleisen timeoutin kulumista layerin paalle

	if (this["conf_vality"] && this["conf_state"] && this["conf_isMapped"])
		{
						// mika pajarinen , 31.5.2004, mouseoverefekti  / tamfelt 
			// tamfelt kustomointi
			// this.handleImg(this["conf_refPathBase"],layer,'');
			
			this.callTimer(this["conf_timeout"]);
 
		}
}

// END CLASS_MoveTotal
//////////////////////////////////////////////////////////////////////////



			// mika pajarinen , 31.5.2004, mouseoverefekti  / tamfelt 
			// tamfelt kustomointi	
//////////////////////////////////////////////////////////////////////////
// CLASS_handleImg 

function 	CLASS_handleImg(path,count,action)
{
	// insertoi html:n diviin
	// HUOM: jos top <>-1 siirto kordinaattiin
	// HUOM: jos left <>-1 siirto kordinaattiin
	// HUOM: jos html <>'' niin html:n tulostus
	var txt= '';


	if (this["conf_vality"])
	{	
		 
		document.images['mOverImg'+(count+2)].src = imgExtraPath+'hl_0'+(count+2)+action+'_'+menuSettingBoldLanguage +'.gif';
	}	
		
}		
	
// END CLASS_handleImg
//////////////////////////////////////////////////////////////////////////
		
		
				
			
//////////////////////////////////////////////////////////////////////////
// CLASS_LinkClickEvent 
			
function 	CLASS_LinkClickEvent(tpid,linkid)
{
	
	// suorittaa linkin klikkauksen jalkeisen valikoitten piilotuksen
	// linkkia klikattiin 
	// kaikki piiloon (showlevel(-1,-1,false))
	// alert('LinkClickEvent');
	// parametrina tpid (topParentLayerid -->  korostetaan)
	// parametrina linkid (yksittaisen linkin id -->  activeclicked menu-objektissa)
	
	if (this["conf_vality"] && this["conf_state"] && this["conf_isMapped"])
	{
		// kaikki piiloon 
		// timeoutti, jotta klikkaus kerkiaa irroittaa otteen klikatusta layerista
		setTimeout(this["conf_itemref"] + '.ShowLevel(-1,-1,false,\'\');',100);
		
	
			// paivitetaan menu-objektin activeclicked-muuttujaa (blank -linkin takia)
		if( eval(this["conf_menuref"]) ){
			eval( this["conf_menuref"]+ '.activeclicked=linkid' );
			}
		
		
		if (this["conf_SettingHeaderBold"])
		{
			// paivitetaan headerin linkit (korostus)
			this.updateControlLinks(tpid);		
		}
	}
}	
				
// END CLASS_LinkClickEvent
//////////////////////////////////////////////////////////////////////////
	

			
//////////////////////////////////////////////////////////////////////////
// CLASS_SystemView 
			
function 	CLASS_SystemView(txt)
{
	if (this["conf_vality"] && this["conf_state"] && this["conf_isMapped"])
		{
			window.status = txt;
		}
}	
				
// END CLASS_SystemView
//////////////////////////////////////////////////////////////////////////




//////////////////////////////////////////////////////////////////////////
// CLASS_updateControlLinks 

function 	CLASS_updateControlLinks(tpid)
{
	// paivittaa kontrollipanelin (header) (korostaa parametrina tulleen ryhman / paatason)
	// tulee eventtina kun jotain linkkia klikataan (ennen tata kaikki valikot piilotetu)
	
	if (this["conf_vality"] && this["conf_state"] && this["conf_isMapped"])
	{
	
		if (this["conf_activeTopParent"]!=tpid)
			{	
				// ryhma on vaihtunut, piirto uudestaan 
				this["conf_activeTopParent"] = tpid; 
				
				if (this["conf_refPathHeaderDiv"])
				{
						// piirretaan uusiksi header
					this.handleDiv(this["conf_refPathBase"], this["conf_refPathHeaderDiv"], this.getControlHtml(), -1, -1);					
				}
			}
	}	
					
}		
	
// END CLASS_updateControlLinks
//////////////////////////////////////////////////////////////////////////
				



//////////////////////////////////////////////////////////////////////////
// CLASS_handleDiv 

function 	CLASS_handleDiv(path,obj,html, top, left)
{
	// insertoi html:n diviin
	// HUOM: jos top <>-1 siirto kordinaattiin
	// HUOM: jos left <>-1 siirto kordinaattiin
	// HUOM: jos html <>'' niin html:n tulostus
	var txt= '';


	if (this["conf_vality"])
	{	
		if (brQ9.vs=="4" && brQ9.na=="net")
		{
			txt= path+ 'document.layers["' + obj + '"]';
			
			dom = 	eval(txt);
			
			if (dom)
			{
				if (top!=-1)
					{
						dom.top = top;
					}	
				if (left!=-1)
					{
						dom.left = left;
					}
				if (html)	
				{
					dom.document.open();
					dom.document.write(html);
					dom.document.close();
				}	
				dom = null;
			}	
			
		}
		else if (brQ9.na=="ie")
		{
			 txt= path+ 'document.all.' + obj;
			 dom = 	eval(txt);
			 if (dom)
			 {
			 	if (top!=-1)
					{
						dom.style.pixelTop = top;
					}	
				if (left!=-1)
					{
						dom.style.pixelLeft= left;
					}
			 	
				if (html)	
				{	
			 		dom.innerHTML= html;
				}	
				dom = null;
			 }	
		}	
		else if (brQ9.vs=="6" && brQ9.na=="net")
		{
			 txt= path+ 'document.getElementById("' + obj + '")';
			 dom = 	eval(txt);
			
			 if (dom)
			 {
			 		
			 	if (top!=-1)
					{
						dom.style.top= top;
					}	
				if (left!=-1)
					{
						dom.style.left= left;
					}
				if (html)	
				{	
			 		dom.innerHTML= html;
				}	
				dom = null;
			}	
			 
		}	
		
		
	}	
		
}		
	
// END CLASS_handleDiv
//////////////////////////////////////////////////////////////////////////
				



//////////////////////////////////////////////////////////////////////////
// CLASS_setObjVIsibility 

//function 	CLASS_setObjVIsibility(act)
function 	CLASS_setObjVIsibility(path,obj,act,useDisplay)
{
	// path: polku jossa obj
	// obj: joka vaihdetaan 
	// act: nakyviin (true), piiloon (false)
	// useDisplay: jos kyseessa IE-selain (kaytetaanka display (true), visibility (false) atribuutia)
	//  vaihtaa objektin nakyvyyden
	
	
	if (this["conf_vality"] && obj)
	{
		var style;
		if (brQ9.vs=="4" && brQ9.na=="net")
		{
			style=act ? 'visible': 'hidden';
			eval(path + 'document.layers["' + obj + '"].visibility=\'' + style + '\'');
		}
		else if (brQ9.na=="ie")
		{
				var ref; 
				if (useDisplay)
					{ 
						style=act ? 'block' : 'none';  
						ref = 'display';
					}
				else
					{ 
						style=act ? 'visible' : 'hidden'; 
					 	ref = 'visibility'; 
					 }
					 
				eval(path + 'document.all.' + obj + '.style.' + ref + '=\'' + style + '\'');
			
		}	
		else if (brQ9.vs=="6" && brQ9.na=="net")
		{
			style=act ? 'visible': 'hidden';
			eval(path + 'document.getElementById("' + obj + '").style.visibility=\'' + style + '\'');
			//alert(eval(path + 'document.getElementById("' + obj + '").style.visibility'));
		}	
		
	}	
	
	
					
}		
	
// END CLASS_setObjVIsibility
//////////////////////////////////////////////////////////////////////////
		



//////////////////////////////////////////////////////////////////////////
// CLASS_getControlHtml 

function 	CLASS_getControlHtml()
{
	// kokoaa controlpanelin html:n 
	// mahdolliset korostukset tehtava ennen kutsua 	
	// palauttaa html:n
	var back= '', xid, rTmp, intClassIs, htmlTmp, str_com_Path, strLayerTg1, strLayerTg2;
	if (this["conf_vality"])
	{
		
		var objMenu = eval( this["conf_menuref"] );
		
		
		if (this["layerSettings"]._layers[1].length)
		{	
			// tasolla layereita (1 level)
			
			back+= objMenu.html_control_b;

// SettingUseGroupColoring %% 
// 'menutdactive' + intClassLevel + '\'; ';
// strMouseOutTd = 'this.className=\'menutd' + intClassLevel + '\'; ';			

			rTmp = this["conf_itemref"];
			
			for (xid = 0; xid < this["layerSettings"]._layers[1].length ; xid++)	
				{
					//intClassIs = ((objMenu.SettingUseGroupColoring) ? objMenu.cellId+'_menutd' + ((this["conf_activeTopParent"]==xid) ? 'active' : '') + (xid+1) : ((this["conf_activeTopParent"]==xid) ? objMenu.cellId+'_HeaderValikkoLinkTypeActive' : objMenu.cellId+'_HeaderValikkoLinkType'));
					
					// html norlaalisti
					htmlTmp = eval( this["conf_menuref"]+'.html_control_part' + ((this["conf_activeTopParent"]==xid) ? '_active' : '') + '_b');
					
					if (objMenu.SettingUseGroupColoring)
					{
						// ryhmittain, korvataan alkuperaiset, tasoittaisilla
						// EI AKTIIVISESSA KAYTOSSA
						// 
						if( htmlTmp.search('CLASS="'+objMenu.cellId+'_Headermenutd"')>-1  )
							htmlTmp=htmlTmp.replace( 'CLASS="'+objMenu.cellId+'_Headermenutd"' , 'CLASS="'+objMenu.cellId+'_menutd' + ((this["conf_activeTopParent"]==xid) ? 'active' : '') + (xid+1) +'"' );
						if( htmlTmp.search('CLASS="'+objMenu.cellId+'_Headermenutdactive"')>-1 )
							htmlTmp=htmlTmp.replace( 'CLASS="'+objMenu.cellId+'_Headermenutdactive"' , objMenu.cellId+'_menutd' + ((this["conf_activeTopParent"]==xid) ? 'active' : '') + (xid+1) +'"');
									
					}
					
					back+= htmlTmp;
 // tamfelt kustomointi
					back+='<a href="javascript:launchprt(\''+arrPrtIdArray[xid]+'\');" ';

					//back+= ' class="' + intClassIs + '"';
					//back+= ' class="' + ((this["conf_activeTopParent"]==xid) ? 'HeaderValikkoLinkTypeActive' : 'HeaderValikkoLinkType') + '"';
					back += ' class="' + objMenu.cellId + '_';
					back += ((this["conf_activeTopParent"]==xid) ? 'HeaderValikkoLinkTypeActive' : 'HeaderValikkoLinkType') + '"';
					

					back+=' onmouseover="' + rTmp + '.ShowLevel(1,' + xid + ',true,\'\'); ' +  rTmp + '.SystemView(\'' + this["layerSettings"]._layers[1][xid].name + '\'); return true;' +'" ';

//					back+=' onmouseout="'  +  rTmp + '.SystemView(\'\'); return true;' +'"> ';
// 8.9.2003, timeoutkorjaus (taulukkoleiska)	 				
					// mika pajarinen , 31.5.2004, mouseoverefekti  / tamfelt 
					// tamfelt kustomointi		(parametri movetotal function)	
					back+=' onmouseout="'  +  rTmp + '.SystemView(\'\'); ' + rTmp + '.MoveTotal('+xid+'); return true;' +'">';		

	
					// 					
					if (brQ9.na=="ie")		
						back+='<span style="width:100%;cursor:hand;">';
 // tamfelt kustomointi
					 back+= this["layerSettings"]._layers[1][xid].name;
 // tamfelt kustomointi
 // mika pajarinen , 31.5.2004, mouseoverefekti  / tamfelt 
					// tamfelt kustomointi		(parametri movetotal function)	
				// 	back+='<img  src="/layout/commonimages/hl_0' + (xid+2) + '_'+ objMenu.html_language+'.gif" border="0" name="mOverImg'+(xid+2)+'">';			
			 
					if (brQ9.na=="ie")		
						back+='</span>';
						
					back+='</a>';
					back+= eval( this["conf_menuref"]+'.html_control_part' + ((this["conf_activeTopParent"]==xid) ? '_active' : '') + '_e');

					// tamfelt leiskakustomointi, 4.11.2004	, mika pajarinen
					if (xid < (this["layerSettings"]._layers[1].length-1))
		 				back+= '<td width="1" align="center"><img src="/layout/tamfelt/images/dot.gif" border="0" width="1" height="10" hspace="7"></td>';
					//////////////////////////////////////////////
					
				}
			back+= objMenu.html_control_e;
			
		 
			/*var abba = window.open()
			abba.document.write(back);*/
			/*
			// ommouseover / out layer effect 
			// ei kaytossa
			
			str_com_Path = this["conf_refPathBase"] + this["conf_itemref"] + '.';
			if (brQ9.na=="net" && brQ9.vs=="4")
			{
				strLayerTg1 = '<layer visibility="inherit"  onmouseout="' + str_com_Path + 'callTimer(' + this["conf_timeout"] + ');" onmouseover="' + str_com_Path +'callTimer(0);">';
				strLayerTg2 = '</layer>';
			}
			else
			{
				strLayerTg1 = '<span   onmouseout="' + str_com_Path + 'callTimer(' + this["conf_timeout"] + ');" onmouseover="' + str_com_Path +'callTimer(0);">';
				strLayerTg2 = '</span>';
			}
			
			back = strLayerTg1 + back + strLayerTg2;
			*/
			
			
		}
		
		
		objMenu = null;	
	}	
//alert(back);
	return back;				
}		
	
// END CLASS_getControlHtml
//////////////////////////////////////////////////////////////////////////
		


			
//////////////////////////////////////////////////////////////////////////
// CLASS_checkObjVality 

function 	CLASS_checkObjVality()
{
	// palauttaa tiedon siita onko objekti ok ja toimintakykyinen (true, false)
	
	return (this["conf_vality"] && this["conf_state"] && this["conf_isMapped"]);
					
}		
	
// END CLASS_checkObjVality
//////////////////////////////////////////////////////////////////////////



//////////////////////////////////////////////////////////////////////////
// CLASS_checkObjValityLight 

function 	CLASS_checkObjValityLight()
{
	// palauttaa tiedon siita onko objekti alustettu
	// browser ok, dataa on (ei ota kantaa objektin tilaan)
	return (this["conf_vality"]);
					
}		
	
// END CLASS_checkObjValityLight
//////////////////////////////////////////////////////////////////////////



//////////////////////////////////////////////////////////////////////////
// CLASS_drawControlBox 

function 	CLASS_drawControlBox(styleName)
{
	// piirtaa ylahedarin div + linkit
	
	eval( 'var strDiv = ' + this["conf_menuref"] + '.cellId+"_naviggiDiv";' );

	if (this["conf_vality"])
		{
		
			//	document.write('<img src="/layout/default/images/blank.gif" width="100%" height="3" border="1" style=" LEFT: 1px; TOP: 1 px; POSITION: absolute; Z-INDEX: 10001; " onmouseover="setTimeout(\'' + this["conf_itemref"] + '.ShowLevel(-1,-1);\',1);">');		
				//document.write('<img src="/layout/default/images/blank.gif" width="100%" height="3" border="1" style=" LEFT: 1px; TOP: 1 px; POSITION: relative; Z-INDEX: 10001; " onmouseover="setTimeout(\'' + this["conf_itemref"] + '.ShowLevel(-1,-1);\',1);">');		

// elisa custom, pajarmik, 18.03.2003
	//	document.write('<img src="/layout/default/images/blank.gif" width="100%" height="3" border="1" style=" LEFT: 1px; TOP: 1 px; POSITION: absolute; Z-INDEX: 10001; " onmouseover="eval(\'' + this["conf_itemref"] + '.ShowLevel(-1,-1)\');">');		
	//document.write('<img src="/layout/default/images/blank.gif" width="100%" height="10" border="1" style=" LEFT: 1px; TOP: 1 px; POSITION: relative; Z-INDEX: 10001; " onmouseover="eval(\'' + this["conf_itemref"] + '.ShowLevel(-1,-1)\');">');		
		
// left
	//	document.write('<img src="/layout/default/images/blank.gif" width="4" height="10" border="0" style=" LEFT: 0px; TOP: 4 px; POSITION: absolute; Z-INDEX: 10002; " onmouseover="eval(\'' + this["conf_itemref"] + '.ShowLevel(-1,-1)\');">');		
		// right
	//	document.write('<img src="/layout/default/images/blank.gif" width="4" height="10" border="0" style=" LEFT: ' + eval('document.body.clientWidth - 6') + 'px; TOP: 4 px; POSITION: absolute; Z-INDEX: 10002; " onmouseover="eval(\'' + this["conf_itemref"] + '.ShowLevel(-1,-1)\');">');		
//				
		
	
		
		
		document.write('<div id="' +strDiv+ '" CLASS = "' + styleName + '">' +this.getControlHtml()+ '</div>');
		this["conf_refPathHeaderDiv"] = strDiv;
		
		//document.write( this.getControlHtml() );
		//this["conf_refPathHeaderDiv"] = '';
		}
	
}		
	
// END CLASS_drawControlBox
//////////////////////////////////////////////////////////////////////////



			



//////////////////////////////////////////////////////////////////////////
// CLASS_defineLayerPositions 

function 	CLASS_defineLayerPositions()
{
	// maarittelee x-koordinaatit linkkien piirtoon 
	// y:t asetellaan sellaisenaan
	// tama suoritetaan vain objektin alustuksen yhteydessa
	// sijainti 0,0 (paikoilleen laitossahan tulee viela eriksen alkusijoituskoordinaatit)

	var objMenu = eval( this["conf_menuref"] );
	

	if (this["conf_vality"])
	{

		var qw, xid,intX, intY,xidX, topParent, rightpx, flipThis, x, y, z; 
		if (this["intConfLayeSelectType"]=='flipleft')
		{
			// 'flipleft'
			
			
			for (xidX = 0; xidX < this["layerSettings"]._layers[1].length ; xidX++)	
				{
					// loopataan 1 tason layerit
					rightpx = 0;
					flipThis = false;
					// etsitaan alilayereista oikeanpuoleisin 
					for (qw = 2; qw < this["layerSettings"]._layers.length  ; qw++)
						{
							// 2 .. n
							if (this["layerSettings"]._layers[qw].length)
							{	
								// tasolla layereita
								
								for (xid = 0; xid < this["layerSettings"]._layers[qw].length ; xid++)	
									{
										if (this["layerSettings"]._layers[qw][xid].topParent==xidX)
										{
											// on kyseisen 1 tason layerin jalkelainen
											
											if (this["layerSettings"]._layers[qw][xid].X2 > rightpx)
											{
												// on uusi righty (kaikkein oikeammalla )	
												rightpx = this["layerSettings"]._layers[qw][xid].X2;
											}	
										}
									}
							 }
						}
						// END: etsitaan alilayereista oikeanpuoleisin 
						
						//alert(this["x-target_body_length"] + '  ' + rightpx);
						///// jos tarvitsee tutkia kaanto
						if (rightpx)
						{
							// oli alitasoja
							if ((this["x-coordRef"] + rightpx)> this["x-target_body_length"])
							{
								// taman 1 tason oikeanpuolisin layerin oikea reuna ei mahdu sivulle
									flipThis = true;
							}		
						}
						///// END: jos tarvitsee tutkia kaanto
						
						
						// alilayerien koordinaattien paivitys
						for (qw = 2; qw < this["layerSettings"]._layers.length  ; qw++)
						{
							// 2 .. n
							if (this["layerSettings"]._layers[qw].length)
							{	
								// tasolla layereita
								
								for (xid = 0; xid < this["layerSettings"]._layers[qw].length ; xid++)	
									{
										if (this["layerSettings"]._layers[qw][xid].topParent==xidX)
										{
											// on kyseisen 1 tason layerin jalkelainen
											if (flipThis)
											{
												// suoritetaan kaanto
												
												// 1 tason layerin  left px
												x= this["layerSettings"]._layers[1][xidX].X;
												// kaannettavan layerin left px 
												y= this["layerSettings"]._layers[qw][xid].X;
												
												//z = (x-(y-x));
												// z=(x-(y-x)) + (vLev_fix * 2);
												// (vLev_fix*(qw-1));
												
												z = x;
												for( var k=1 ; k<=(qw-1) ; k++ ){
													z -= (objMenu.levelLengths_values[k]+objMenu.vLev_fix);
													}
												
												this["layerSettings"]._layers[qw][xid].xx = z;
												this["layerSettings"]._layers[qw][xid].yy = this["layerSettings"]._layers[qw][xid].Y;
												
												
											}	
											else
											{
												// ei kaantoa, layerit normaalisti paikoilleen
												this["layerSettings"]._layers[qw][xid].xx = this["layerSettings"]._layers[qw][xid].X;
												this["layerSettings"]._layers[qw][xid].yy = this["layerSettings"]._layers[qw][xid].Y;
											}
										}
									}
							 }
						}
						// END: alilayerien koordinaattien paivitys
						
						// 1 tason arvot ei muutu
						this["layerSettings"]._layers[1][xidX].xx = this["layerSettings"]._layers[1][xidX].X;
						this["layerSettings"]._layers[1][xidX].yy = this["layerSettings"]._layers[1][xidX].Y;
						
						
						
				}			
			
		}
		else
		{
			// 'normal', 'indent', 'leftedge', 'leftedge_indent'
				
				for (qw = 1; qw < this["layerSettings"]._layers.length  ; qw++)
				{
					if (this["layerSettings"]._layers[qw].length)
					{	
					
						// tasolla layereita
						for (xid = 0; xid < this["layerSettings"]._layers[qw].length ; xid++)	
							{
								intX = this["layerSettings"]._layers[qw][xid].X;
								intY = this["layerSettings"]._layers[qw][xid].Y;
								
								if (this["intConfLayeSelectType"] == 'indent') 
								{	
									// 'indent'
									if (qw!=1)
									{
										//  alatason sisennys ja  ei 1 taso
										// laskennallinen sijainti x - sisennys vasemmalle * (taso-1)
										intX = this["layerSettings"]._layers[qw][xid].X - (this["headerLinkIndentSetting"]*(qw-1));
									}
								}
								else if (this["intConfLayeSelectType"] == 'leftedge' || this["intConfLayeSelectType"] == 'leftedge_indent') 
								{
									//  leftedge, 'leftedge_indent'
									if (qw==1)
									{	// 1 taso 0 , on siis suhteellisesti leftissa
										intX = 0;
									}
									else
									{	// alataso (layerin sijainti x - 1 tason layerin x (siis jonka alla tama on)) 
										
										// layerin top parent (mika 1 tason layerin alla sijaitsee)
										topParent = this["layerSettings"]._layers[qw][xid].topParent;
										
										intX = this["layerSettings"]._layers[qw][xid].X - this["layerSettings"]._layers[1][topParent].X;
										if (this["intConfLayeSelectType"] == 'leftedge_indent') 
										{
											// indent viela lisaksi
											intX = intX	- (this["headerLinkIndentSetting"]*(qw-1))
										}
									}	
								}
								
								 
								
								this["layerSettings"]._layers[qw][xid].xx = intX;
								this["layerSettings"]._layers[qw][xid].yy = intY;
						}
					}
				
				
			}	
		
			/////////
		}

		
	
		
	}
	

	
	objMenu = null;
}		
	
// END CLASS_defineLayerPositions
//////////////////////////////////////////////////////////////////////////


			







//////////////////////////////////////////////////////////////////////////
// CLASS_UnInstalNaviObj 

function 	CLASS_UnInstalNaviObj()
{
	// CLASS_UnInstalNaviObj	
	
	// disabloi navigaatio objektin paalta pois 
	// tapahtuu kun unload targettiframessa seka
	// ennen valikkojen piirtoa keskiframeen (piirron ajaksi disablointi, juuri ennen html:n asetusta eskelle)

	

	if (this["conf_vality"])
	{
		// onko saanut toimintapolut keskiframesta 
		this["conf_isMapped"] = false;
		// onko aktiivinen ottamaan kaskyja liittyen layereihin, nayta, piilota
		this["conf_state"] = false;

		// header select hidden tama voi olla paallakin
		//this.setObjVIsibility(this["conf_refPathBase"],this["conf_refPathHeaderDiv"], false,false);		
		
		// valikon piilotus timeoutit perutaan jos on 
		if (this["timeout"])
			clearTimeout(this["timeout"]);
			
	}
					
}		
	
// END CLASS_UnInstalNaviObj
//////////////////////////////////////////////////////////////////////////
	

	



//////////////////////////////////////////////////////////////////////////
// CLASS_InstalSelects 

function CLASS_InstalSelects( path )
{
	// SUORITTAA VALIKOIDEN ASENNUKSEN LOPPUUN 
	// KOMENTO TULEE TOPISTA (kun molemmat polut saapuneet sinne)
	// - tulostaa layerit
	// - siirtaa paikoilleen
	// jo meni ok, niin nayttaa ylanavigoinnin ja laittaa kayttoon
	// saa parametrina polun keskiframeen


	if( this["conf_vality"] )
	{
	
		// selectin piilotus, tamfelt kustomointi, mika pajarinen, 03.06.2004
		/*
		EI KÄYTÖSSÄ
		blnHasFlashObject = (document.getElementById('elcoProdFlash') ? true:false ); 
	 */
	
			// navig objekti disabloidaan kasittelyn ajaksi
		this.UnInstalNaviObj();

			// otetaan polku keskelle talteen	
		this["conf_refPathTargetTxT"] = path;
		
			// suhteellinen sijainnin korjaus 
		this.getRelativePositions();
		
			// maaritellaan sijainnit  
		this.defineLayerPositions();
							
		if (this.instalAllDivs())
		{
				// html meni ok
				// onko saanut toimintapolut keskiframesta 
			this["conf_isMapped"] = true;
				// onko aktiivinen ottamaan kaskyja liittyen layereihin, nayta, piilota
			this["conf_state"] = true;
	
	
			this.setObjVIsibility(this["conf_refPathBase"],this["conf_refPathHeaderDiv"], true,false);		

		}

		
	}
		
}		
	
// END CLASS_InstalSelects
//////////////////////////////////////////////////////////////////////////





// mika pajarinen , 31.5.2004, mouseoverefekti  / tamfelt 
			// tamfelt kustomointi//////////////////////////////////////////////////////////////////////////
// CLASS_StaticMouseOver
			
function 	CLASS_StaticMouseOver(layer,action)
{
	
	if (this["conf_vality"] && this["conf_state"] && this["conf_isMapped"])
	{
			this.ShowLevel(-1,-1);
			
					if (intActiveTopMenuLayer!=-100)
						this.handleImg(this["conf_refPathBase"],intActiveTopMenuLayer,''); 
					if (action)
					{
						// korostus
						 
						intActiveTopMenuLayer = layer;
						this.handleImg(this["conf_refPathBase"],layer,'b');
					}	
			
					
	}
}	
				
// END CLASS_StaticMouseOver
//////////////////////////////////////////////////////////////////////////
	
	
	
					
				
				


// 18.9.2003, lopetustoiminnot
//////////////////////////////////////////////////////////////////////////
// CLASS_doExit 
function CLASS_doExit()
{
	// document.onunload event, muisti vapaaksi
	if ( this["conf_vality"] &&  this["conf_state"])
 	{
		// onko aktiivinen ottamaan kaskyja liittyen layereihin, nayta, piilota
		this["conf_state"] = false;
		// selain on OK, itemeitakin on mita kasitella, ottaa vastaan referensseja jne ...
		this["conf_vality"]  = false;	
		 for( var mem in this )  mem = null;
		   
		    
	}
		
}		
	
// END CLASS_doExit
//////////////////////////////////////////////////////////////////////////



function createDropAllLayers( strMenu ){
		// tehdaan tarvittavat layerit menulle
		// layerin nimi muotoa : <strMenu>_layer<X>x<Y>
		
 		
	var intStaticConfLevels = new Array( 0, 8 , 30 , 10 );
	var html1, html2,lName, htmlTotal, styleDef;
	htmlTotal=''

	
	styleDef = strMenu + '_';	
	if( document.all ){
			// ie 
		styleDef += 'navigationDivIe';
		}
	else{
			// ns
		styleDef += 'navigationDivNs';	
		}
		
				
	for( var ixq2 = 1; ixq2 < intStaticConfLevels.length; ixq2++ ){
		html1 = '<DIV ID="';
		html2 = '" CLASS="' + styleDef + '">&nbsp;</DIV>';
						
		if( intStaticConfLevels[ixq2]>0 ){ 
			for( var ixq3 = 0; ixq3 < intStaticConfLevels[ixq2]; ixq3++ ){
				lName = strMenu+'_layer' + ixq2 + 'x' + ixq3;
				htmlTotal += html1 + lName + html2; 
				}
				
			document.write( htmlTotal );
			htmlTotal = ''
			}	
		}
	}
	
	
	
	
}

//-->


