// Global Javascript for La Trobe templates v3 */  
// Copyright (c) 2007, La Trobe University */        
// Last edit: July 24, 2007 */


/*
	Get elements by Class: http://www.robertnyman.com/2005/11/07/the-ultimate-getelementsbyclassname/
	Written by Jonathan Snook, http://www.snook.ca/jonathan
	Add-ons by Robert Nyman, http://www.robertnyman.com
*/

function getElementsByClassName(oElm, strTagName, oClassNames){
	var arrElements = (strTagName == "*" && oElm.all)? oElm.all : oElm.getElementsByTagName(strTagName);
	var arrReturnElements = new Array();
	var arrRegExpClassNames = new Array();
	if(typeof oClassNames == "object"){
		for(var i=0; i<oClassNames.length; i++){
			arrRegExpClassNames.push(new RegExp("(^|\\s)" + oClassNames[i].replace(/\-/g, "\\-") + "(\\s|$)"));
		}
	}
	else{
		arrRegExpClassNames.push(new RegExp("(^|\\s)" + oClassNames.replace(/\-/g, "\\-") + "(\\s|$)"));
	}
	var oElement;
	var bMatchesAll;
	for(var j=0; j<arrElements.length; j++){
		oElement = arrElements[j];
		bMatchesAll = true;
		for(var k=0; k<arrRegExpClassNames.length; k++){
			if(!arrRegExpClassNames[k].test(oElement.className)){
				bMatchesAll = false;
				break;
			}
		}
		if(bMatchesAll){
			arrReturnElements.push(oElement);
		}
	}
	return (arrReturnElements)
}



// Alternating table row colours

function altTableRow(){
 if(document.getElementsByTagName){
   var tableArr = getElementsByClassName(document, "table", "table-alt-row");
   for (j = 0; j < tableArr.length; j++) {
	   table = tableArr[j];
	   var rows = table.getElementsByTagName("tr");
	   for(i = 0; i < rows.length; i++){
	 //manipulate rows
		 if(i % 2 == 0){
		   rows[i].className = "even";
		 }else{
		   rows[i].className = "odd";
		 }
	   }
   }
 }
}


// Add event handlers here
// Function by Simon Willison, http://www.sitepoint.com/blogs/2004/05/26/closures-and-executing-javascript-on-page-load/

function addLoadEvent(func) {
  var oldonload = window.onload;
  if (typeof window.onload != 'function') {
    window.onload = func;
  } else {
    window.onload = function() {
      if (oldonload) {
        oldonload();
      }
      func();
    }
  }
}

addLoadEvent(altTableRow);
addLoadEvent(function() {
  /* copy the 2 lines above for each new event */ 
});