function hasClass(obj) {
    var result = false;
    if (obj.getAttributeNode("class") !== null)
    result = obj.getAttributeNode("class").value;
    return result;
} 

function stripe() {
    var evenColor = arguments[1] ? arguments[1] : "#e3f0f7";
    var oddColor = arguments[2] ? arguments[2] : "#FFF";
    var tables = document.getElementsByTagName("table");
    if (! tables) return;
    for (var k = 0; k < tables.length; k++) {
        var table = tables[k];  
        if ( true ) {
            var even = false;
            var tbodies = table.getElementsByTagName("tbody");
            for (var h = 0; h < tbodies.length; h++) {
                var trs = tbodies[h].getElementsByTagName("tr");
                for (var i = 1; i < trs.length && trs.length >= 3; i++) {
                    if (! hasClass(trs[i]) && ! trs[i].style.backgroundColor) {
                        var tds = trs[i].getElementsByTagName("td");
                        for (var j = 0; j < tds.length; j++) {
                            var mytd = tds[j];
                            if (! hasClass(mytd) && ! mytd.style.backgroundColor)
                                mytd.style.backgroundColor = even ? evenColor : oddColor;
                        }
                        var tds = trs[i].getElementsByTagName("th");
                        for (var j = 0; j < tds.length; j++) {
                            var mytd = tds[j];
                            if (! hasClass(mytd) && ! mytd.style.backgroundColor)
                                mytd.style.backgroundColor = even ? evenColor : oddColor;
                        }
                    }
                    even =  ! even;
                }
            }
        }
    }
}