jQuery(document).ready(function(){

    var sizeLevel  = 0;
    var maxLevel = 3;
    
    var fontTab = ['xx-small'
                  ,'x-small'
                  ,'small'
                  ,'medium'
                  ,'large'
                  ,'x-large'
                  ,'xx-large'];
                  
    var fontTabNot = ['smaller','larger'];
    
    
    
    // Increase Font Size
    $("#enlargeText").click(function(){
      if (sizeLevel < maxLevel)
      {
        $('.resizable *').each(function(){
          var currentFontSize = $(this).css('font-size');
          var currentFontSizeNum = parseFloat(currentFontSize, 10);
            var newFontSize = currentFontSizeNum + 2;
            if($(this).css('font-size').substr(($(this).css('font-size').length-2),2)=='px'){
                  $(this).css('font-size', newFontSize);
            }else if(!isNotResizableFont(fontTabNot,$(this).css('font-size'))){
              var font = $(this).css('font-size');
              for(var index=0; index<fontTab.length; index++) {
              	if(fontTab[index] == font){
                	 if(index != fontTab.length-1){
                	    $(this).css('font-size', fontTab[index+1]);
                	 }
              	}
              }
            }
        });
        sizeLevel++;
      }
      if (sizeLevel >= maxLevel)
      {
        $("#enlargeText").removeClass("textResizeMore");
        $("#enlargeText").addClass("textResizeMoreDisabled");
      }
      if (sizeLevel > 0)
      {
        $("#reduceText").removeClass("textResizeLessDisabled");
        $("#reduceText").addClass("textResizeLess");
      }
    });
    // Decrease Font Size
    $("#reduceText").click(function(){
      if (sizeLevel > 0)
      {
       $('.resizable *').each(function(){
        var currentFontSize = $(this).css('font-size');
        var currentFontSizeNum = parseFloat(currentFontSize, 10);
        var newFontSize = currentFontSizeNum - 2;
            if($(this).css('font-size').substr(($(this).css('font-size').length-2),2)=='px'){
                  $(this).css('font-size', newFontSize);
            }else if(!isNotResizableFont(fontTabNot,$(this).css('font-size'))){
              var font = $(this).css('font-size');
              for(var index=0; index<fontTab.length; index++) {
                if(fontTab[index] == font){
                   if(index != 0){
                      $(this).css('font-size', fontTab[index-1]);
                   }
                }
              }
            }
        });
        sizeLevel--;
      }
      if (sizeLevel < maxLevel)
      {
        $("#enlargeText").removeClass("textResizeMoreDisabled");
        $("#enlargeText").addClass("textResizeMore");
      }
      if (sizeLevel <= 0)
      {
        $("#reduceText").removeClass("textResizeLess");
        $("#reduceText").addClass("textResizeLessDisabled");
      }
    });
    
});

function isNotResizableFont(fontTabNot,font){
  for(var index=0; index<fontTabNot.length; index++) {
  	if(fontTabNot[index] == font) return true;
  }
  return false;
}
