/*
 * 
 * jFontSizer Plugin
 * Written by fluidByte - http://www.fluidbyte.net
 * 
 * 
 */

jQuery.fn.jfontsizer = function(o) {

	// Cookie functions
	function setCookie(c_name,value,expiredays){
	var exdate=new Date();
	exdate.setDate(exdate.getDate()+expiredays);
	document.cookie=c_name+ "=" +escape(value)+
	((expiredays==null) ? "" : ";expires="+exdate.toGMTString());
	}
	
	function getCookie(c_name){
	if (document.cookie.length>0){
	  c_start=document.cookie.indexOf(c_name + "=");
	  if (c_start!=-1){
	    c_start=c_start + c_name.length+1;
	    c_end=document.cookie.indexOf(";",c_start);
	    if (c_end==-1) c_end=document.cookie.length;
	    return unescape(document.cookie.substring(c_start,c_end));
	    }
	  }
	return "";
	}

    
	// Defaults
	var o = jQuery.extend( {
		applyToText_01: 'body',
		applyToText_02: '',
		applyToText_03: '',
		applyToText_04: '',
		applyToText_05: '',	
		applyToText_06: '',	
		changesmall: '2',
		changelarge: '2',
		expire: 30
	},o);
	
	var s = '';
	var m = '';
	var l = '';
	
	// Current
	var c = 'fs_med';
	
	// Check cookie  
	if (getCookie('text-adjust') != "") {
		var c = getCookie('text-adjust');
		switch (c) {
			case 'fs_sml':
				//$(o.applyTo).css('font-size','.'+(10-o.changesmall)+'em');
				$(o.applyToText_01).css('font-size','15px');
				$(o.applyToText_01).css('line-height','18px');
				$(o.applyToText_02).css('font-size','11px');
				$(o.applyToText_02).css('line-height','14px');				
				$(o.applyToText_03).css('font-size','11px');
				$(o.applyToText_03).css('line-height','14px');
				$(o.applyToText_04).css('font-size','13px');
				$(o.applyToText_04).css('line-height','25px');	
				$(o.applyToText_05).css('font-size','17px');
				$(o.applyToText_05).css('line-height','20px');
				$(o.applyToText_06).css('font-size','13px');
				$(o.applyToText_06).css('line-height','14px');				
			break;
			case 'fs_med':
			    $(o.applyToText_01).css('font-size','16px');
				$(o.applyToText_01).css('line-height','19px');				
			    $(o.applyToText_02).css('font-size','12px');
				$(o.applyToText_02).css('line-height','15px');								
			    $(o.applyToText_03).css('font-size','12px');
				$(o.applyToText_03).css('line-height','15px');
				$(o.applyToText_04).css('font-size','13px');
				$(o.applyToText_04).css('line-height','25px');	
				$(o.applyToText_05).css('font-size','17px');
				$(o.applyToText_05).css('line-height','20px');					
				$(o.applyToText_06).css('font-size','13px');
				$(o.applyToText_06).css('line-height','14px');									
				break;
			case 'fs_lrg':
				//$(o.applyTo).css('font-size','1.'+o.changelarge+'em');
				$(o.applyToText_01).css('font-size','17px');
				$(o.applyToText_01).css('line-height','20px');	
			    $(o.applyToText_02).css('font-size','13px');
				$(o.applyToText_02).css('line-height','16px');								
			    $(o.applyToText_03).css('font-size','13px');
				$(o.applyToText_03).css('line-height','16px');	
				$(o.applyToText_04).css('font-size','13px');
				$(o.applyToText_04).css('line-height','25px');	
				$(o.applyToText_05).css('font-size','17px');
				$(o.applyToText_05).css('line-height','20px');					
				$(o.applyToText_06).css('font-size','13px');
				$(o.applyToText_06).css('line-height','14px');									
				break;
		}
	}
	else {
		m = "fsactive";
	}
	
	// Create font-chooser box
		$(this).html('<li>Textstorlek:</li><li><a href="javascript:void(0);" id="fs_sml" class="text-small '+s+'">Small</a></li><li><a href="javascript:void(0);" id="fs_med" class="text-middle '+m+'">Middle</a></li><li><a href="javascript:void(0);" id="fs_lrg" class="text-biggest '+l+'">Biggest</a></li>');
	
	$('.text-adjust a').click(function(){
	
		var t = $(this).attr('id');
		
		setCookie('text-adjust',t,o.expire);
		
		$('.text-adjust a').removeClass('fsactive');
		$(this).addClass('fsactive');
		
		//var f = $(o.applyToText_01).css('font-size');	

		switch(t){
			case 'fs_sml':
				//$(o.applyTo).css('font-size','.'+(10-o.changesmall)+'em');
				$(o.applyToText_01).css('font-size','15px');
				$(o.applyToText_01).css('line-height','18px');
				$(o.applyToText_02).css('font-size','11px');
				$(o.applyToText_02).css('line-height','14px');				
				$(o.applyToText_03).css('font-size','11px');
				$(o.applyToText_03).css('line-height','14px');				
				$(o.applyToText_04).css('font-size','13px');
				$(o.applyToText_04).css('line-height','25px');
				$(o.applyToText_05).css('font-size','17px');
				$(o.applyToText_05).css('line-height','20px');					
				$(o.applyToText_06).css('font-size','13px');
				$(o.applyToText_06).css('line-height','14px');									
			break;
			case 'fs_med':
			    $(o.applyToText_01).css('font-size','16px');
				$(o.applyToText_01).css('line-height','19px');				
			    $(o.applyToText_02).css('font-size','12px');
				$(o.applyToText_02).css('line-height','15px');								
			    $(o.applyToText_03).css('font-size','12px');
				$(o.applyToText_03).css('line-height','15px');	
				$(o.applyToText_04).css('font-size','13px');
				$(o.applyToText_04).css('line-height','25px');	
				$(o.applyToText_05).css('font-size','17px');
				$(o.applyToText_05).css('line-height','20px');					
				$(o.applyToText_06).css('font-size','13px');
				$(o.applyToText_06).css('line-height','14px');									
				break;
			case 'fs_lrg':
				//$(o.applyTo).css('font-size','1.'+o.changelarge+'em');
				$(o.applyToText_01).css('font-size','17px');
				$(o.applyToText_01).css('line-height','20px');	
			    $(o.applyToText_02).css('font-size','13px');
				$(o.applyToText_02).css('line-height','16px');								
			    $(o.applyToText_03).css('font-size','13px');
				$(o.applyToText_03).css('line-height','16px');
				$(o.applyToText_04).css('font-size','13px');
				$(o.applyToText_04).css('line-height','25px');
				$(o.applyToText_05).css('font-size','17px');
				$(o.applyToText_05).css('line-height','20px');					
				$(o.applyToText_06).css('font-size','13px');
				$(o.applyToText_06).css('line-height','14px');									
				break;
		}	
	});
};
