function jNull() {
    /* Firefox whines that javascript:null() is not defined.
     * The heck it isn't. But anyway, since all the href's are blank for now,
     * and using # causes problems, here's a function that defines a variable but does nothing.
     * Keeps firefox happy in the meantime. 
     */
    var i = 0;
    }
    
function switchContentBox(newbox) {
    /* new box is the integer number of the box to be switched to; 
     * e.g. the box corresponding to id="box<newbox>"
     */
    var i;
    var dimmedbox;
    var dimmedtab;
    var activebox = document.getElementById("box" + newbox);
    var activetab = document.getElementById("tab" + newbox);
            
    /* Changes active tab and box */
    activebox.style.display = "block";
    activetab.className = "active-tab";


// FIXME: "4" is a magic number that should be removed.
    /* Resets all other tabs and boxes */
    for (i = 1; i <= 4; i++) {
        if (i != newbox) {
            dimmedbox = document.getElementById("box" + i);
            dimmedbox.style.display = "none";
            dimmedtab = document.getElementById("tab" + i);
            dimmedtab.className = "dimmed-tab";
        }
    }
             
             
}

function toggleSideBox(boxid) {
    /* toggleSideBox(boxid)
     *  checks the current display status of the given boxid
     *  and reverses it.
     */
    var box = document.getElementById("sidebox" + boxid);
    box.style.display = (box.style.display == "none" ? "block" : "none");

    }
    
function dockLeft() {
    var sidecolumn = document.getElementById("sidecolumn");
    var widecolumn = document.getElementById("widecolumn");
    sidecolumn.className = "float-left";
    widecolumn.className = "float-right";
    }

function dockRight() {
    var sidecolumn = document.getElementById("sidecolumn");
    var widecolumn = document.getElementById("widecolumn");
    sidecolumn.className = "float-right";
    widecolumn.className = "float-left";
    }
    
    
    
/* LEGACY FUNCTIONS 
 * 
 * These functions are no longer being used, but are kept (for now) for legacy, transitional purposes.
 */
 
function toggleMoreDropBox() {
    var dropbox = document.getElementById("more-extended");
    dropbox.style.visibility = (dropbox.style.visibility == "visible" ? "hidden" : "visible");
    /* if the more-extended div is currently visible, it becomes hidden, and vice versa. */

    }   
    
function vanishDropBox() {
    /* After a 2 second delay, vanishes the drop box. */
    setTimeout("document.getElementById('more-extended').style.visibility = 'hidden'",2000);
    }

function keepDropBox() {
    var dropbox = document.getElementById("more-extended");
    dropbox.style.visibility = "visible";
    }
    
    
function expandBox(boxnum) {
    /* for the sidebar content boxes: collapsing */
    var box = document.getElementById("sidebox" + boxnum);
    box.style.display = "block";
    }
    
function collapseBox(boxnum) {
    /* for the sidebar content boxes: collapsing */
    var box = document.getElementById("sidebox" + boxnum);
    box.style.display = "none";
    }
    

function toggleElement(element) {
    var box = document.getElementById(element);
    if(box.style.display == "none") {
        box.style.display = "block";
    } else {
        box.style.display = "none";
    }
    
}
