// Get the HTTP Object
function getHTTPObject(){
	if (window.ActiveXObject) return new ActiveXObject("Microsoft.XMLHTTP");
	else if (window.XMLHttpRequest) return new XMLHttpRequest();
	else {
		alert("Your browser does not support AJAX.");
		return null;
	}
}

//Implement business logic
function doWork(id){
		if (document.getElementById('loading_'+id) == null){
			var httpObject = getHTTPObject();
			if (httpObject != null) {
				httpObject.open("GET", "getSubmenu.php?id="+id, true);
				httpObject.send(null);
				httpObject.onreadystatechange = function() { setOutput(httpObject, id); };
				var element = document.getElementById('submenu_'+id);
				element.innerHTML += '<ul id="loading_'+id+'"><li style="text-align: center;"><img src="images/load.gif" /></li></ul>';
			}
		}
}

// Change the value of the outputText field
function setOutput(httpObject, id){
	if(httpObject.readyState == 4){
		removeElementById('loading_'+id);
		var xmldoc = httpObject.responseXML.documentElement;
		var element = document.getElementById('submenu_'+id);
		for (var i = 0; i < element.childNodes.length; i++){
			//element.innerHTML += '??';
			if (element.childNodes[i].tagName == 'A'){
				element.childNodes[i].setAttribute('onclick', 'hideSubmenu('+id+'); return false;');
				if (element.childNodes[i].childNodes[0].childNodes.length > 0){
					element.childNodes[i].childNodes[0].childNodes[0].childNodes[0].childNodes[0].
						firstChild.nodeValue = '-';
				}
				zmienna = 'abc';
			}
		}
		
		var lista = '<ul style="padding-bottom: 10px;" id="lista_'+id+'">';
		for (var iNode = 0; iNode < xmldoc.childNodes.length; iNode++) {
			var podkategorie = xmldoc.childNodes[iNode].getAttribute('podkategorie');
			var kategoria = xmldoc.childNodes[iNode].childNodes[0].firstChild.nodeValue;
        	var id_ = xmldoc.childNodes[iNode].childNodes[1].firstChild.nodeValue;
        	lista += '<li style="padding-left: 10px; border-left: 1px dotted red;" id="submenu_'+id_+'"><a class="linksubmenu" href="';
        	if (podkategorie == 1)
        		lista += '" onclick="doWork('+id_+'); return false;"><table><tbody><tr><td style="color: red">+</td><td>'+kategoria+'</td></tr></tbody></table></a></li>';
        	else
        		lista += 'index.php?id='+id_+'">'+kategoria+'</a></li>';
        }
        lista += '</ul>';
        element.innerHTML += lista;
	}
}

// Chowa podmenu
function hideSubmenu(id){
	var element = document.getElementById('lista_'+id);
	var parent = element.parentNode;
	for (var i = 0; i < parent.childNodes.length; i++){
		if (parent.childNodes[i].tagName == 'A'){
			parent.childNodes[i].setAttribute('onclick', 'doWork('+id+'); return false;');
			if (parent.childNodes[i].childNodes[0].childNodes.length > 0){
				parent.childNodes[i].childNodes[0].childNodes[0].childNodes[0].childNodes[0].
					firstChild.nodeValue = '+';
			}
		}
	}
	parent.removeChild(element);
}

//Usuwa element po jego id
function removeElementById(id){
	var element = document.getElementById(id);
	element.parentNode.removeChild(element);
}
