/*
	vibrantTable()
	written by Ryan Cannon
	combines and enhances scripts by Chris Heilmann and David F. Miller.
	alternates color of each row, and highlights a hovered row, as per the
	document's stylesheet. Requires definition of the following styles:
		table.vibrant tr.even
		table.vibrant tr.odd
		table.vibrant td.selected
*/

function vibrantTable() {
	var even = false;
	if ( document.getElementById && document.createTextNode ) {
		var tables = document.getElementsByTagName('table');
		for ( var i=0; i < tables.length; i++ ) {
			var classes_array = tables[i].className.split(' ');
			var isVibrant = false;
			for ( var g = 0; g < classes_array.length; g++ ) {
				if ( classes_array[g] == 'vibrant' )
					isVibrant = true;
			}
			if (  isVibrant ) {
				var trs = tables[i].getElementsByTagName('tr');
				for ( var j =0; j < trs.length; j++ ) {
					if ( trs[j].parentNode.nodeName.toLowerCase() == 'tbody' ) {
						var mytr = trs[j];
						mytr.className= even ? 'even' : 'odd';
						trs[j].onmouseover = function() {
							tds = this.childNodes;
							for ( var k=0; k < tds.length; k++ ) {
								tds[k].className = 'selected';
							}
							return false;
						}
						trs[j].onmouseout = function() {
							tds = this.childNodes;
							for ( var k=0; k < tds.length; k++ ) {
								tds[k].className = '';
							}
							return false;
						}
					}
					even =	! even;
				}
			}
		}
	}
}
// Set to run after page loads
YAHOO.util.Event.addListener(window,"load",vibrantTable,false);