//** Tab Content script- © Dynamic Drive DHTML code library (http://www.dynamicdrive.com)
//** Last updated: June 29th, 06
var enableTabPersistence = 1; //save selected tab?

////NO NEED TO EDIT BELOW////////////////////////
var tabcontentIDs = new Object()
var TimerArray = new Array()

function expandcontent(linkobj) { //Someone clicked a tab
	var ulid=linkobj.parentNode.parentNode.id //id of UL element
	if (TimerArray[ulid]) {
		clearTimeout(TimerArray[ulid]);
		//document.getElementById('cycle_'+ulid).innerHTML = 'Off';
	}
	focusTab(linkobj);
}

function focusTab(linkobj) {
	var ulid=linkobj.parentNode.parentNode.id //id of UL element
	var ullist=document.getElementById(ulid).getElementsByTagName("li")
	for (var i=0; i<ullist.length; i++) {
		ullist[i].className=""
		if (typeof tabcontentIDs[ulid][i]!="undefined")
			document.getElementById(tabcontentIDs[ulid][i]).style.display="none"
	}
	linkobj.parentNode.className="selected"
	document.getElementById(linkobj.getAttribute("rel")).style.display="block"

	if (linkobj != 'javascript:void();') {
		ajaxFunction(linkobj.getAttribute("rel"), linkobj);
	}

	saveSelectedTab(ulid, linkobj.getAttribute("rel"))
}

function saveTabs(ulid, relattribute) {
	if (typeof tabcontentIDs[ulid]=="undefined")
		tabcontentIDs[ulid]=new Array()
	tabcontentIDs[ulid][tabcontentIDs[ulid].length]=relattribute
}

function saveSelectedTab(ulid, selectedtabid) {
	if (enableTabPersistence==1)
		setCookie(ulid, selectedtabid)
}

function getullistlinkbyId(ulid, tabcontentid) {
	var ullist=document.getElementById(ulid).getElementsByTagName("li")
	for (var i=0; i<ullist.length; i++) {
		if (ullist[i].getElementsByTagName("a")[0].getAttribute("rel")==tabcontentid) {
			return ullist[i].getElementsByTagName("a")[0]
			break
		}
	}
}

function initTabs() {
	for (var i=0; i<arguments.length; i++) {
		if (enableTabPersistence==0 && getCookie(arguments[i])!="")
			setCookie(arguments[i], "")
		var clickedontab=getCookie(arguments[i])
		var ulobj=document.getElementById(arguments[i])
		var ulist=ulobj.getElementsByTagName("li")
		for (var x=0; x<ulist.length; x++) {
			var ulistlink=ulist[x].getElementsByTagName("a")[0]
			if (ulistlink.getAttribute("rel")) {
				saveTabs(arguments[i], ulistlink.getAttribute("rel"))
				ulistlink.onclick=function() {
					expandcontent(this)
					return false
				}
				if (ulist[x].className=="selected" && clickedontab=="")
					expandcontent(ulistlink)
			}
		}
		if (clickedontab!="") {
			var culistlink=getullistlinkbyId(arguments[i], clickedontab)
			if (typeof culistlink!="undefined")
				expandcontent(culistlink)
			else
				expandcontent(ulist[0].getElementsByTagName("a")[0])
		}
	}
}

function initTabs_noPersist() {
	enableTabPersistence = 0;
	for (var i=0; i<arguments.length; i++) {
		if (enableTabPersistence==0 && getCookie(arguments[i])!="")
			setCookie(arguments[i], "")
		var clickedontab='';
		var ulobj=document.getElementById(arguments[i])
		var ulist=ulobj.getElementsByTagName("li")
		for (var x=0; x<ulist.length; x++) {
			var ulistlink=ulist[x].getElementsByTagName("a")[0]
			if (ulistlink.getAttribute("rel")) {
				saveTabs(arguments[i], ulistlink.getAttribute("rel"))
				ulistlink.onclick=function() {
					expandcontent(this)
					return false
				}
				if (ulist[x].className=="selected" && clickedontab=="")
					expandcontent(ulistlink)
			}
		}
		if (clickedontab!="") {
			var culistlink=getullistlinkbyId(arguments[i], clickedontab)
			if (typeof culistlink!="undefined")
				expandcontent(culistlink)
			else
				expandcontent(ulist[0].getElementsByTagName("a")[0])
		}
	}
}

function getFocusedTab(tab) {
	var ulobj=document.getElementById(tab)
	var ulist=ulobj.getElementsByTagName("li")
	for (var i=0; i < ulist.length; i++) {
		if (ulist[i] && ulist[i].tagName == "LI" ) {
			if (ulist[i].className=="selected")
				return i;
		}
	}
	return 0;
}

function rotateTabs(tab) {
	if (TimerArray[tab])
		clearTimeout(TimerArray[tab]);
	var ulobj=document.getElementById(tab)
	var ulist=ulobj.getElementsByTagName("li")
	var totalTabs = ulist.length;
	var focusedTab = getFocusedTab(tab);
	var nextTab = focusedTab+1;
	for (var j=0; j < ulist.length-1; j++) {
		if (ulist[j] && ulist[j].tagName == "LI" ) {
			if (focusedTab == j && j < totalTabs) {
				nextTab = j+1;
				if (ulist[nextTab].getElementsByTagName("a")[0].getAttribute("rel") == '')
					nextTab = j+2;
			}
		}
	}
	if (nextTab == totalTabs) nextTab = 0;
	focusTab(ulist[nextTab].getElementsByTagName("a")[0]);
}

function cycle(id,count,reset) {
	if (TimerArray[id])
		clearTimeout(TimerArray[id]);
	count = count - 1;
	if (count <= 0) {
		count = reset;
		rotateTabs(id);
	}
	//document.getElementById('cycle_'+id).innerHTML = count;
	TimerArray[id] = setTimeout("cycle('"+id+"',"+count+","+reset+")", 1000);
}


function ajaxFunction(id, url){
	var xmlHttp;
	try {// Firefox, Opera 8.0+, Safari
		xmlHttp = new XMLHttpRequest();		
	} catch (e) {// Internet Explorer
		try {
			xmlHttp = new ActiveXObject("Msxml2.XMLHTTP");
		} catch (e) {
			try {
				xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
			} catch (e) {
				alert("Your browser does not support AJAX!");
				return false;
			}
		}
	}
	
	xmlHttp.onreadystatechange = function(){
		if (xmlHttp.readyState == 4) {
			//Get the response from the server and extract the section that comes in the body section of the second html page avoid inserting the header part of the second page in your first page's element
			var respText = xmlHttp.responseText.split('<body>');
			elem.innerHTML = respText[1].split('</body>')[0];
		}
	}

	var elem = document.getElementById(id);
	if (!elem) {
		alert('The element with the passed ID doesn\'t exists in your page');
		return;
	}

	xmlHttp.open("GET", url, true);
	xmlHttp.send(null);
}		

