/****************************************************************************************
* This file is part of the "New Nestle Web Application / Framework".
* Written by Sogeti Switzerland for Nestlé Corporate.
* Part of this code was has been written by Hunterkill Howard
****************************************************************************************/
WaterSite = {
	
	Images:[],
	
	OnPageLoad:function(func) 
	{
		var a,b=navigator.userAgent,d=document,w=window,
		c="__onContent__",e="addEventListener",o="opera",r="readyState",
		s="<scr".concat("ipt defer src='//:' on",r,"change='if(this.",r,"==\"complete\"){this.parentNode.removeChild(this);",c,"()}'></scr","ipt>");
		w[c]=(function(o){return function(){w[c]=function(){};for(a=arguments.callee;!a.done;a.done=1)func(o?o():o)}})(w[c]);
		if(d[e])d[e]("DOMContentLoaded",w[c],false);
		if(/WebKit|Khtml/i.test(b)||(w[o]&&parseInt(w[o].version())<9))
		(function(){/loaded|complete/.test(d[r])?w[c]():setTimeout(arguments.callee,1)})();
		else if(/MSIE/i.test(b))d.write(s);	
	},

	HideDropDowns:function() 
	{
		var continentSearch = document.getElementById("searchByContinent");
		if(! continentSearch)
		   return;
		   
		var continentDropDown = continentSearch.getElementsByTagName("ul")[0];
		continentDropDown.style.display = "none";
		
		var typeSearch = document.getElementById("searchByType");
		var typeDropDown = typeSearch.getElementsByTagName("ul")[0];
		typeDropDown.style.display = "none";
		
		
		var typeSearchMedia = document.getElementById("searchByMediaType");
		var typeMediaDropDown = typeSearchMedia.getElementsByTagName("ul")[0];
		typeMediaDropDown.style.display = "none";

	},
	
	ToggleDropDown:function(element) 
	{	
		var dropdown = element.parentNode.getElementsByTagName("ul")[0];
		
		if(! dropdown)
		   return;
		   
		if(dropdown.style.display != "block") 
			WaterSite.HideDropDowns();
		
		dropdown.style.display = ((dropdown.style.display == "none") ? "block" : "none");
		
	},
	
	PreloadMap:function() 
	{	
		var map = document.getElementById("worldMap");
		if(! map)
		   return; 	
			
		var imageArr = ["","NorthAmerica","SouthAmerica","Europe","Africa","Asia","Australia","Global"];
			
		for(var i=0;i<imageArr.length;i++) 
		{
			
			WaterSite.Images[i] = new Image();
			WaterSite.Images[i].loaded = false;
			WaterSite.Images[i].src = "/Img/Water/Map" + imageArr[i] + ".jpg";
		}			
	},
	
	MapImageLoaded:function() { this.loaded = true;	},
	
	ChangeMap:function(type) 
	{
		var map = document.getElementById("worldMap");
		if(! map)
		   return;
		
		switch(type) 
		{
			case "Map": map.setAttribute("src","/Img/Water/Map.jpg");break;
			case "NorthAmerica": map.setAttribute("src","/Img/Water/MapNorthAmerica.jpg");break;
			case "SouthAmerica": map.setAttribute("src","/Img/Water/MapSouthAmerica.jpg");break;
			case "Europe": map.setAttribute("src","/Img/Water/MapEurope.jpg");break;
			case "Africa": map.setAttribute("src","/Img/Water/MapAfrica.jpg");break;
			case "Asia": map.setAttribute("src","/Img/Water/MapAsia.jpg");break;
			case "Australia": map.setAttribute("src","/Img/Water/MapAustralia.jpg");break;
			case "Global": map.setAttribute("src","/Img/Water/MapGlobal.jpg");break;
		}

		
	}
	
	
	
}

function ChangeHeader(type,Header) 
	{
	var headerText;
	var txtTopic=document.getElementById("txtTopic");
	var txtContinent=document.getElementById("txtContinent");
	var txtMedia=document.getElementById("txtMedia");
	
	if (navigator.appName.indexOf("Microsoft")!=-1)
	{
		headerText = document.getElementById(Header).innerText;
	}
	else
	{
		headerText = document.getElementById(Header).textContent;
	}
		
		if (headerText.indexOf("Topic") != -1)
		{
			if (type.indexOf("sustainability") != -1)
			{
				headerText = "Topic: Environ...";		
			}
			else if (type.indexOf("Rural") != -1)
			{
				headerText = "Topic: Rural...";		
			}
			else
			{
				headerText = "Topic: " + type;
			}
			txtTopic.value = type;
		}
		else if (headerText.indexOf("Continent") != -1)
		{
		 headerText = "Continent: " + type;
		 txtContinent.value = type;
		}
		else if (headerText.indexOf("Media Type") != -1)
		{
		 headerText = "Media Type: " + type;
		 txtMedia.value = type;
		}
		
		if (navigator.appName.indexOf("Microsoft")!=-1)
		{
			document.getElementById(Header).innerText =	headerText ;
		}
		else
		{
			 document.getElementById(Header).textContent = headerText;
		}	
		WaterSite.HideDropDowns();
		return false;
	}
	
	
	function ChangeHeaderOnLoad(topic,continent,media) 
	{

			if(trim(topic)!= null && trim(topic) != "")
				ChangeHeader(topic,'MapTopic');
			
			if(trim(continent)!= null && trim(continent) != "")
				ChangeHeader(continent,'MapContinent');
			
			if(trim(media)!= null && trim(media) != "")
				ChangeHeader(media,'MapMediaType');
	}

function trim(str)
{ 
	if(!str || typeof str != 'string')      
	return null;
	
	return str.replace(/^[\s]+/,'').replace(/[\s]+$/,'').replace(/[\s]{2,}/,' ');
} 

	function getTDHeight(rowCount){			
		var i;

		for(i=1; i<=rowCount; i++)
		{			
			var j;
			var colCount = 3;
			var maxHeight = 0;
			for(j=1; j<=colCount; j++)
			{				
				var contentTopDiv = document.getElementById("content_top" + i + '.' + j)
				var contentBotDiv = document.getElementById("content_bottom" + i + '.' + j)
								
				if(contentTopDiv == null || contentBotDiv == null)
					return;

				var contentTop = getPixelsFromTop(contentTopDiv);
				var contentBottom = getPixelsFromTop(contentBotDiv);
				var contentHeight = contentBottom - contentTop;			
				var nHeight = contentHeight+"px";				
				if(parseInt(nHeight) > parseInt(maxHeight))
				{						
					maxHeight = nHeight;					
				}
			}
			
			var k;
			var contentColCount = 3;
			for(k=1; k<=contentColCount; k++)
			{
				var col1 = document.getElementById('content' + i + '.' + k);
				var col2 = document.getElementById('content' + i + '.' + k);
				var col3 = document.getElementById('content' + i + '.' + k);
				if(col1 != null)	
					col1.style.height=maxHeight;
				if(col2 != null)	
					col2.style.height=maxHeight;
				if(col3 != null)	
					col3.style.height=maxHeight;

			}
		}
	}
	

	
	function getPixelsFromTop(obj){
		var objFromTop = obj.offsetTop;
		while(obj.offsetParent!=null) {
			var objParent = obj.offsetParent;
			objFromTop += objParent.offsetTop;
			obj = objParent;
		}
		return objFromTop;
	}


WaterSite.OnPageLoad(WaterSite.PreloadMap);
WaterSite.OnPageLoad(WaterSite.HideDropDowns);


	



