// CSS class of tables to be striped on load
CSS_ZEBRA = "zebra";
// CSS class of even rows
CSS_EVEN = "";
// CSS class of odd rows
CSS_ODD = "alt";

function stripe(table) {
	var tbodies = table.getElementsByTagName("TBODY");
	var rows;
	var classes;
	for ( var i = 0; i < tbodies.length; i++ ) {
		var rows = tbodies[i].getElementsByTagName("TR");
		for ( var j = 0; j < rows.length; j++ ) {
			classes = rows[j].className.split(" ");
			classes.push(j % 2 == 0 ? CSS_EVEN : CSS_ODD);
			rows[j].className = classes.join(" ").replace(/\s+/, " ").replace(/^\s+|\s+$/, "");
		}
	}
}


function init(e) {
	// Stripe all tables with zebra class
	( function() {
		var tables = document.getElementsByTagName("TABLE");
		for ( var i = 0; i < tables.length; i++ ) {
			if ( eval("/(?:\\s|^)"+CSS_ZEBRA+"(?:\\s|$)/").test(tables[i].className) ) {
				stripe(tables[i]);
			}
		}
	} )();
}

if ( window.addEventListener ) addEventListener("load", init, false);
else window.attachEvent("onload", init);
