var $E = YAHOO.util.Event;
var $D = YAHOO.util.Dom;
var MAXSIZE = 1.50;
var MINSIZE = 0.75;

var Cookie = {
	// this cookie library works with Safari too
	// http://wiki.script.aculo.us/scriptaculous/show/Cookie
	set: function(name, value, daysToExpire) {
		var expire = '';
		if (daysToExpire != undefined) {
			var d = new Date();
			d.setTime(d.getTime() + (86400000 * parseFloat(daysToExpire)));
			expire = '; expires=' + d.toGMTString();
		}
		return (document.cookie = escape(name) + '=' + escape(value || '') + expire + '; path=/');
	},
	get: function(name) {
		var cookie = document.cookie.match(new RegExp('(^|;)\\s*' + escape(name) + '=([^;\\s]*)'));
		return (cookie ? unescape(cookie[2]) : null);
	}
};

function setSize(size,unit,id) {
	var targetElement = document.getElementById(id);
	if(targetElement){
		targetElement.style.fontSize = size + unit;
		Cookie.set("textsizestyle", size, 365);
	}
}


function resize(amount) {
	var cookie = Cookie.get("textsizestyle");
	var textsize = cookie ? cookie : '1';
	textsize = parseFloat(textsize) + parseFloat(amount);
	if (textsize >= MINSIZE && textsize <= MAXSIZE) {
		setSize(textsize,'em','pagebody');
	}
}
function checkMeta() {
  var metas = document.getElementsByTagName('META');
  var i;
  for (i = 0; i < metas.length; i++)
    if (metas[i].getAttribute('name') == "DC.language")
      break;
  var TestVar = metas[i].getAttribute('content');
  return TestVar;
}

//The web site to encode http://www.the-art-of-web.com/javascript/escape/
$E.onDOMReady(function() {
	var locale= checkMeta();
	var textSmall="";
	var textLarg="";
	var textSmallTitle="";
	var textLargTitle="";
	if(locale=="en-us"){
		textSmall="Smaller";
		textLarg="Larger";
		textSmallTitle="Decrease text size";
		textLargTitle="Increase text size";}
	else if(locale=="fr-ch"){
		textSmall="Plus petit";
		textLarg="Plus grand";
		textSmallTitle="Réduire la taille des caractères";
		textLargTitle="Augmenter la taille des caractères";}
	else if(locale=="es-es"){
		textSmall="Reducir";
		textLarg="Agrandar";
		textSmallTitle="Reducir tamaño caracteres";
		textLargTitle="Aumentar tamaño caracteres";}
	else if(locale=="pt-br"){
		textSmall="Reduzir";
		textLarg="Ampliar";
		textSmallTitle="Diminuir fonte";
		textLargTitle="Increase text size";}
	else if(locale=="ru-ru"){
		textSmall="Уменьшить";
		textLarg="Увеличить";
		textSmallTitle="Уменьшить размер шрифта";
		textLargTitle="Увеличить размер шрифта";}
	else if(locale=="zh-cn"){
		textSmall="更小";
		textLarg="更大";
		textSmallTitle="减小字号";
		textLargTitle="增大字号";}
	else{
		textSmall="Smaller";
		textLarg="Larger";
		textSmallTitle="Decrease text size";
		textLargTitle="Increase text size";
		}
	//Add textsizer controls to page
	var resizers=$D.getElementsByClassName('pagecontrols','ul');
	for(var i=0;i<resizers.length;i++){
	
		increaseListItem = document.createElement("li");
		increaseLinkItem=document.createElement("a");
		increaseImage=document.createElement("img");
		
		decreaseListItem = document.createElement("li");
		decreaseLinkItem=document.createElement("a");
		decreaseImage=document.createElement("img");
		
		increaseLinkItem.href="javascript:resize(0.25)";
		increaseLinkItem.title=textLargTitle;
		increaseImage.src=navbase+"/display_images/icons/textbig.gif";
		increaseImage.alt=increaseLinkItem.title;
		
		decreaseLinkItem.href="javascript:resize(-0.25)";
		decreaseLinkItem.title=textSmallTitle;
		
		decreaseImage.src=navbase+"/display_images/icons/textlittle.gif";
		decreaseImage.alt=decreaseLinkItem.title;
		
		increaseLinkItem.appendChild(increaseImage);
		if(resizers[i].id=="expandedpagecontrols"){
			increaseLinkItem.appendChild(document.createTextNode(textLarg)); 
		}
		increaseListItem.appendChild(increaseLinkItem);
		
		decreaseLinkItem.appendChild(decreaseImage);
		if(resizers[i].id=="expandedpagecontrols"){
			decreaseLinkItem.appendChild(document.createTextNode(textSmall)); 
		}
		decreaseListItem.appendChild(decreaseLinkItem);
		
		resizers[i].appendChild(increaseListItem);
		resizers[i].appendChild(decreaseListItem);
			
	}
	
	
	//retrieve current cookie and set page as appropriate
	var cookie = Cookie.get("textsizestyle");
	var textsize = (cookie >= MINSIZE && cookie <= MAXSIZE) ? cookie : '1';
	setSize(textsize,'em','pagebody');

}); 
