
var cookFactor="TamFactorAcumulado"
var factorAcumulado=0;
var init=0;
var incremento=4;
;(function($) {

	$.fn.fontSizer = function(settings){
	  
		defaults = {
			action: "up",
			increment: incremento,
			max: 21,
			min: -incremento,
			widget: {css: ["mas","menos"]},
			headers: {},
			debug: false
		},
		this.click(function(){ 
			if(settings['elements'] == "")
				return;
			elements = settings['elements'];
			var action = $.trim((settings['action']==undefined)? defaults.action:settings['action']);
			var factor = parseInt((settings['increment']==undefined)? defaults.increment:settings['increment']);

			var max = parseInt((settings['max']==undefined)? defaults.max:settings['max']);
			var min = parseInt((settings['min']==undefined)? defaults.min:settings['min']);

                   var patron = /px$/;

			if (init==1) {
                                factorAcumulado=parseInt(factorAcumulado);
                                if (factorAcumulado>max)factorAcumulado=max;
                                if (factorAcumulado<min)factorAcumulado=min;
                                
				factor=Math.abs( factorAcumulado);				
				if (parseInt(factorAcumulado)>0)
					action="up";
				else action="down";

			}        else{
                            
                                 if ((action=="up") && (factorAcumulado <= max))
					factorAcumulado=parseInt(factorAcumulado) + parseInt(factor);
                                 if ((action=="down") &&(factorAcumulado >=min))
					factorAcumulado=parseInt(factorAcumulado) - parseInt(factor);
																if (action=="restore") {
					factor=factorAcumulado;
					factorAcumulado=0;
				}

                                  createCookie(cookFactor, factorAcumulado, CookieNumDays);
                        }                        
                         
			if( (init!=1) && (Menu_RefreshPage))
				 location.reload(true)  
			else{
			if ($(elements).children().size() == 0){
						
					tamanno = $(elements).css('font-size');
					if (action == "up"){
						new_tamanno = parseInt(tamanno.replace(patron, '')) + factor;
						if(factorAcumulado > max){
							return;
						}
					}
					else{
						new_tamanno = parseInt(tamanno.replace(patron, '')) - factor;		
						if(factorAcumulado < min){
							return;
						}					
					}
					$(elements).css('font-size',new_tamanno+'px');
			}
			else{			
				$(elements).children().each(function(){

					tamanno = $(this).css('font-size');	
					if (action == "up"){
						
						new_tamanno = parseInt(tamanno.replace(patron, '')) + factor;								 		
						if(factorAcumulado > max){
							return;
						}
					}
					else{
						new_tamanno = parseInt(tamanno.replace(patron, '')) - factor;
											
						if(factorAcumulado < min){
							return;
						}
					}					
					$(this).css('font-size',new_tamanno+'px');
					
				});
			}
		  }//refresh
			if (init!=1) {
				              
                        }
      init=0;
	   return false                     
		})
	}

})(jQuery);

$(document).ready(function(){
			$('#aumentar').fontSizer({
				action: "up",
				increment: incremento,
				elements: "body",
				max: 21,
				min: -incremento

			});
			
			$('#disminuir').fontSizer({
				action: 'down',
				increment: incremento,
				elements: "body",
				min: -incremento
			});						
			
			$('#restaurar').fontSizer({
				action: 'restore',
				increment: incremento,
				elements: "body",
				min: -incremento
			});		
			
		})

function MasTam(){
  jQuery.fn.fontSizer();
	jQuery("#aumentar").click();		
	 
}
function MenosTam(){
  jQuery.fn.fontSizer();
	jQuery("#disminuir").click();
	location.reload(true)  
}

//Arrancamos el tamaņo de inicio

function CargaEstiloDef(){
	init=1;
	factorAcumulado=readCookie(cookFactor);
	if (factorAcumulado%incremento!=0)
		factorAcumulado=0;
	if ( isNaN(factorAcumulado) || factorAcumulado==null) factorAcumulado=0;
	if (factorAcumulado>0){

		jQuery.fn.fontSizer();
		jQuery("#aumentar").click();		
	}
        if (factorAcumulado<0){
        	jQuery.fn.fontSizer();
		jQuery("#disminuir").click();
        }
	init=0;

}


//Debido a posibles llamadas al js que provocaria un bucle infinito si se llama a js mas de una vez habilitamos un control

if( isNaN(jquery_fontsizer_control)){
	var jquery_fontsizer_control=1;
	Style_OtherLoad = (window.onload) ? window.onload :  new Function;
	window.onload  = function(){

		setTimeout("CargaEstiloDef()",100);
		Style_OtherLoad();
		};		
}

