Accessibilidade = new (
  Class.create(
    {
		
	_jar : null,
        initialize:function(){
          this._jar = new CookieJar({
                    expires:93600, // seconds
                    path: '/'
          });
		  
		  
		  
          var timer = null;
          var fn = (function(){
              var cont = this._jar.get('Contrast');              			  
			  
              if($(document.body)){        
                  clearInterval(timer);                				  
              }
              if(!Object.isUndefined(cont) && cont != null){                
                var fn = function(){                    
                    $(document.body).addClassName('Contrast');
					if(!$(document.body).hasClassName('Contrast')){;
						fn.delay(0.1);
					}
                };
                fn();                
              }
              
          }.bind(this));
          timer = setInterval(fn,200);
        },
        _getContentsElements:function(){
            var arr = ['.site-middle-content','.site-bottom','.site-middle-sitemap'];
            var _return = [];
            arr.each(function(cls){
                var element = $($$(cls)[0]);
                if(element){
                    _return.push( element );
                }
            });

            return _return;

        },
        contraste:function(){
           $(document.body).toggleClassName('Contrast');
           if($(document.body).hasClassName('Contrast')){
              this._jar.put('Contrast',true);
           }else{
               this._jar.remove('Contrast');
           }
        },
        aumentarFonte:function(){
            var elements = this._getContentsElements()
            elements.each(function(element){
                var fonte = element.getStyle('font-size');
                fonte = parseInt(fonte);
                fonte = fonte > 0 ? fonte : 12;
                fonte++ ;
                fonte = Math.min(fonte, 18);
                element.setStyle({'fontSize':fonte+'px'});
            });
        },
        diminuirFonte:function(){
            var elements = this._getContentsElements()
            elements.each(function(element){                
                var fonte = element.getStyle('font-size');
                fonte = parseInt(fonte);
                fonte = fonte > 0 ? fonte : 12;
                fonte--;
                fonte = Math.max(fonte, 8);
                element.setStyle({'fontSize':fonte+'px'});
            });
        }
    }
  )
);
