var xmlHttp;
var dokonceniDiv;
var vstupniPole;
var tabulkaJmen;
var tabulkaJmenTelo;

function vytvorXMLHttpRequest()
{
	if(window.ActiveXObject)
	{
		xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
	}
	else if(window.XMLHttpRequest)
	{
		xmlHttp = new XMLHttpRequest();
	}
}

function inicializujPromenne()
{
	vstupniPole = document.getElementById("hledat"); 
	tabulkaJmen = document.getElementById("tabulkaJmen");
	dokonceniDiv = document.getElementById("nabidka");
	if( dokonceniDiv == null ) dokonceniDiv = document.getElementById("nabidka2");
	tabulkaJmenTelo = document.getElementById("tabulkaJmenTelo");
}

   


function septej()
{
	inicializujPromenne();
	if(vstupniPole.value.length > 0)
	{
	 if (enabledEdit) {
		vytvorXMLHttpRequest();
		//var url = "http://www.triker.cz/hledat_naseptavac.php?hledat=" + escape(vstupniPole.value);  // - původní
		var url = "http://www.triker.cz/hledat_naseptavac.php?hledat=" + vstupniPole.value; 		    //ostrý web
		//var url = "http://karel/triker_cz_new/hledat_naseptavac.php?hledat=" + vstupniPole.value;     //karel
		xmlHttp.open("GET", url, true);
		xmlHttp.onreadystatechange = zpracujZmenuStavu;
		xmlHttp.send(null);
	}
	}
	else
	{
		vymazHledat();
	}
}

function zpracujZmenuStavu()
{
 
	if(xmlHttp.readyState == 4)
	{
		if(xmlHttp.status == 200)
		{ 		
 		  vymazHledat();
			var hledat = xmlHttp.responseXML.getElementsByTagName("rhledat")[0].firstChild.data;
			aktualniVyber=-1;
			nastavHledat(xmlHttp.responseXML.getElementsByTagName("rhledat"));  	
       }
		else if(xmlHttp.status == 204)
		{
			vymazHledat();
		}
	}
}





function nastavHledat(hledat)
{
	vymazHledat();
	var velikost = hledat.length;
	nastavUmisteni();
	var rada, bunka, txtUzel;
	for(var i = 0; i < velikost; i++)
	{
		var dalsiUzel = hledat[i].firstChild.data;
		rada = document.createElement("tr");
		bunka = document.createElement("td");
		bunka.className='xxx';
		bunka.onmouseout = function() {this.className='xxx';};
		bunka.onmouseover = function() {this.className='mouseOut';};
		bunka.setAttribute("bgcolor","#fafaff"); 	
		bunka.onclick = function() {vyplnHledat(this);};
		txtUzel = document.createTextNode(dalsiUzel);
		bunka.appendChild(txtUzel);
		rada.appendChild(bunka);
		tabulkaJmenTelo.appendChild(rada);
	}
}

function ovladani(e) {
	enabledEdit=false;
	var keyCode;
	if (window.event) e=window.event;
	if (e.which)
		keyCode=e.which;
	else
		keyCode=e.keyCode;
	
	var res=true;
	switch (keyCode) {
		case 27: // esc
		  vymazHledat();
			break;
		case 13: //enter
			if (aktualniVyber!=-1) {
				// select
				vyplnHledat(tabulkaJmenTelo.childNodes[aktualniVyber].childNodes[0]);
				aktualniVyber=-1;
				return false;
			} else {
				// submit form
				//enabledEdit=true;
			}     

			break;
		case 38: //up
			if (tabulkaJmenTelo!=undefined) {
			  if (aktualniVyber!=-1) {
			  	tabulkaJmenTelo.childNodes[aktualniVyber].childNodes[0].className='xxx';
					aktualniVyber--;
					if (aktualniVyber!=-1) tabulkaJmenTelo.childNodes[aktualniVyber].childNodes[0].className='mouseOut';
				}       
			}
			break;
		case 40: //down   
      if (tabulkaJmen!=undefined) {
			  var max=tabulkaJmenTelo.childNodes.length-1;     
			  if (aktualniVyber<max) {
			  	if (aktualniVyber!=-1) tabulkaJmenTelo.childNodes[aktualniVyber].childNodes[0].className='xxx';
					aktualniVyber++;          
					tabulkaJmenTelo.childNodes[aktualniVyber].childNodes[0].className='mouseOut';
				}            
			}
			if (aktualniVyber==-1) enabledEdit=true;
			break;
		default:
			enabledEdit=true;
	}
	//alert(res);
	
}

function nastavUmisteni()
{
	var konec = vstupniPole.offsetWidth;
	var levy = vypoctiUmisteniLevy(vstupniPole);
	var horni = vypoctiUmisteniHorni(vstupniPole) + vstupniPole.offsetHeight;
	//dokonceniDiv.style.border = "black 1px solid";
	//dokonceniDiv.style.right = levy + "px";
	//dokonceniDiv.style.right = '25px';
	//dokonceniDiv.style.top = horni + "px";
	//dokonceniDiv.style.top = '60px';
	tabulkaJmen.style.width = konec + "px";
}

function vypoctiUmisteniLevy(pole)
{
	return vypoctiUmisteni(pole, "offsetLeft");
}

function vypoctiUmisteniHorni(pole)
{
	return vypoctiUmisteni(pole, "offsetTop");
}

function vypoctiUmisteni(pole, atribut)
{
	var umisteni = 0;
	while(pole)
	{
		umisteni += pole[atribut];
		pole = pole.offsetParent;
	}
	return umisteni;
}

function vyplnHledat(bunka)
{ 
  //vstupniPole.value = bunka.firstChild.nodeValue.substr(0,(bunka.firstChild.nodeValue.length - 3));
  vstupniPole.value = bunka.firstChild.nodeValue.substr(0,(bunka.firstChild.nodeValue.length));
	hledatVyber.value = bunka.getAttribute('vyber');
	vymazHledat();
	
	//vstupniPole.value = bunka.firstChild.nodeValue;
	//vymazHledat();
	//document.hledatForm.submit();
}

function vymazHledat()
{
	var velikost = tabulkaJmenTelo.childNodes.length;
	for(var i = velikost - 1; i >= 0; i--)
	{
		tabulkaJmenTelo.removeChild(tabulkaJmenTelo.childNodes[i]);
	}
	dokonceniDiv.style.border = "none";
	aktualniVyber=-1;
}

