var localMenu;
function toggleMenuItems(t) {
    parentEl = t.parentNode;
    if(localMenu==undefined) {
        oLi = parentEl.getElementsByTagName("li");
        for(i=0;i<oLi.length;i++) {
            if(oLi[i].className=="openList")
                oLi[i].className = "closeList";
        }
    }
    classSwitcher(t,'openList');
    if(localMenu && localMenu != t) localMenu.className = "closeList";
    localMenu = t;
}

function selectAllOptions(t) {
    if(t.checked) {
        for(x=0;x<t.form.length;x++) {
            if(t.form.elements[x].type=="checkbox" && t.form.elements[x].name!="selectAll") {
                t.form.elements[x].checked = true;
            }
        }
    } else {
        for(x=0;x<t.form.length;x++) {
            if(t.form.elements[x].type=="checkbox" && t.form.elements[x].name!="opt_all") {
                t.form.elements[x].checked = false;
            }
        }
    }
}
function chooseOptions() {
    var _options = [];
    var parent = document.getElementById("activityTable");
    classSwitcher('optionListDiv','hideList');
    var checkboxes = parent.getElementsByTagName("input");
    for(i=0;i<checkboxes.length;i++) {
        if(checkboxes[i].checked) {
            var label = document.getElementById(checkboxes[i].id+"Label") || null;
            if(label != null) {
                _options[_options.length] = label.innerHTML;
            }
        }
    }

    if(_options.length>0) {
        var stringBuilder = "<b>Your Selection:</b> ";
        for(x=0;x<_options.length;x++) {
            stringBuilder += _options[x];
            if(x!=_options.length-1) stringBuilder += ", "
        }

        document.getElementById("selectedOptions").innerHTML = (_options.length==0) ? "" : stringBuilder;
        document.getElementById("selectedOptions").style.display = "block";
    }
}
function getDivByClassName(new_class) {
    var _elements = [];
    var divs = document.getElementsByTagName("div");

    for(i=0;i<divs.length;i++) {
        if(divs[i].className==new_class) {
            _elements.push(divs[i]);
        }
    }
    return _elements;
}
function openWhatsThis(t) {
    var scrollInfo = getScrollXY();

    var sTop = getViewportHeight();
    var sLeft = getViewportWidth();
    var oHeight = 200; //document.getElementById("whatsThis").offsetHeight;
    var oWidth = 586; //document.getElementById("whatsThis").offsetWidth;
    var oTop = (sTop/2) - (oHeight/2)
    var oLeft = (975/2) - (oWidth/2)

    document.getElementById("whatsThis").style.top = (scrollInfo[1] + oTop) + "px";
    document.getElementById("whatsThis").style.left = (scrollInfo[0] + oLeft) + "px";
    classSwitcher('whatsThis','showKey');
}
function openRowItem(t) {
    classSwitcher(t,'openItem');
}
var defaultClass = "closeItem";
function expandAllRows() {
    var rows = getDivByClassName(defaultClass);
    if(defaultClass=="closeItem") {
        defaultClass = "openItem";
        for(i=0;i<rows.length;i++) {
            rows[i].className = defaultClass;
        }
    } else {
        defaultClass = "closeItem";
        for(i=0;i<rows.length;i++) {
            rows[i].className = defaultClass;
        }
    }
}

function openOptions(t) {
    document.getElementById("optionListDiv").style.left = t.offsetLeft + "px";
    document.getElementById("optionListDiv").style.top = (t.offsetTop + t.offsetHeight) + "px";
    classSwitcher('optionListDiv','showList')
}

/* START VALIDATION ROUTINE ***********/
function form_onSubmit() {
    searchForm.resetErrors(); //searchForm is set in the searchFormHandler.js
    dateStatus = checkDates();

    if (searchForm.hasErrors()) {
        searchForm.showErrors();
        return false;
    } else {
        return true;
    }
}
/* END VALIDATION ROUTINE ***********/
