function addLoadEvent(func) {
  var oldonload = window.onload;
  if (typeof window.onload != 'function') {
    window.onload = func;
  } else {
    window.onload = function() {
      oldonload();
      func();
    }
  }
}

function addClass(element,value) {
	if (!element.className) {
		element.className = value;
	} else {
		newClassName = element.className;
		newClassName+= " ";
		newClassName+= value;
		element.className = newClassName;
	}
}

function stripeTables() {
	if (!document.getElementsByTagName) return false;
	var tables = document.getElementsByTagName("table");
	for (var i=0; i<tables.length; i++) {
		var tableDataClass = tables[i].className;
		if (tableDataClass == "tblDataStriped") {
			var odd = false;
			var rows = tables[i].getElementsByTagName("tr");
			for (var j=0; j<rows.length; j++) {
				// stripe odd rows
				if (odd == true) {
					addClass(rows[j],"odd");
					odd = false;
				} else {
					odd = true;
				}
			}
		}
	}
}

function highlightRows() {
	if (!document.getElementsByTagName) return false;
	var tables = document.getElementsByTagName("table");
	for (var i=0; i<tables.length; i++) {
		var tableDataClass = tables[i].className;
		if (tableDataClass == "tblDataStriped") {
			var odd = false;
			var rows = tables[i].getElementsByTagName("tr");
			for (var j=0; j<rows.length; j++) {
			// highlight rows onmouseover
				rows[j].oldClassName = rows[j].className
				rows[j].onmouseover = function() {
					addClass(this,"highlight");
				}
				rows[j].onmouseout = function() {
					this.className = this.oldClassName
				}
			}
		}
	}
}

addLoadEvent(stripeTables);
//addLoadEvent(highlightRows);
