// loader plugin
(function($) {
	$.fn.FLloading = function (options) {

		var defaultOptions = {
            padding: 30
		};
		
		if (typeof options === "object" || $.empty(options)) {
			return init(this, options);
		} else if (typeof options === "string"){
			switch (options) {
				case "reset":
					return reset(this);
					break;
				default:
					return init(this);
					break;
				
			}
		}
		
		function init(obj, options){
			obj.settings = $.extend(defaultOptions, options);
			return obj.each(function(){
			    $(this).children(":visible").addClass("loadingDisabled").attr("disabled", "disabled").css({opacity : 0.7});
			    var loading = $("<div class='FLloading'>Loading</div>");
			    loading.find(".FLloading").css({paddingTop: obj.settings.padding + "px", paddingRight: obj.settings.padding + "px"});
			    $(this).append(loading);
			});
		}
		
		function reset(obj){
			return obj.each(function(){
			    $(this).find(".FLloading").remove();
			    $(this).children(".loadingDisabled").removeAttr("disabled").removeClass("loadingDisabled").css({opacity : 1});
			});
		}
	};	
})(jQuery);
	
