//** Tab Content script- © Dynamic Drive DHTML code library (http://www.dynamicdrive.com)
//** Last updated: Nov 8th, 06

var enabletabpersistence = 0; //enable tab persistence via session only cookies, so selected tab is remembered?

////NO NEED TO EDIT BELOW////////////////////////
var tabcontentIDs = new Object();
var ulist = Array(); //array containing the LI

function expandcontent(linkobj){
	var ulid = linkobj.parentNode.parentNode.id; //id of UL element
	var ullist = ulist;
	for (var n = 0; n < ullist.length; n++){
		document.getElementById(ullist[n].getElementsByTagName("a")[0].getAttribute("rel")).style.display = "none";
	}
	
	for (var i = 0; i < ullist.length; i ++){
		ullist[i].className = ""; //deselect all tabs
	}
	linkobj.parentNode.className = "selected";  //highlight currently clicked on tab
	document.getElementById(linkobj.getAttribute("rel")).style.display = "block"; //expand corresponding tab content
	saveselectedtabcontentid(ulid, linkobj.getAttribute("rel"));
}

function expandtab(tabcontentid, tabnumber){ //interface for selecting a tab (plus expand corresponding content)
	var thetab = document.getElementById(tabcontentid).getElementsByTagName("a")[tabnumber];
	if (thetab.getAttribute("rel")){
		expandcontent(thetab);
	}
}

function savetabcontentids(ulid, relattribute){// save ids of tab content divs
	if (typeof tabcontentIDs['tabs'] == "undefined"){ //if this array doesn't exist yet
		tabcontentIDs['tabs'] = new Array();
	}
	tabcontentIDs['tabs'].push(relattribute);
}

function saveselectedtabcontentid(ulid, selectedtabid){ //set id of clicked on tab as selected tab id & enter into cookie
	if (enabletabpersistence == true) { //if persistence feature turned on
		setCookie(ulid, selectedtabid);
	}
}

function getullistlinkbyId(ulid, tabcontentid){ //returns a tab link based on the ID of the associated tab content
	var ullist = ulist;
	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 initializetabcontent(){
	if (document.getElementById('left_image1')){
		defaultImage1 = document.getElementById('left_image1').src;
	}
	if (document.getElementById('left_image2')){
		defaultImage2 = document.getElementById('left_image2').src;
	}
	for (var i = 0; i < arguments.length; i++){ //loop through passed UL ids
		if (enabletabpersistence == 0 && getCookie(arguments[i]) != ""){ //clean up cookie if persist=off
			setCookie(arguments[i], "");
			var clickedontab = 0; //retrieve ID of last clicked on tab from cookie, if any
		}
		var ulobj = document.getElementById(arguments[i]);
		for (var n = 0; n < ulobj.getElementsByTagName("li").length; n++){
			ulist.push(ulobj.getElementsByTagName("li")[n]);
		}
	} //end outer for loop
	for (var x = 0; x < ulist.length; x ++){ //loop through each LI element
		var ulistlink = ulist[x].getElementsByTagName("a")[0];
		
		if (ulistlink.getAttribute("rel")){
			savetabcontentids(ulist, ulistlink.getAttribute("rel")) //save id of each tab content as loop runs
			
			
			ulistlink.onclick = function(){	
				if (document.getElementById('left_image1')){
					if (this.getAttribute('image1')){
						document.getElementById('left_image1').src = this.getAttribute('image1');
					}else{
						document.getElementById('left_image1').src = defaultImage1;
					}
				}
				if (document.getElementById('left_image2')){
					if (this.getAttribute('image2')){
						document.getElementById('left_image2').src = this.getAttribute('image2');
					}else{
						document.getElementById('left_image2').src = defaultImage2;
					}	
				}
				expandcontent(this);
				return false;
			}
			
			
			if (ulist[x].className == "selected"){ //if a tab is set to be selected by default
				if (document.getElementById('left_image1')){
					if (ulistlink.getAttribute('image1')){
						document.getElementById('left_image1').src = ulistlink.getAttribute('image1');
					}else{
						document.getElementById('left_image1').src = defaultImage1;
					}
				}
				if (document.getElementById('left_image2')){
					if (ulistlink.getAttribute('image2')){
						document.getElementById('left_image2').src = ulistlink.getAttribute('image2');
					}else{
						document.getElementById('left_image2').src = defaultImage2;
					}	
				}
				
				expandcontent(ulistlink); //auto load currenly selected tab content
			}
			
			
		}
	} //end inner for loop
	
	if (clickedontab != ""){ //if a tab has been previously clicked on per the cookie value
		var culistlink = getullistlinkbyId(arguments[i], clickedontab);
		if (typeof culistlink != "undefined"){ //if match found between tabcontent id and rel attribute value
			expandcontent(culistlink); //auto load currenly selected tab content
		}else{ //else if no match found between tabcontent id and rel attribute value (cookie mis-association)
			//expandcontent(ulist[0].getElementsByTagName("a")[0]); //just auto load first tab instead
		}
	}
	
}


function getCookie(Name){ 
	var re = new RegExp(Name + "=[^;]+", "i"); //construct RE to search for target name/value pair
	if (document.cookie.match(re)){ //if cookie found
		return document.cookie.match(re)[0].split("=")[1]; //return its value
	}
	return "";
}

function setCookie(name, value){
	document.cookie = name+"="+value; //cookie value is domain wide (path=/)
}