/*! jQuery mestriaSlider
 *
 * Version 0.6
 * Copyright José Almeida, http://joseafga.com.br
 * Licence GNU/GPL version 2, http://www.gnu.org/licenses/old-licenses/gpl-2.0.html
 * 
 */
(function($){var defaults={interval:5000,sTimeOut:null,tSpeed:500,sTransition:["fade","fade"],cTransition:["slide","slide"],parallel:false,preload:true,current:0,toQueue:null,running:true,mOverPause:true,mOutPlay:true,interactPause:false,interacted:false,useNav:true,autoNav:true};$.fn.mestriaSlider=function(opts){var mestriaSliders=[];this.each(function(){if(!jQuery.hasData(this)){var ms=$.extend({$this:$(this),$nav:$(this).children().last(),$items:$(this).children().first().children(),$captions:{},init:function(){ms.$items.each(function(i,elem){if(!$(elem).children(".caption").length){$(elem).append('<div class="caption" style="visibility:hidden" />')}});ms.$captions=ms.$items.children(".caption");if(ms.useNav){if(ms.autoNav){var thumbsSrc="";ms.$items.each(function(i,elem){thumbsSrc+=('<div class="thumb"><img src="'+$(elem).find("img").attr("src")+'" alt="thumb" /></div>')});ms.$nav.append(thumbsSrc)}ms.$nav.children().click(function(){ms.jumpTo($(this).index())})}ms.$items.hover(function(){if(ms.mOverPause){ms.pause()}},function(){if(ms.mOutPlay){ms.queued("play")}});if(ms.preload){ms.$this.append('<div class="loading" />');$(window).load(function(){ms.$this.children(".loading").fadeOut();ms.changeSlide()})}else{ms.changeSlide()}},play:function(){ms.interacted=false;ms.queued("play")},pause:function(){if(!ms.running){ms.queued("pause")}else{ms.toQueue="pause"}},queued:function(action,arg){action=action||false;if(!action&&ms.toQueue!==null){action=ms.toQueue;ms.toQueue=null}if(action&&action.indexOf("hideSlide")>-1){arg=parseInt(action.substr(action.lastIndexOf("=")+1));action=action.substr(0,action.lastIndexOf("="))}var actions={_play:function(){actions._pause();if(!(ms.interactPause&&ms.interacted)){ms.sTimeOut=setTimeout(function(){if(!ms.running){ms.running=true;ms.changeSlide()}},ms.interval)}},_pause:function(){clearTimeout(ms.sTimeOut);ms.running=false},_hideSlide:function(to){if(ms.current==to){return actions._play()}actions._pause();ms.running=true;function callback(){if(ms.useNav){ms.activeThumb(false)}ms.current=to;ms.changeSlide()}ms.transitions[ms.cTransition[1]](ms.$captions.eq(ms.current),function(){ms.transitions[ms.sTransition[1]](ms.$items.eq(ms.current),function(){if(!ms.parallel){callback()}});if(ms.parallel){callback()}})}};return action?actions["_"+action](arg):actions._play()},changeSlide:function(){if(ms.$items.eq(ms.current).is(":hidden")&&ms.$captions.eq(ms.current).is(":hidden")){if(ms.useNav){ms.activeThumb(true)}ms.transitions[ms.sTransition[0]](ms.$items.eq(ms.current),function(){ms.transitions[ms.cTransition[0]](ms.$captions.eq(ms.current),function(){ms.queued()})})}else{if(ms.running){var next=ms.current+1;next=(next>=ms.$items.length)?0:next;if(ms.current!=next){ms.queued("hideSlide="+next)}}}},transitions:{fade:function($elem,callback){if($elem.is(":hidden")){$elem.fadeIn(ms.tSpeed,callback)}else{$elem.fadeOut(ms.tSpeed,callback)}},slide:function($elem,callback){if($elem.is(":hidden")){$elem.slideDown(ms.tSpeed,callback)}else{$elem.slideUp(ms.tSpeed,callback)}}},activeThumb:function(active){ms.$nav.children().eq(ms.current).toggleClass("active")},jumpTo:function(to){ms.interacted=true;to=(to>=ms.$items.length)?0:((to<0)?ms.$items.length-1:to);if(ms.current!=to){if(!ms.running){ms.queued("hideSlide="+to)}else{ms.toQueue="hideSlide="+to}}},next:function(){ms.jumpTo(ms.current+1)},prev:function(){ms.jumpTo(ms.current-1)}},defaults,opts||{});ms.$this.data("plusSlider",ms);ms.init()}else{ms=$(this).data("plusSlider")}mestriaSliders.push(ms)});return(mestriaSliders.length===1)?mestriaSliders[0]:mestriaSliders}})(jQuery);
