function NLWISLayerList_toggleClass(e) {
    for (j=0; j<e.parentNode.childNodes.length; j++) {
        childnode = e.parentNode.childNodes[j];
        if (childnode.nodeName == "UL") {
            if (childnode.className == 'layerlist') {
                childnode.className+=' open';
                e.className = 'layerlist_grouptitle';
            } else {
                childnode.className = 'layerlist';
                e.className += ' grouptitle_closed';
            }
        }
    }
    
    // need to update 'layerlist_opengroups' every time
    var container = document.getElementById("layerlist_container");
    var aElements = container.getElementsByTagName("a");
    var strOpenGroups = "";
    var bFirst = true;
    for (var i = 0; i < aElements.length; i++){
        if (aElements[i].className == 'layerlist_grouptitle'){
            for (var j = 0; j < aElements[i].childNodes.length; j++){
                if (aElements[i].childNodes[j].nodeName == "#text"){
                    if (bFirst){
                        bFirst = false;
                    } else {
                        strOpenGroups += "~~";
                    }
                    strOpenGroups += aElements[i].childNodes[j].data;
                }
            }
        }
    }
    document.forms[0].layerlist_opengroups.value = strOpenGroups;
}

function layerlist_setscale(setScale) {
    //set hidden variable
    document.forms[0].NLWISLAYERLIST_SCALE.value = setScale;
    
    if (gCWCJSAPI){
        aHiddenVars = new Array(2);
        aHiddenVars[0] = new Array(2);
        aHiddenVars[0][0] =  "NLWISLAYERLIST_SCALE";
        aHiddenVars[0][1] = setScale;
        aHiddenVars[1] = new Array(2);
        aHiddenVars[1][0] =  "UPDATE";
        aHiddenVars[1][1] = 1;
    
        szOnLoad = 'NLWISLayerList_ScaleSet()';
        goCWCJSAPI.CallServer(szOnLoad, aHiddenVars);
    } else {
        document.forms[0].UPDATE_MAP.value = 1;
        document.forms[0].submit();
    }
}       
