//======================== Get elements by class name ============================//
	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)
	}
	
//======================== Expanding script ============================//
	function swapOne(obj){
		navCont = document.getElementById("serviceNav");
		openULs = getElementsByClassName(navCont,"ul", "serviceMenuLevel1 openLvl1");
		
		for(i=0; i<openULs.length; i++){
			if(openULs[i]!=obj){
				openULs[i].className = "serviceMenuLevel1";
			
			}
		}
		
		if(obj.className =="serviceMenuLevel1"){ 
			obj.className = "serviceMenuLevel1 openLvl1";
		}else{
			obj.className = "serviceMenuLevel1";
		}
				
	}
	
	function swapTwo(obj){
		if(obj.className =="serviceMenuLevel2"){ 
			obj.className = "serviceMenuLevel2 openLvl2";
		}else{
			obj.className = "serviceMenuLevel2";
		}
	}


//======================== Event Expanding script ============================//
var _eventTab;

function openCloseEvent(src){
		if(src.parentNode.parentNode.parentNode.parentNode.tagName=="UL"){
			//alert("td hit");
			focusUL = src.parentNode.parentNode.parentNode.parentNode;
		}else if(src.parentNode.parentNode.parentNode.parentNode.parentNode.tagName=="UL"){
			//alert("text hit");
			focusUL = src.parentNode.parentNode.parentNode.parentNode.parentNode;
		}
		
		lists = _eventTab.getElementsByTagName("ul");
		
		for(i=0; i<lists.length; i++){
			if(lists[i]==focusUL){
				if(focusUL.className=="closedEvent"){
					focusUL.className = "openEvent";
				}else if(focusUL.className=="openEvent"){
					focusUL.className = "closedEvent";
				}
			
			}else{
				lists[i].className = "closedEvent";
			}
		}
}

//======================== Colour Alternating script ============================//
function setColours(){
	_eventTab = document.getElementById("upcomingTable");
	eventRows = getElementsByClassName(_eventTab,"td", "eventRow");	
	
	for(i=0; i<eventRows.length; i++){
		if(i%2==0){
			eventRows[i].className = "altColour";
		}
	}
}

function setConsultColours(){
	consultTable = document.getElementById("consultResultTable");
	
	if(consultTable){
		resultRows = getElementsByClassName(consultTable,"tr", "consultantListing");	
		
		
		for(i=0; i<resultRows.length; i++){
			if(i%2==0){
				resultRows[i].className = "altColour";
			}
		}
	}
}
