text: $(function($) {
  	var storage,
  	    fail,
  	    uid;
  	try {
  		uid = new Date;
  		(storage = window.localStorage).setItem(uid, uid);
  		fail = storage.getItem(uid) != uid;
  		storage.removeItem(uid);
  		fail && (storage = false);
  	} catch(e) {}
  	
  	if (storage) {
  		try {
  			var usedSkin = localStorage.getItem('config-skin');
  			if (usedSkin != '') {
  				$('#skin-colors .skin-changer').removeClass('active');
  				$('#skin-colors .skin-changer[data-skin="'+usedSkin+'"]').addClass('active');
  			}
  			
  			var fixedHeader = localStorage.getItem('config-fixed-header');
  			if (fixedHeader == 'fixed-header') {
  				$('body').addClass(fixedHeader);
  				$('#config-fixed-header').prop('checked', true);
  			}
  			
  			var fixedFooter = localStorage.getItem('config-fixed-footer');
  			if (fixedFooter == 'fixed-footer') {
  				$('body').addClass(fixedFooter);
  				$('#config-fixed-footer').prop('checked', true);
  			}
  			
  			var boxedLayout = localStorage.getItem('config-boxed-layout');
  			if (boxedLayout == 'boxed-layout') {
  				$('body').addClass(boxedLayout);
  				$('#config-boxed-layout').prop('checked', true);
  			}
  			
  			var rtlLayout = localStorage.getItem('config-rtl-layout');
  			if (rtlLayout == 'rtl') {
  				$('body').addClass(rtlLayout);
  				$('#config-rtl-layout').prop('checked', true);
  			}
  			
  			var fixedLeftmenu = localStorage.getItem('config-fixed-leftmenu');
  			if (fixedLeftmenu == 'fixed-leftmenu') {
  				$('body').addClass(fixedLeftmenu);
  				$('#config-fixed-sidebar').prop('checked', true);
  				
  				if ($('#page-wrapper').hasClass('nav-small')) {
  					$('#page-wrapper').removeClass('nav-small');
  				}
  				
  				$('.fixed-leftmenu #col-left').nanoScroller({
  			    	alwaysVisible: true,
  			    	iOSNativeScrolling: false,
  			    	preventPageScrolling: true,
  			    	contentClass: 'col-left-nano-content'
  			    });
  			}
  		}
  		catch (e) {console.log(e); }
  	}
  
  	/* CONFIG TOOLS SETTINGS */
  	$('#config-tool-cog').on('click', function(){
  		$('#config-tool').toggleClass('closed');
  	});
  	if($("#config-fixed-header").is(':checked')){	//fixed header coding
  		$('body').addClass('fixed-header');
  		fixedHeader = 'fixed-header';
  	}
  	$('#config-fixed-header').on('change', function(){
  		var fixedHeader = '';
  		
  		if ($(this).is(':checked')) {
  			$('body').addClass('fixed-header');
  			fixedHeader = 'fixed-header';
  		}
  		else {
  			$('body').removeClass('fixed-header');
  			
  			if ($('#config-fixed-sidebar').is(':checked')) {
  				$('#config-fixed-sidebar').prop('checked', false);
  				$('#config-fixed-sidebar').trigger('change');
  				location.reload();
  			}
  		}
  		
  		writeStorage(storage, 'config-fixed-header', fixedHeader);
  	});
  	if($("#config-fixed-footer").is(':checked')){	//fixed footer coding
  		$('body').addClass('fixed-footer');
  		fixedFooter = 'fixed-footer';
  	}
  	$('#config-fixed-footer').on('change', function(){
  		var fixedFooter = '';
  		
  		if ($(this).is(':checked')) {
  			$('body').addClass('fixed-footer');
  			fixedFooter = 'fixed-footer';
  		}
  		else {
  			$('body').removeClass('fixed-footer');
  		}
  		
  		writeStorage(storage, 'config-fixed-footer', fixedFooter);
  	});
  	$('#config-boxed-layout').on('change', function(){
  		var boxedLayout = '';
  		
  		if ($(this).is(':checked')) {
  			$('body').addClass('boxed-layout');
  			boxedLayout = 'boxed-layout';
  		}
  		else {
  			$('body').removeClass('boxed-layout');
  		}
  		
  		writeStorage(storage, 'config-boxed-layout', boxedLayout);
  	});
  	$('#config-rtl-layout').on('change', function(){
  		var rtlLayout = '';
  		
  		if ($(this).is(':checked')) {
  			//$('body').addClass('rtl');
  			rtlLayout = 'rtl';
  		}
  		else {
  			//$('body').removeClass('rtl');
  		}
  		
  		writeStorage(storage, 'config-rtl-layout', rtlLayout);
  		location.reload();
  	});
  	if($("#config-fixed-sidebar").is(':checked')){	//fixed sidebar coding
  		$('body').addClass('fixed-leftmenu');
  		fixedSidebar = 'fixed-leftmenu';
  	}
  	$('#config-fixed-sidebar').on('change', function(){
  		var fixedSidebar = '';
  		
  		if ($(this).is(':checked')) {
  			if (!$('#config-fixed-header').is(':checked')) {
  				$('#config-fixed-header').prop('checked', true);
  				$('#config-fixed-header').trigger('change');
  			}
  			
  			if ($('#page-wrapper').hasClass('nav-small')) {
  				$('#page-wrapper').removeClass('nav-small');
  			}
  			
  			$('body').addClass('fixed-leftmenu');
  			fixedSidebar = 'fixed-leftmenu';
  			
  			$('.fixed-leftmenu #col-left').nanoScroller({
  		    	alwaysVisible: true,
  		    	iOSNativeScrolling: false,
  		    	preventPageScrolling: true,
  		    	contentClass: 'col-left-nano-content'
  		    });
  			
  			writeStorage(storage, 'config-fixed-leftmenu', fixedSidebar);
  		}
  		else {
  			$('body').removeClass('fixed-leftmenu');
  			writeStorage(storage, 'config-fixed-leftmenu', fixedSidebar);
  			location.reload();
  		}
  	});
  	
  	if (!storage) {
  		$('#config-fixed-header').prop('checked', false);
  		$('#config-fixed-footer').prop('checked', false);
  		$('#config-fixed-sidebar').prop('checked', false);
  		$('#config-boxed-layout').prop('checked', false);
  		$('#config-rtl-layout').prop('checked', false);
  	}
  	
  	$('#skin-colors .skin-changer').on('click', function(){
  		$('body').removeClassPrefix('theme-');
  		$('body').addClass($(this).data('skin'));
  		$('#skin-colors .skin-changer').removeClass('active');
  		$(this).addClass('active');
  		writeStorage(storage, 'config-skin', $(this).data('skin'));
  	});
  });
  
  function writeStorage(storage, key, value) {
  	if (storage) {
  		try {
  			localStorage.setItem(key, value);
  		}
  		catch (e) { console.log(e);}
  	}
  }
  
  $.fn.removeClassPrefix = function(prefix) {
      this.each(function(i, el) {
          var classes = el.className.split(" ").filter(function(c) {
              return c.lastIndexOf(prefix, 0) !== 0;
          });
          el.className = classes.join(" ");
      });
      return this;
  };