// JavaScript Document for INP271 Lab4, Mike Behnke

var modifyTable = {
	
	// Get the table, assign useful variables 
	theTable : null, 
	firstTD : null,
	maxrows : null,
	
	makeChanges : function() {

		if (!document.getElementById && !document.getElementsByTagName) { return; }
		
		modifyTable.theTable = document.getElementsByTagName('table')[0];
		modifyTable.maxrows = modifyTable.theTable.rows.length;
		
		// Loop through entire table
		for (var i=0; i<modifyTable.maxrows; i++) {
			// Center final column
			modifyTable.theTable.rows[i].cells[5].className = 'ctr';
	
			// Add text nodes for hours
			modifyTable.theTable.rows[i].cells[3].appendChild(document.createTextNode(' hours'));

			// Grey out non-billable items
			modifyTable.firstTD = modifyTable.theTable.rows[i].cells[0].firstChild.data;
			if (modifyTable.firstTD == 'Non-Billable') {
				modifyTable.theTable.rows[i].className = 'gry';
			}
		}
	},

	// associating nodes with events and functions
   addEvent : function(obj, type, func) {
       if (obj.addEventListener) {obj.addEventListener(type, func, false);}
       else if (obj.attachEvent) {
           obj["e" + type + func] = func;
           obj[type + func] = function() {obj["e" + type + func] (window.event);}
           obj.attachEvent("on" + type, obj[type + func]);
       }
       else {obj["on" + type] = func;}
   }
   
}

modifyTable.addEvent(window, 'load', modifyTable.makeChanges);
