/* $Id: collapse.js,v 1.1 2005/08/28 23:18:07 charlie Exp $
 * These functions are used with the FAQs to hide and unhide
 * different categories.
 */
var DHTML4 = (document.getElementsByTagName && (document.getElementById || document.all || document.layers));
function toggleDisplay(rid) {
    if (!DHTML4) return;
    var x = document.getElementsByTagName('tr');
    var found = false;
    for (var i=0;i<x.length;i++) {
        if (x[i].id == rid) {
            if (x[i].style.display == '') { x[i].style.display = 'none'; }
            else { x[i].style.display = ''; }
            found = true;
        }
    }
    if (found) changeContent(rid);
}
function changeContent(rid) {
    if (!DHTML4) return;
    var x = document.getElementsByTagName('img');
    for (var i=0;i<x.length;i++) {
        if (x[i].id == rid) {
            split = x[i].src.split("images/");
            if (split[1] == 'collapse.gif') { x[i].src = '/resources/images/expand.gif'; }
            else { x[i].src = '/resources/images/collapse.gif'; }
        }
    }
}
function expandHash() {
    if (!DHTML4) return;
    if (!location.hash) return; // Expand if a question is wanted.
    var hash = location.hash.substring(1);
    var td = document.getElementById(hash); // Hash must match row id.
    if (!td) return;
    if (td.parentNode) { tr = td.parentNode; } // Get parent id.
    else if (td.parentElement) { tr = td.parentElement; }
    else return;
    if (tr.id) {
        toggleOn(tr.id);
        if (td.scrollIntoView) { td.scrollIntoView(); }
    }
}
function toggleOff(rid) {
    if (!DHTML4) return;
    var x = document.getElementsByTagName('tr');
    var found = false;
    for (var i=0;i<x.length;i++) {
        if (x[i].id == rid) {
            if (x[i].style.display == '') {
                x[i].style.display = 'none';
                found = true;
            }
        }
    }
    if (found) changeContent(rid);
}
function toggleOn(rid) {
    if (!DHTML4) return;
    var x = document.getElementsByTagName('tr');
    var found = false;
    for (var i=0;i<x.length;i++) {
        if (x[i].id == rid) {
            if (x[i].style.display == 'none') {
                x[i].style.display = '';
                found = true;
            }
        }
    }
    if (found) changeContent(rid);
}

