﻿// --------
// Table hover states
// --------

(function() {



// Supporting functions
//

function addClass(obj, className) {
    var re = new RegExp("\\b" + className + "\\b");
    if (!re.test(obj.className)) obj.className += " " + className;
}

function removeClass(obj, className) {
    var re = new RegExp("\\b" + className + "\\b");
    obj.className = obj.className.replace(re, "");
}





// Event assignment
//

if (!window.XMLHttpRequest) {
    function onRowMouseover() {
        addClass(this, "hover");
    }

    function onRowMouseout() {
        removeClass(this, "hover");
    }

    function setupTableHoverEvents() {
        var rows = document.getElementsByTagName("tr");
        var row, r=0;
        while (row = rows[r++]) {
            row.onmouseover = onRowMouseover;
            row.onmouseout = onRowMouseout;
        }
    }


    if (!window.onload) {
        window.onload = setupTableHoverEvents;
    }
    else {
        var oldLoadFunc = window.onload;
        window.onload = function() {
            oldLoadFunc();
            setupTableHoverEvents();
        }
    }
}





})()