// Dean Edwards/Matthias Miller/John Resig

function init() {
	
	if (arguments.callee.done) return;

	
	arguments.callee.done = true;

	
	if (_timer) clearInterval(_timer);

	
	prep();
}	

/* for Mozilla/Opera9 */
if (document.addEventListener) {
	document.addEventListener("DOMContentLoaded", init, false);
}

/* for Internet Explorer */
/*@cc_on @*/
/*@if (@_win32)
	document.write("<script id=__ie_onload defer src=javascript:void(0)><\/script>");
	var script = document.getElementById("__ie_onload");
	script.onreadystatechange = function() {
		if (this.readyState == "complete") {
			init(); // call the onload handler
		}
	};
/*@end @*/

/* for Safari */
if (/WebKit/i.test(navigator.userAgent)) { // sniff
	var _timer = setInterval(function() {
		if (/loaded|complete/.test(document.readyState)) {
			init(); // call the onload handler
		}
	}, 10);
}

/* for other browsers */
window.onload = init;

function prep()
{
	var tabset = document.getElementById("foodsContainer").getElementsByTagName("ul")[0];
	var tabs = tabset.getElementsByTagName("li");
	
	for (var i = 0; i < tabs.length; i++)
	{
		if (tabs[i].className.indexOf("external") == -1) // don't attach to any that leave the page
		{
			tabs[i].childNodes[0].onclick = function(){return selectTab(this.parentNode.className);};
		}
	}
	
	var foodFinder = document.getElementById("foodFinder");
	
	if (foodFinder)
	{
		var headings = foodFinder.getElementsByTagName("h4");
		
		for (var i = 0; i < headings.length; i++)
		{
			//divState(headings[i]);
			
			headings[i].onclick = divState;
		}
		
		var closeDivLinks = document.getElementsByClassName('closeAllDivs')
		for (var i = 0; i < closeDivLinks.length; i++)
		{
			toggleSection(closeDivLinks[i]);
		
		}
		
	}
	
	var hashIndex = location.href.indexOf("#");
	
	if (hashIndex > 0)
	{
		selectTab(location.href.substring(hashIndex + 1));
		
		setTimeout("window.scrollTo(0, 0)", 50);
	}
	else if (window.selectInitialTab)
	{
		selectInitialTab(); // this is in the "introCopy" HTML
	}
}

function divState(e)
{
	if (!e) e = window.event;
	if (!e.tagName) e = (window.event) ? e.srcElement : e.target;
 	
	var target = e.parentNode;
	
	if (target.className != "closed")
	{
		target.className = "closed";
		if(sectionAllClosed(target))
			toggleSectionLinkOnly(target,'open');
	}
	else
	{
		target.className = "open";
		toggleSectionLinkOnly(target,'closed');
	}
}


function closeSection(e)
{
	var target = e.parentNode;
	var headings = target.getElementsByTagName("h4");
	
	for (var i = 0; i < headings.length; i++)
	{
		closeProductTypes(headings[i]);
	}
	
	var foodParam = location.hash;
		
 	if (foodParam == "#allDry") 
	{
		document.getElementById('AllDryFood').className = 'open';
		document.getElementById('productRecommender').style.display='none';
	}
	
	if (foodParam == "#allCanned") 
	{
		document.getElementById('AllCannedFood').className = 'open';
		document.getElementById('productRecommender').style.display='none';
	}
	
	if (foodParam == "#treats") 
	{
		document.getElementById('biscuitTreats').className = 'open';
		document.getElementById('productRecommender').style.display='none';
	}
	
	if (foodParam == "#savorySauces") 
	{
		document.getElementById('sauces').className = 'open';
		document.getElementById('productRecommender').style.display='none';
	}
	
	if (foodParam == "#kitten") 
	{
		document.getElementById('kittens').className = 'open';
		document.getElementById('productRecommender').style.display='none';
	}
	
	if (foodParam == "#puppy") 
	{
		document.getElementById('puppies').className = 'open';
		document.getElementById('productRecommender').style.display='none';
	}
	
	if (foodParam == "#adult") 
	{
		document.getElementById('adults').className = 'open';
		document.getElementById('productRecommender').style.display='none';
	}
	
	if (foodParam == "#matureSenior") 
	{
		document.getElementById('seniorFood').className = 'open';
		document.getElementById('productRecommender').style.display='none';
	}
	
	if (foodParam == "#allergyConditions") 
	{
		document.getElementById('allergyFood').className = 'open';
		document.getElementById('productRecommender').style.display='none';
	}
	
	if (foodParam == "#intestinalHealth") 
	{
		document.getElementById('intestinalFood').className = 'open';
		document.getElementById('productRecommender').style.display='none';
	}
	
	if (foodParam == "#jointHealth") 
	{
		document.getElementById('jointFood').className = 'open';
		document.getElementById('productRecommender').style.display='none';
	}
	
	if (foodParam == "#urinaryConditions") 
	{
		document.getElementById('uFood').className = 'open';
		document.getElementById('productRecommender').style.display='none';
	}
	
	if (foodParam == "#kidneyConditions") 
	{
		document.getElementById('kFood').className = 'open';
		document.getElementById('productRecommender').style.display='none';
	}
	
	if (foodParam == "#weightManagement") 
	{
		document.getElementById('weightFood').className = 'open';
		document.getElementById('productRecommender').style.display='none';
	}
}

function closeProductTypes(e)
{
	if (!e) e = window.event;
	if (!e.tagName)	e = (window.event) ? e.srcElement : e.target;
	
	var target = e.parentNode;
	
	target.className = "closed";
}

function openSection(e)
{
	var target = e.parentNode;
	var headings = target.getElementsByTagName("h4");
	
	for (var i = 0; i < headings.length; i++)
	{
		openProductTypes(headings[i]);
	}
}

function openProductTypes(e)
{
	if (!e) e = window.event;
	if (!e.tagName)	e = (window.event) ? e.srcElement : e.target;
	
	var target = e.parentNode;
	
	target.className = "open";
}


function toggleSection(e)
{
	var innerH = e.innerHTML;
	if(innerH == 'Open All')
	{ 
		e.innerHTML = 'Close All';
		openSection(e);
		
	}
	else
	{
		e.innerHTML = 'Open All';
		closeSection(e);
		
	}
}

function toggleSectionLinkOnly(target, type)
{
	var e = target.parentNode;
	var elementArray = e.getElementsByTagName('a');
	
	
	for (var i = 0; i < elementArray.length; i++)
	{
		var innerH = elementArray[i].innerHTML;
		if(innerH == 'Open All' && type == 'closed')
		{ 
			elementArray[i].innerHTML = 'Close All';
			break;
		}
		else if(innerH =='Close All' && type == 'open')
		{
			elementArray[i].innerHTML = 'Open All';
			break;
		}
		
	}
}

function sectionAllClosed(e)
{
	var elementArray = e.parentNode.getElementsByTagName('div');
	
	for (var i = 0; i < elementArray.length; i++)
	{
		if(elementArray[i].className == 'open')
		return false;
	}
	return true;
}

function selectTab(name)
{
	document.getElementById('foodsContainer').className = name;
	
	return false;
}


document.getElementsByClassName = function(cl) {
	var retnode = [];
	var myclass = new RegExp('\\b'+cl+'\\b');
	var elem = this.getElementsByTagName('*');
	for (var i = 0; i < elem.length; i++) {
		var classes = elem[i].className;
		if (myclass.test(classes)) retnode.push(elem[i]);
	}
	return retnode;
}



