/*
 *        mbTabset plug in
 * 				developed by Matteo Bicocchi on JQuery
 *        © 2002-2009 Open Lab srl, Matteo Bicocchi
 *			    www.open-lab.com - info@open-lab.com
 *       	version 1.0
 *       	tested on: 	Explorer, FireFox and Chrome for PC
 *                  	FireFox and Safari for Mac Os X
 *                  	FireFox for Linux
 *         MIT (MIT-LICENSE.txt) licenses.
 */



(function($) {

	$.mbTabset={
		mbTabsetArray:[],
		options:{
			item:".tab",
			sortable:true,
			position:"left",
			start:function(){},
			stop:function(){}
		},
		build: function(opt){
			this.each(function(){
				$(this).addClass("mbTabset");
				var mbTabsetOptions = {};
				$.extend (mbTabsetOptions, $.mbTabset.options);
				var el={el: $(this)};
				$.extend (mbTabsetOptions, el);
				$.extend (mbTabsetOptions, opt);
				$(this).addClass(mbTabsetOptions.position);
				this.opt=mbTabsetOptions;
				$(this).find(mbTabsetOptions.item+":first").addClass("sel");
				var tabs= $(this).find(mbTabsetOptions.item);
				if ($.metadata){
					$.metadata.setType("class");
					$(tabs).each(function(){
						if ($(this).metadata().container) $(this).attr("container",$(this).metadata().container);
					})
				}

				$(tabs).each(function(i){
					$(this).addClass("mbTab");
					$(this).wrapInner("<span></span>");
					var myContainer=$("#"+$(this).attr("container"));
					myContainer.hide();
					if ($(this).hasClass("sel")) myContainer.fadeIn();

					$(this).bind("click",function(){
						if ($(this).is(".disabled , .sel")) return;
						var choosenTab=$(this);
						var actualCont="";
						$(tabs).each(function(){
							if ($(this).is(".sel")){
								actualCont=$(this).attr("container");
								$(this).removeClass("sel");
							}
						})
							$("#"+actualCont).fadeOut("fast",function(){
								choosenTab.addClass("sel");
								$("#"+choosenTab.attr("container")).fadeIn("fast");
							})
					})
				})
				if (mbTabsetOptions.sortable){
					$(this).setSortableMbTabset(mbTabsetOptions);
				}

			})
		},
		toArray:function(el){
			return $(el).sortable("toArray");
		},
		actual:false,
		select: function(){


		},
		setSortable:function(opt){
			if (!opt) opt = $(this)[0].opt;
			var tabs= $(this).find(opt.item);
			$(tabs).each(function(){
				$(this).find("span").prepend("<i>&nbsp;</i>").addClass("sortable");
				$(this).find("i").bind("click",function(e){e.preventDefault();return false})
			})
			$(this).sortable({
				item:".tab",
				handle:"i",
				cursor:"move",
				revert:false,
				axis:"x",
				opacity:.7,
				forcePlaceholderSize:true,
				start: function(){
					$(this).find(".tab").addClass("floatEl");
					if (opt.start) opt.start();
				},
				stop: function(e){
					$(this).find(".tab").removeClass("floatEl");
					$.mbTabset.mbTabsetArray= $.mbTabset.toArray($(this));
					if (opt.stop) opt.stop();
				}
			});
		},
		clearSortable:function(opt){
			if (!opt) opt = $(this)[0].opt;
			var tabs= $(this).find(opt.item);
			$(tabs).each(function(){
				$(this).find("span").removeClass("sortable");
				$(this).find("i").remove();
			})
			$(this).sortable("destroy");
		}
	}
	$.fn.setSortableMbTabset = $.mbTabset.setSortable;
	$.fn.clearSortableMbTabset = $.mbTabset.clearSortable;
	$.fn.buildMbTabset = $.mbTabset.build;
	$.fn.serializeMbTabset = $.mbTabset.serialize;
})(jQuery)

	/*
	 $(function(){
	 //$(".tab span i").css({background:"url(grip.gif)"});
	 $(".tabset").sortable({
	 item:".tab",
	 handle:"i",
	 cursor:"move",
	 revert:false,
	 axis:"x",
	 opacity:.7,
	 forcePlaceholderSize:true,
	 start: function(){
	 $(this).find(".tab").addClass("floatEl");
	 },
	 stop: function(){
	 $(this).find(".tab").removeClass("floatEl");
	 }

	 //delay:200
	 });
	 $(".tabset .tab.disabled").each(function(){$(this).css({opacity:.5})})
	 $(".tabset .tab i").each(function(){$(this).click(function(){return false})})

	 })
	 */

