var xHttp;
var append;
var lastShown;
var tableTarget;
lastShown = false;

function vNameShow(div) {
	if (lastShown != false) {
		document.getElementById(lastShown).style.display = 'none';
		lastShown = false;
	}
	document.getElementById('vNameDiv' + div).style.display = 'block';
	lastShown = 'vNameDiv' + div;
}

function vNameHide(div) {
	if (lastShown != false) {
		document.getElementById(lastShown).style.display = 'none';
		lastShown = false;
	}
	document.getElementById('vNameDiv' + div).style.display = 'none';
}

function vliUpdate(name,id,app) {
	document.getElementById('jmeno' + app).value = name;
	document.getElementById('jmenoID' + app).value = id;
	document.getElementById('vNameDiv' + app).style.display = 'none';
	return false;
}

function vName(str,newappend,gender)
{
	 append = newappend;
   if (str.length==0)
   { 
       document.getElementById("vNameDiv" + newappend).innerHTML="...";
       return;
   }
   
   var url="gen/vgetName.php" + "?gender=" + gender + "&key=" + escape(str);
   xHttp = VytvorXMLHttp();
   xHttp.onreadystatechange=ZmenaStavuPes;
   xHttp.open("GET",url,true);
   xHttp.send(null);
}

function ZmenaStavuPes() 
{ 
   if (xHttp.readyState==4 && xHttp.status == 200) {
   	if (xHttp.responseText == '...') {
   		document.getElementById("vNameDiv" + append).innerHTML="...";
   	} else {
     	eval(xHttp.responseText);
     	out = '<table border="0" width="100%" class="vhdlTable"><tr><td class="vNameDivLine" nowrap id="vhdl' + append + '_x" onmouseover="vhdlOver(\'vhdl' + append + '_x\')" onmouseout="vhdlOut(\'vhdl' + append + '_x\')" onclick="vliUpdate(\'- bez informace -\',\'0\',\'' + append + '\');">- odebrat -</td></tr>';
     	for (var i = 0; i < vliNames.length; i++) {
     		out = out + '<tr><td class="vNameDivLine" nowrap id="vhdl' + append + '_' + i + '" onmouseover="vhdlOver(\'vhdl' + append + '_' + i + '\')" onmouseout="vhdlOut(\'vhdl' + append + '_' + i + '\')" onclick="vliUpdate(\'' + vliNames[i] + '\',\'' + vliIDs[i] + '\',\'' + append + '\');">';
     		if (vliNames[i] != '...') {
     			out = out + vliNames[i];
     		} else {
     			out = out + '...';
     		}
     		out = out + '</td></tr>';
		 	}
		 	out = out + '</table>';
	 		document.getElementById("vNameDiv" + append).innerHTML = out;
		}
	 } 
}

function vPerson()
{
	var hint = document.getElementById('newUserHint').value;
  if (hint.length==0)
  { 
    document.getElementById("newUserADiv").innerHTML="...";
    return;
  }
   
  var url="gen/vgetPerson.php" + "?key=" + escape(hint);
  xHttp = VytvorXMLHttp();
  xHttp.onreadystatechange=ZmenaStavuClovek;
  xHttp.open("GET",url,true);
  xHttp.send(null);
}

function ZmenaStavuClovek() 
{ 
   if (xHttp.readyState==4 && xHttp.status == 200) {
   	if (xHttp.responseText == '...') {
   		document.getElementById("newUserADiv").innerHTML="...";
   	} else {
     	eval(xHttp.responseText);
     	out = '<table border="0" width="100%" class="vhdlTable">';
     	for (var i = 0; i < vliNames.length; i++) {
     		out = out + '<tr><td class="vNameDivLine" nowrap id="vhdlPerson_' + i + '" onmouseover="vhdlOver(\'vhdlPerson_' + i + '\')" onmouseout="vhdlOut(\'vhdlPerson_' + i + '\')" onclick="SPsaveNewTo(\'' + vliNames[i] + '\',\'' + vliIDs[i] + '\');">';
     		if (vliNames[i] != '...') {
     			out = out + vliNames[i];
     		} else {
     			out = out + '...';
     		}
     		out = out + '</td></tr>';
		 	}
		 	out = out + '</table>';
		 	if (document.getElementById("newUserADiv")) {
	 			document.getElementById("newUserADiv").innerHTML = out;
	 		}
		}
	 } 
}

function VytvorXMLHttp() 
{
    var xmlHttp= false;

    if (window.ActiveXObject) 
        {xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");}
     else if (window.XMLHttpRequest) 
        {xmlHttp = new XMLHttpRequest();}
  return xmlHttp;
}

function vhdlOver(lineName) {
	var obj = document.getElementById(lineName);
	obj.className = 'vNameDivLineOver';
}

function vhdlOut(lineName) {
	var obj = document.getElementById(lineName);
	obj.className = 'vNameDivLine';
}

function SPsaveNewTo(userText,userValue) {
	var tableAdded = document.getElementById('newUserContainer');
	var parent = tableAdded.parentNode;
  parent.removeChild(tableAdded);

	noExists = true;
	var exists = document.getElementById(tableToLink + "Values").value.split(",");
	for (var i = 0; i < exists.length; i++) {
		if (exists[i] == userValue) {
			noExists = false;
			break;
		}
	}
	if (noExists) {
		var tableDock = document.getElementById(tableToLink + "Space");
		var nDiv = document.createElement("div"); 
		nDiv.setAttribute("id",tableToLink + "_" + userValue);
		nDiv.innerHTML = userText + " - <a href=\'javascript:SPodebrat(\"" + tableToLink + "\",\"" + userValue + "\")\'>odebrat</a>";
		//tableDock.appendChild(nDiv);
		var addDiv = document.getElementById(tableToLink + "Add");
		tableDock.insertBefore(nDiv,addDiv);
		exists[trim(exists[0]) == "" ? 0 : exists.length ] = userValue;
		document.getElementById(tableToLink + "Values").value = exists.join(",");
	} else {
		alert("Nelze uvést jednu osobu v téže kategorii dvakrát.");
	}
}

function SPpridat(toTable) {
	tableToLink = toTable;
	var tableTarget = document.getElementById(toTable + "Add");

	allUsersDock = document.createElement("div");
	allUsersDock.style.clear = "both";
	allUsersDock.setAttribute("id","newUserContainer");
	
	allUsersHint = document.createElement("input");
	allUsersHint.setAttribute("autocomplete","off");
	allUsersHint.setAttribute("name","aUh");
	allUsersHint.setAttribute("id","newUserHint");
	allUsersHint.setAttribute("size","30");
	allUsersHint.onkeyup = vPerson;
	allUsersHint.onchange = vPerson;
	
	allUsers = document.createElement("input");
	allUsers.setAttribute("type","text");
	allUsers.setAttribute("name","aU");
	allUsers.setAttribute("id","newUser");
	allUsers.setAttribute("size",3);
	allUsers.setAttribute("disabled",true);
	
	allUsersALink = document.createElement("div");
	allUsersALink.className = "vNameDiv";
	allUsersALink.setAttribute("id","newUserADiv");
	allUsersALink.style.clear = "both";
	allUsersALink.style.display = "block";
	allUsersALink.innerHTML = "...";
	
	allUsersDock.appendChild(allUsersHint);
	allUsersDock.appendChild(allUsers);
	allUsersDock.appendChild(allUsersALink);

	tableTarget.appendChild(allUsersDock);
}

function SPodebrat(fromTable,ID) {
	var d = document.getElementById(fromTable + "_" + ID);
	var tableTarget = document.getElementById(fromTable + "Space");
	tableTarget.removeChild(d);
	var exists = document.getElementById(fromTable + "Values").value.split(",");
	nexists = new Array();
	for (var i = 0; i < exists.length; i++) {
		if (exists[i] != ID) {
			nexists[nexists.length] = exists[i];
		}
	}
	document.getElementById(fromTable + "Values").value = nexists.join(",");
}
