function VDToggleElemVisibility(elemID)
{
    var elem = document.getElementById(elemID);
    elem.className = (elem.className == 'vd-hidden')? 'vd-visible' : 'vd-hidden';
    
    if (elem.className == 'vd-hidden')
    {
        VDHideChilds(elem);
    }
}

function VDSetActive(elem)
{
    elem.className = (elem.className == 'vd-expansed')? 'vd-collapsed' : 'vd-expansed';
}

function VDHideChilds(elem)
{
    if (elem.nodeName == 'SPAN')
    {
        if (elem.className == 'vd-expansed')
        {
            elem.className = 'vd-collapsed';
        }
    }

    for (var i = 0; i < elem.childNodes.length; i++)
    {
        if (elem.childNodes[i].childNodes.length > 0)
        {
            for (var j = 0; j < elem.childNodes[i].childNodes.length; j++)
            {
                var subElem = elem.childNodes[i].childNodes[j];

                if (subElem.nodeName == 'UL')
                {
                    subElem.className = 'vd-hidden';
                }
                
                if (subElem.childNodes.length > 0)
                {
                    VDHideChilds(subElem);
                }
            } 
        }
    }
}

