// Title: Tigra Tree
// Description: See the demo at url
// URL: http://www.softcomplex.com/products/tigra_menu_tree/
// Version: 1.1 (size optimized)
// Date: 11-12-2002 (mm-dd-yyyy)
// Notes: This script is free. Visit official site for further details.

function tree(tm0,tm1)
{
	this.tm2=tm1;
	this.tm3=tm0;
	this.tm4=this;
	this.tm5=[];
	this.tm6=null;
	this.tm7=-1;
	var tm8=new Image(),tm9=new Image();
	tm8.src=tm1['icon_e'];
	tm9.src=tm1['icon_l'];
	tm1['im_e']=tm8;
	tm1['im_l']=tm9;
	for(var i=0;i<64;i++)if(tm1['icon_'+i])
	{
		var tmA=new Image();
		tm1['im_'+i]=tmA;
		tmA.src=tm1['icon_'+i]
	}
	this.tmB=function(tmC)
	{
//alert('tmB('+tmC+')');
if(document.getElementById('rozwiniete')) {
	document.getElementById('rozwiniete').value += '_'+tmC;
}
//alert(document.getElementById('rozwiniete').value);

		var tmD=this.tm5[tmC];
		tmD.tmE(tmD.tmF);


if(this == trees[0]) {
//	alert('branze!');
	pokazUkryjDiv(tmC);
}
else if(this == trees[1]) {
//	alert('PKD!');
	pokazUkryjDivPKD(tmC);
}

	};
	this.tmG=function(tmC)
	{
//alert(tmC);

/*
var klikniete_tmp = document.getElementById('klikniete').value+'_';
var wzor = '/_'+tmC+'_/';
alert(wzor);
if(klikniete_tmp.search(wzor) == -1) {
	// kliknieto nowa kategorie
	alert('nowa!');
	document.getElementById('klikniete').value += '_'+tmC;
}
else {
	// kliknieto juz wybrana kategorie - trzeba ja usunac z listy kliknietych
	alert('usuwam!');
	klikniete_tmp = klikniete_tmp.replace(wzor, '_');
	document.getElementById('klikniete').value = klikniete_tmp.substr(0, klikniete_tmp.length-1);
}
*/

/*
var klikniete_tmp = document.getElementById('klikniete').value+'_';
var wzor = '/_'+tmC+'_/';
klikniete_tmp = klikniete_tmp.replace(wzor, '_');
document.getElementById('klikniete').value = klikniete_tmp.substr(0, klikniete_tmp.length-1);
*/

if(document.getElementById('klikniete')) {
	document.getElementById('klikniete').value += '_'+tmC;
}

		return this.tm5[tmC].tmG()
	};
	this.tmH=function(tmC)
	{
		this.tm5[tmC].tmI(true)
	};
	this.tmJ=function(tmC)
	{
		this.tm5[tmC].tmI()
	};
	this.tmK=[];
	for(var i=0;
	i<tm0.length;
	i++)new tmL(this,i);
	this.tmC=trees.length;
	trees[this.tmC]=this;
	for(var i=0;i<this.tmK.length;i++)
	{
		document.write(this.tmK[i].tmM());
		this.tmK[i].tmE()
	}
	
}

function tmL(tmN,tmO)
{
	this.tm7=tmN.tm7+1;
	this.tm3=tmN.tm3[tmO+(this.tm7?3:0)];
	if(!this.tm3)return;
	this.tm4=tmN.tm4;
	this.tmN=tmN;
	this.tmO=tmO;
	this.tmF=!this.tm7;
	this.tmC=this.tm4.tm5.length;
	this.tm4.tm5[this.tmC]=this;
	tmN.tmK[tmO]=this;
	this.tmK=[];
	for(var i=0;
	i<this.tm3.length-2;
	i++)new tmL(this,i);
	this.tmP=tmQ;
	this.tmE=tmR;
	this.tmG=tmS;
	this.tmM=tmT;
	this.tmI=tmU;
	this.tmV=function()
	{
		return this.tmO==this.tmN.tmK.length-1
	}
	
}

function tmR(tmW)
{
	var tmX=tmY('i_div'+this.tm4.tmC+'_'+this.tmC);
	if(!tmX)return;
	if(!tmX.innerHTML)
	{
		var tmK=[];
		for(var i=0;i<this.tmK.length;i++)
			tmK[i]=this.tmK[i].tmM();
		tmX.innerHTML=tmK.join('')
	}
	tmX.style.display=(tmW?'none':'block');
	this.tmF=!tmW;
	var tmZ=document.images['j_img'+this.tm4.tmC+'_'+this.tmC],tma=document.images['i_img'+this.tm4.tmC+'_'+this.tmC];
	if(tmZ)tmZ.src=this.tmP(true);
	if(tma)tma.src=this.tmP();
	this.tmI()
}

function tmS(tmb)
{
	if(!tmb)
	{
		var tmc=this.tm4.tm6;
		this.tm4.tm6=this;
		if(tmc)tmc.tmG(true)
	}
	var tma=document.images['i_img'+this.tm4.tmC+'_'+this.tmC];
	if(tma)tma.src=this.tmP();

//	tmY('i_txt'+this.tm4.tmC+'_'+this.tmC).style.fontWeight=tmb?'normal':'bold';

	this.tmI();
	return Boolean(this.tm3[1])
}

function tmU(tmd)
{
	//window.setTimeout('window.status="'+(tmd?'':this.tm3[0]+(this.tm3[1]?' ('+this.tm3[1]+')':''))+'"',10)
}

function tmT()
{
	var tme=[],tmf=this.tmN;
	for(var i=this.tm7;i>1;i--)
	{
		tme[i]='<img src="'+this.tm4.tm2[tmf.tmV()?'icon_e':'icon_l']+'" border="0" align="absbottom">';
		tmf=tmf.tmN
	}
	//return '<table cellpadding="0" cellspacing="0" border="0"><tr><td nowrap>'+(this.tm7?tme.join('')+(this.tmK.length?'<a href="javascript: trees['+this.tm4.tmC+'].tmB('+this.tmC+')" onmouseover="trees['+this.tm4.tmC+'].tmJ('+this.tmC+')" onmouseout="trees['+this.tm4.tmC+'].tmH('+this.tmC+')"><img src="'+this.tmP(true)+'" border="0" align="absbottom" name="j_img'+this.tm4.tmC+'_'+this.tmC+'"></a>':'<img src="'+this.tmP(true)+'" border="0" align="absbottom">'):'')+'<a href="'+this.tm3[1]+'" target="'+this.tm4.tm2['target']+'" onclick="return trees['+this.tm4.tmC+'].tmG('+this.tmC+')" ondblclick="trees['+this.tm4.tmC+'].tmB('+this.tmC+')" onmouseover="trees['+this.tm4.tmC+'].tmJ('+this.tmC+')" onmouseout="trees['+this.tm4.tmC+'].tmH('+this.tmC+')" class="t'+this.tm4.tmC+'i" id="i_txt'+this.tm4.tmC+'_'+this.tmC+'"><img src="'+this.tmP()+'" border="0" align="absbottom" name="i_img'+this.tm4.tmC+'_'+this.tmC+'" class="t'+this.tm4.tmC+'im">'+this.tm3[0]+'</a></td></tr></table>'+(this.tmK.length?'<div id="i_div'+this.tm4.tmC+'_'+this.tmC+'" style="display:none"></div>':'')
	
	
	
	xxx = this.tm3[0].split('|');
	text = xxx[0];
	bid = this.tm3[1];
	if(xxx.length==3)
		link = " <img src='"+xxx[1]+"' border='0' onClick="+xxx[2]+" style='cursor:pointer;'>";
	else
		link = this.tm3[2];

/*
if('j_img'+this.tm4.tmC+'_'+this.tmC == 'j_img0_3') {
	alert('j_img'+this.tm4.tmC+'_'+this.tmC);
}
*/

	// wybierz(\''+bid+'\', \''+text+'\', \'j_img'+this.tm4.tmC+'_'+this.tmC+'\'); '+this.tm3[1]+';
	// 1 argument - indentyfikator branzy
	// 2 argument - wyswietlany tekst ^ xxx[0]
	// 3 argument - identyfikator tabelki z lisciem (patrz na dol) - potrzebne do ukrywania w momecie wyboru liscia lub odkrycia w momencie jego "powrotu do drzewa"

//	return '<table cellpadding="0" cellspacing="0" border="0" id="j_img'+this.tm4.tmC+'_'+this.tmC+'"><tr><td nowrap>'+(this.tm7?tme.join('')+(this.tmK.length?'<a href="javascript: trees['+this.tm4.tmC+'].tmB('+this.tmC+')" onmouseover="trees['+this.tm4.tmC+'].tmJ('+this.tmC+')" onmouseout="trees['+this.tm4.tmC+'].tmH('+this.tmC+')"><img src="'+this.tmP(true)+'" border="0" align="absbottom" name="j_img'+this.tm4.tmC+'_'+this.tmC+'"></a>':'<img src="'+this.tmP(true)+'" border="0" align="absbottom">'):'')+'<a style="cursor: pointer;" onclick="wybierz(\''+bid+'\', \''+text+'\', \'j_img'+this.tm4.tmC+'_'+this.tmC+'\'); '+this.tm3[1]+'; return trees['+this.tm4.tmC+'].tmG('+this.tmC+')" ondblclick="trees['+this.tm4.tmC+'].tmB('+this.tmC+')" onmouseover="trees['+this.tm4.tmC+'].tmJ('+this.tmC+')" onmouseout="trees['+this.tm4.tmC+'].tmH('+this.tmC+')" class="t'+this.tm4.tmC+'i" id="i_txt'+this.tm4.tmC+'_'+this.tmC+'"><img src="'+this.tmP()+'" border="0" align="absbottom" name="i_img'+this.tm4.tmC+'_'+this.tmC+'" class="t'+this.tm4.tmC+'im">'+text+'</a>'+link+'</td></tr></table>'+(this.tmK.length?'<div id="i_div'+this.tm4.tmC+'_'+this.tmC+'" style="display:none"></div>':'')

// po usunieciu obslugi zdarzenia ondblclick:
	return '<table cellpadding="0" cellspacing="0" border="0" id="j_img'+this.tm4.tmC+'_'+this.tmC+'"><tr><td nowrap>'+(this.tm7?tme.join('')+(this.tmK.length?'<a href="javascript: trees['+this.tm4.tmC+'].tmB('+this.tmC+')" onmouseover="trees['+this.tm4.tmC+'].tmJ('+this.tmC+')" onmouseout="trees['+this.tm4.tmC+'].tmH('+this.tmC+')"><img src="'+this.tmP(true)+'" border="0" align="absbottom" name="j_img'+this.tm4.tmC+'_'+this.tmC+'"></a>':'<img src="'+this.tmP(true)+'" border="0" align="absbottom">'):'')+'<a style="cursor: pointer;" onclick="wybierz(\''+bid+'\', \''+text+'\', \'j_img'+this.tm4.tmC+'_'+this.tmC+'\'); '+this.tm3[1]+'; return trees['+this.tm4.tmC+'].tmG('+this.tmC+')" onmouseover="trees['+this.tm4.tmC+'].tmJ('+this.tmC+')" onmouseout="trees['+this.tm4.tmC+'].tmH('+this.tmC+')" class="t'+this.tm4.tmC+'i" id="i_txt'+this.tm4.tmC+'_'+this.tmC+'"><img src="'+this.tmP()+'" border="0" align="absbottom" name="i_img'+this.tm4.tmC+'_'+this.tmC+'" class="t'+this.tm4.tmC+'im">'+text+'</a>'+link+'</td></tr></table>'+(this.tmK.length?'<div id="i_div'+this.tm4.tmC+'_'+this.tmC+'" style="display:none"></div>':'')
}

function tmQ(tmg)
{
	return this.tm4.tm2['icon_'+((this.tm7?0:32)+(this.tmK.length?16:0)+(this.tmK.length&&this.tmF?8:0)+(!tmg&&this.tm4.tm6==this?4:0)+(tmg?2:0)+(tmg&&this.tmV()?1:0))]
}

var trees=[];

tmY=document.all?function(tmh)
{
	return document.all[tmh]
}
:function(tmh)
{
	return document.getElementById(tmh)
};

