canGoCatURL = false;
growShrink1 = growShrink2 = growShrink3 = growShrink4 = growShrink5 = 0;
imageFadeLevel = 0;
catCoverXPos = -75;
finalCatCoverXPos = 90;

function subNav(elem,newHeight) {
	if (browser == "notIE") {
		for(i=1;i<=5;i++) {
			subNavElem = document.getElementById("subNav"+i);
			if (elem!=i) {subNavElem.style.height = "0px";};
		}
		subNavElem = document.getElementById("subNav"+elem);
		subNavElem.style.height.substr(0,subNavElem.style.height.length-2)*1 > 0 ? canGoCatURL = true : subNavElem.style.height = newHeight + "px";
	} else {
		// if all setIntervals have cleared
		if (growShrink1==0 && growShrink2==0 && growShrink3==0 && growShrink4==0 && growShrink5==0) {
			for (i=1;i<=5;i++) {
				if (elem!=i) {eval("growShrink"+i+"=setInterval('growShrinkSubNav("+i+",\\'shrink\\',0)',40)")};
			}
			subNavElem = document.getElementById("subNav"+elem);
			if (subNavElem.style.height.substr(0,subNavElem.style.height.length-2)*1 > 0) {
				canGoCatURL = true;
			} else {
				eval("growShrink"+elem+"=setInterval('growShrinkSubNav("+elem+",\\'grow\\',"+newHeight+")',40)");
			}
		}
	}
}

// Same nice CSS3 transition effect in JS for IE
function growShrinkSubNav(elemID,dir,finalHeight) {
	subNavElem = document.getElementById("subNav"+elemID);
	sNavHeight = subNavElem.style.height.substr(0,subNavElem.style.height.length-2)*1;
	if (dir=="grow") {
		sNavHeight < (finalHeight-1) ? subNavElem.style.height = sNavHeight + ((finalHeight-sNavHeight)/3) + "px" : sNavHeight = finalHeight;
	}
	if (dir=="shrink") {
		sNavHeight > (finalHeight+1) ? subNavElem.style.height = ((sNavHeight-finalHeight)/3) + "px" : sNavHeight = finalHeight;
	}
	if (sNavHeight==finalHeight) {
		subNavElem.style.height = finalHeight + "px";
		clearInterval(eval("growShrink"+elemID));
		eval("growShrink"+elemID+"=0");
	}
}

function goCatUrl(catUrl) {
	if (canGoCatURL) {window.location = catUrl};
}

function showCatalogue(rootPath,urlExtra) {
	gotoPage = -1; // Set a default, gets adjusted to +1

	if (urlExtra==rootPath+"Pumps/index.asp") {gotoPage=8};
	if (urlExtra==rootPath+"Pumps/Diesel-Tank-Fittings.asp") {gotoPage=8};
	if (urlExtra==rootPath+"Pumps/Pipe-Fittings.asp") {gotoPage=13};
	if (urlExtra==rootPath+"Pumps/Hose-Assemblies.asp") {gotoPage=15};
	if (urlExtra==rootPath+"Pumps/Pumps-Filtration-and-Equipment.asp") {gotoPage=16};
	if (urlExtra==rootPath+"Pumps/Spill-Kits.asp") {gotoPage=38};
	if (urlExtra==rootPath+"Pumps/ADR-Equipment.asp") {gotoPage=46};
	if (urlExtra==rootPath+"Pumps/PuraFuel-Fuel-Treatment.asp") {gotoPage=30};
	if (urlExtra==rootPath+"Pumps/EnviroBasin-Spill-Absorbents-and-Kits.asp") {gotoPage=38};

	if (urlExtra==rootPath+"fuel-transport/index.asp") {gotoPage=48};
	if (urlExtra==rootPath+"fuel-transport/Fuel-Dispensers.asp") {gotoPage=50};
	if (urlExtra==rootPath+"fuel-transport/Abbi-Fuel-Bowsers.asp") {gotoPage=56};
	if (urlExtra==rootPath+"fuel-transport/TransCube-IBC-Fuel-Containers.asp") {gotoPage=64};
	if (urlExtra==rootPath+"fuel-transport/TransCube-Standby-Fuel-Tanks.asp") {gotoPage=80};
	if (urlExtra==rootPath+"fuel-transport/TransCube-ISO-Fuel-Containers.asp") {gotoPage=82};
	if (urlExtra==rootPath+"fuel-transport/Diesel-Master.asp") {gotoPage=48};

	if (urlExtra==rootPath+"fuel-storage/index.asp") {gotoPage=92};
	if (urlExtra==rootPath+"fuel-storage/EnviroBulka-Oil-Storage-.asp") {gotoPage=94};
	if (urlExtra==rootPath+"fuel-storage/EnviroBulka-Fuel-Stations.asp") {gotoPage=102};
	if (urlExtra==rootPath+"fuel-storage/Fuel-Management-and-Weights-and-Measures-Pumps.asp") {gotoPage=112};
	if (urlExtra==rootPath+"fuel-storage/EnviroBulka-Bulk-Fuel-Storage.asp") {gotoPage=113};
	if (urlExtra==rootPath+"fuel-storage/EnviroBulka-Commercial-Fluid-Handling.asp") {gotoPage=114};

	if (urlExtra==rootPath+"Storage-and-Handling-of-Hazardous-Materials/index.asp") {gotoPage=116};
	if (urlExtra==rootPath+"Storage-and-Handling-of-Hazardous-Materials/EnviroBasin-Drum-Spill-Trays.asp") {gotoPage=118};
	if (urlExtra==rootPath+"Storage-and-Handling-of-Hazardous-Materials/EnviroBasin-Drum-Spill-Pallets.asp") {gotoPage=120};
	if (urlExtra==rootPath+"Storage-and-Handling-of-Hazardous-Materials/EnviroBasin-Drum-Handling.asp") {gotoPage=126};
	if (urlExtra==rootPath+"Storage-and-Handling-of-Hazardous-Materials/EnviroBasin-IBC-Spill-Pallets.asp") {gotoPage=128};
	if (urlExtra==rootPath+"Storage-and-Handling-of-Hazardous-Materials/EnviroBasin-Hazardous-Storage-Cabinets.asp") {gotoPage=130};

	if (urlExtra==rootPath+"Water-Transport-and-Storage/index.asp") {gotoPage=136};
	if (urlExtra==rootPath+"Water-Transport-and-Storage/Poly-Water-Bowsers.asp") {gotoPage=138};
	if (urlExtra==rootPath+"Water-Transport-and-Storage/Poly-On-Demand-Water-Supply.asp") {gotoPage=144};
	if (urlExtra==rootPath+"Water-Transport-and-Storage/Poly-Plant-Water-Bowsers.asp") {gotoPage=146};
	if (urlExtra==rootPath+"Water-Transport-and-Storage/Poly-Pressure-Washer-Bowsers.asp") {gotoPage=148};
	if (urlExtra==rootPath+"Water-Transport-and-Storage/Poly-Odour-and-Dust-Suppression.asp") {gotoPage=152};
	if (urlExtra==rootPath+"Water-Transport-and-Storage/Poly-Drinking-Water-Tanks.asp") {gotoPage=156};
	if (urlExtra==rootPath+"Water-Transport-and-Storage/Settlement-Tanks.asp") {gotoPage=158};

	gotoPage += 2; // Adjust for digital/print out of sync'ness

	urlExtraVars = "?page="+gotoPage;

	// Show loading screen
	showHide('popupBackground');
	showHide('floatingContainer');
	showHide('loadingBox');

	// Begin loading catalogue
	document.getElementById('catalogue').src= rootPath + "website-view-catalogue.asp"+urlExtraVars;
}

// Show/Hide DIV
function showHide(elemId,showHide) {
	elemStyle = parent.document.getElementById(elemId).style.display;
	elemStyle == "inline-block" || showHide == "hide" ? parent.document.getElementById(elemId).style.display = "none" : parent.document.getElementById(elemId).style.display = "inline-block";
}

function fadeInContentImage() {
	if (imageFadeLevel<100) {
		imageFadeLevel++;
		document.getElementById('contentImage').style.opacity = (imageFadeLevel/100);
	} else {
		clearInterval(fadeInImage);
	}
}

function slideInCatCover() {
	if (catCoverXPos<(finalCatCoverXPos-1)) {
		catCoverXPos+=((finalCatCoverXPos-catCoverXPos)/15);
		document.getElementById('catCover').style.left = catCoverXPos + "px";
	} else {
		document.getElementById('catCover').style.left ="90px";
		clearInterval(slideInImage);
	}
}
