var http = null;
if (window.XMLHttpRequest) {
  http = new XMLHttpRequest();
} else if (window.ActiveXObject) {
  try {
      http = new ActiveXObject("Msxml2.XMLHTTP");
  } catch (e) {
      try {
          http = new ActiveXObject("Microsoft.XMLHTTP");
      } catch (e) {}
  }
}


function trim(str)
{
    return str.replace(/^\s*|\s*$/g,"");
}


function macheRequest(brancheID, sucheID, ausgabeID, divWidth) {
    if (http != null) {
        var q = trim(document.getElementById(sucheID).value);
//        var url = "./ajax_branche.php?q="+q;
        var host = window.location.host;

        var url = "http://" + host + "/fileadmin/ap_static/ajax_branche.php?q="+q;
        if (q.length > 2) {
            http.open("GET", url, false);
            http.send(null);            
            http.onreadystatechange = ausgeben(brancheID, sucheID, ausgabeID, divWidth);
        }
        else {
            var ergb = document.getElementById(ausgabeID);
            clearChildren(ergb);
            ergb.style.visibility = "hidden";
        }
    }
}


function ausgeben(brancheID, sucheID, ausgabeID, divWidth) {
    if (http.readyState == 4) {       
        var ergb  = document.getElementById(ausgabeID);
        clearChildren(ergb);
        var daten = http.responseXML;
        var ergebnisse = daten.getElementsByTagName("result");
        ergb.style.visibility = "visible";
        if(ergebnisse.length>0) {
            for (var i = 0; i < ergebnisse.length; i++) {
                var id, name;
                var eintrag = ergebnisse[i];
                for (var j = 0; j < eintrag.childNodes.length; j++) {
                    with (eintrag.childNodes[j]) {
                        if (nodeName == "id") {
                            id = firstChild.nodeValue;
                        } else if (nodeName == "name") {
                            name = firstChild.nodeValue;
                        }
                    }
                }
                var li = document.createElement("div");
                li.setAttribute("style", divWidth); // divWidth = "width: 180px;"
                if (id != -1) {
                    var a = document.createElement("a");
                    a.setAttribute("href", "javascript:setbranche('"+name+"', '"+id+"', '"+brancheID+"', '"+sucheID+"', '"+ausgabeID+"')");
                    var txt = document.createTextNode(name);
                    var br3 =  document.createElement("br");
                    br3.setAttribute("style", "font-size: 5px");
                    a.appendChild(txt);
                    li.appendChild(a);
                    li.appendChild(br3);
                }
                else {
                    var i = document.createElement("i");
                    var txt = document.createTextNode("...");
                    i.appendChild(txt);
                    li.appendChild(i);
                }
                ergb.appendChild(li);
            }
        } else {
            var li = document.createElement("div");
            li.setAttribute("style", divWidth);
            var i = document.createElement("i");
            //var txt = document.createTextNode("Keine Angaben gefunden.");
            i.appendChild(txt);
            li.appendChild(i);
            ergb.appendChild(li);
        }
    }
}


function setbranche(name, id, brancheID, sucheID, ausgabeID) {
    document.getElementById(sucheID).value = name;
//    document.getElementById(brancheID).value = id;
    var ergb = document.getElementById(ausgabeID);
    clearChildren(ergb);
    ergb.style.visibility = "hidden";
}

function clearChildren(obj) {
    try {
        if(obj.hasChildNodes() && obj.childNodes) {
            while(obj.firstChild) {
                obj.removeChild(obj.firstChild);
            }
        }
    }
    catch(e) {}
}

