var xmlHttp;

function getXmlHttpObject() { 
    var objXMLHttp = null;
    if (window.XMLHttpRequest) {
        objXMLHttp=new XMLHttpRequest();
    }
    else if (window.ActiveXObject) {
        objXMLHttp=new ActiveXObject("Microsoft.XMLHTTP");
    }
    return objXMLHttp;
}

function showSelectionList(path) {
    xmlHttp = getXmlHttpObject();
    var url = "xmlGetSelectionList";
    if (path)
        url = url + "?path=" + path;
    xmlHttp.onreadystatechange = new Function("stateChanged('"+path+"')");
    xmlHttp.open("GET", url, true);
    xmlHttp.send(null);
}

function showTopicList(topic) {
    xmlHttp = getXmlHttpObject();
    var url = "xmlGetTopicList";
    if (topic)
        url = url + "?topic=" + topic;
    xmlHttp.onreadystatechange = topicChanged;
    xmlHttp.open("GET", url, true);
    xmlHttp.send(null);
}

function stateChanged(path) { 
    if (xmlHttp.readyState==4 || xmlHttp.readyState=="complete") {
        
        // only replace content of selectors if new selection list is not empty
        if (xmlHttp.responseText.length > 16) {
            var selectorNode = document.getElementById("cs_selector1");
            var selectTag = selectorNode.getElementsByTagName("select")[0];
            var path1 = '';
            if (selectTag != null) {
                path1 = selectTag.getAttribute("name");
            }
            else {
                path1 = path;
            }
//cssQuery("#debug")[0].innerHTML = path1  
            var pLength = path.split("/").length;
            var p1Length = path1.split("/").length;
            var pDiff = p1Length - pLength;

            for (var i=1; i<=5; i++) {
                if (pDiff==0) {
                     document.getElementById("cs_selector"+i).innerHTML = xmlHttp.responseText;
                }
                else if (pDiff>0) {
                     document.getElementById("cs_selector"+i).innerHTML = "";
                }
                pDiff++;
            }            
        }
        document.getElementsByName("selection_path")[0].setAttribute("value", path);
    } 
}

function topicChanged() { 
    if (xmlHttp.readyState==4 || xmlHttp.readyState=="complete") {
        document.getElementById("topic_search_results").innerHTML = xmlHttp.responseText;;
    }
    
}