
function forceSingleCheckbox() {
    var wasChecked = this.checked;
    var inputs = document.getElementById("cover1")
            .getElementsByTagName("INPUT");

    for (var i in inputs) {
        inputs[i].checked = false;
    }
    this.checked = wasChecked;
}

function expandAll(expandElement, isOpen) {
    for (var i in expandElement.childNodes) {
        switch (expandElement.childNodes[i].className) {
            case "openSection":
                expandElement.childNodes[i].style.display = isOpen ? "none" : "inline";
                break;
            case "closeSection":
                expandElement.childNodes[i].style.display = isOpen ? "inline" : "none";
                break;
        }
    }
}

function openSection(sectionId) {
    var moreElement = document.getElementById("more-" + sectionId);
    var expandElement = document.getElementById("expand-" + sectionId);

    if (moreElement) {
        moreElement.style.display = "block";
        expandAll(expandElement, true);
    }    
}

function closeSection(sectionId) {
    var moreElement = document.getElementById("more-" + sectionId);
    var expandElement = document.getElementById("expand-" + sectionId);
    if (moreElement) {
        moreElement.style.display = "none";
        expandAll(expandElement, false);
    }
}

function navigateOpenSection(name) {
    openSection(name);
    --historyTracker;
}

function selectPickNMix() {
    var cntrls = document.getElementsByName("picknmix-opts");
    for (var i = 0; i < cntrls.length; i++) {
        var encdiv = document.getElementById("picked_" + cntrls[i].value);
        if (cntrls[i].checked) {
            encdiv.className = "picked";
        } else {
            encdiv.className = "pickme";
        }
    }
}

function selectPickNMixDiv(btnid) {
    var btn = document.getElementById(btnid);
    if (btn) {
        btn.checked = true;
        selectPickNMix();
    }
}

var historyTracker = -1;

function backToCallingPage() {
    var h = historyTracker;
    historyTracker = -1;
    history.go(h);
}

