var eScript = new Class({
	
	initialize: 			function()
	{
		this.writePrintLink();
		
		if(window.Browser && Browser.Platform)
		{
			this.writeBookmarkLink();		
		}
		
		
	},
	
	// for news article template
	loadImage:				function(strToActivate, strLocation)
	{
		var arrMainImage = $$('#product-detail img');
		if(arrMainImage.length == 1)
		{
			// set new source
			strNewLocation = document.location.href + strLocation;
			arrMainImage[0].setProperty('src', strNewLocation);
			
			// set activeness
			var arrLIs = $$('.newsimages ol li');
			for(var i = 0; i < arrLIs.length; i++)
			{
				if(arrLIs[i].id == strToActivate)
				{
					arrLIs[i].addClass("active");	
				}
				else
				{
					arrLIs[i].removeClass("active");
				}				
			}
		}
		else
		{
			alert("Picture load error");
		}
	},
	
	// for language switcher
	toggleHidden:			function(strPanelID)
	{
		var panel = $(strPanelID);
		if(panel)
		{
			if(panel.hasClass('hidden'))
				panel.removeClass('hidden');			
			else
				panel.addClass('hidden');
		}
	},
	
	// for setting language cookie when using on screen selector
	setLanguage:			function(strCookieName, strLangCode)
	{
		Cookie.write(strCookieName, strLangCode, {duration:360, path:'/'});
		
		var strGoTo;
		if(arrNoLocales && arrNoLocales[strLangCode])
		{
			strGoTo = arrNoLocales[strLangCode];
		}
		else
		{
			strGoTo = strDefaultDomain + "/" + strLangCode;
		}
		
		document.location = strGoTo + "/";
	},
	
	getCurrentDomain:			function()
	{
		var strToReturn = "";
		var arrURLBits  = document.location.toString().split("/");
		if(arrURLBits.length > 2)
		{
			strToReturn = arrURLBits.slice(0,3).join("/")+"/";
		}
		return strToReturn;
	},
	
	writePrintLink:			function()
	{
		var lnkPrint = $$("#toolbar li.print a");

		if(lnkPrint.length == 1)
		{
			lnkPrint = lnkPrint[0];
			lnkPrint.onclick = function()
			{
				window.print();
			}
		}
	},
	
	writeBookmarkLink:			function()
	{
		var strOnClick	= "";
		var bMac	  	= Browser.Platform.mac;
		var strButton	= (bMac ? "Command" : "CTRL");
		
		var lnkBookmarker = $$("#toolbar li.fav a");

		if(lnkBookmarker.length == 1)
		{
			lnkBookmarker = lnkBookmarker[0];
			
			strUrl	 = location.href;
			strTitle = document.title;
	
			if(Browser.Engine.presto)
			{
				// opera
				lnkBookmarker.href  = strUrl;
				lnkBookmarker.title = strTitle;			
				lnkBookmarker.rel   = 'sidebar';
			}
			else
			{
				lnkBookmarker.onclick = function()
				{
					if(Browser.Engine.trident)
					{
						// any explorer
						window.external.AddFavorite(strUrl, strTitle);
					}
					else if(Browser.Engine.gecko)
					{
						// moz / gecko
						window.sidebar.addPanel(strTitle, strUrl,'');
					}
					else if(Browser.Engine.webkit)
					{
						// safari
						alert('To bookmark this page, press ' + strButton + ' + D');
					}
					else
					{
						alert('This page can only be bookmarked via your browser');
					}			
				}
			}
		}
	},
	
	hideAllCountries:		function()
	{
		var arrCountries = $$('.country');
		for(var i = 0; i < arrCountries.length; i++)
		{
			arrCountries[i].setStyle("display", "none");
		}		
	},
	
	showAllCountries:		function()
	{
		var arrCountries = $$('.country');
		for(var i = 0; i < arrCountries.length; i++)
		{
			arrCountries[i].setStyle("display", "block");
		}		
	},
	
	showCountry:			function(sCountry)
	{
		this.hideAllCountries();
		
		if($(sCountry))
			$(sCountry).setStyle("display", "block");
	}
});

var objScript = null;
window.addEvent('domready',	function()
							{
								objScript 				= new eScript();
                                                                setUpRepLists();
							});

function worldWideContactInfo(sCountry)
{
	objScript.showCountry(sCountry);
}

function worldWideHide()
{
	if(!document.FIN)
	{
		objScript.hideAllCountries();		
	}
}

function setUpRepLists()
{
    var repsUS = $('repsUS');
    var repsNonUS = $('repsNonUS');
    if(repsUS)
        repsUS.addEvent('change',function() {showRep(this.value);});
    if(repsNonUS)
        repsNonUS.addEvent('change',function() {showRep(this.value);});
}

function showRep(strValue)
{
    strValue = strValue.replace(/[^a-zA-Z]/,"");
    strValue = strValue.toLowerCase()

    var reps = $$('#representatives ul.active');
    for(var i = 0; i < reps.length; i++)
    {
        reps[i].removeClass('active');
    }

    var rep = $(strValue);
    if(rep)
        rep.addClass('active');
}