"use strict";jQuery.fn.tcf_slider=function(e){var n={loop:!1,autoChange:!1,transition:"slide",changeInterval:4e3,transitionDuration:400},a=$.extend({},n,e),i={init:function(){i.defineWrapElements(),i.defineElements(),i.buildWrappers(),i.buildPrevBtn(),i.buildImages(),i.loadImages(),i.buildNextBtn(),i.buildCaptions(),i.buildCrumbs(),i.bindClickEvents(),i.bindKeyboardEvents(),i.bindBlurEvents(),i.bindMouseOverEvents(),i.checkLoop(),i.bindResize(),i.updateCaption(),a.autoChange&&i.bindInterval()},defineWrapElements:function(){a.eles.mainWrap=$("
"),a.eles.imageWrap=$(""),a.eles.prevWrap=$(""),a.eles.nextWrap=$(""),a.eles.captionWrap=$(""),a.eles.crumbWrap=$("")},defineElements:function(){a.eles.prevBtn=$(" "),a.eles.image=$(""),a.eles.nextBtn=$(" "),a.eles.caption=$(""),a.eles.crumb=$(" ")},buildWrappers:function(){a.eles.main.append(a.eles.mainWrap),a.eles.mainWrap.append(a.eles.prevWrap),a.eles.mainWrap.append(a.eles.imageWrap),a.eles.mainWrap.append(a.eles.nextWrap),a.eles.mainWrap.append(a.eles.captionWrap),a.eles.mainWrap.append(a.eles.crumbWrap)},buildPrevBtn:function(){a.eles.prevWrap.append(a.eles.prevBtn)},buildImages:function(){a.images.map(function(e,n){a.eles.imageWrap.append(a.eles.image.clone().hide().attr("src",e.src).attr("alt",e.alt).attr("title",e.caption))}),a.eles.imageWrap.children().first().show()},loadImages:function(){var e=a.eles.imageWrap.find("img"),n=0;e.load(function(){if(n++,n==e.length){var i=a.eles.crumbWrap.find(".active").index(),t=a.eles.imageWrap.children().eq(i).css("height");a.eles.mainWrap.css("height",t)}})},buildNextBtn:function(){a.eles.nextWrap.append(a.eles.nextBtn)},buildCaptions:function(){a.eles.captionWrap.append(a.eles.caption)},buildCrumbs:function(){a.images.map(function(e,n){a.eles.crumbWrap.append(a.eles.crumb.clone())}),a.eles.crumbWrap.children().first().addClass("active")},bindClickEvents:function(){a.eles.prevWrap.on("click",function(){i.changeImage("prev")}),a.eles.nextWrap.on("click",function(){i.changeImage("next")}),a.eles.crumbWrap.children().on("click",function(){i.changeImage("crumb",$(this).index())})},bindKeyboardEvents:function(){a.eles.prevWrap.on("keydown",function(e){13==e.which&&i.changeImage("prev",$(this).index())}),a.eles.nextWrap.on("keydown",function(e){13==e.which&&i.changeImage("next",$(this).index())}),a.eles.crumbWrap.children().on("keydown",function(e){13==e.which&&i.changeImage("crumb",$(this).index())})},bindBlurEvents:function(){a.eles.prevWrap.on("mouseout",function(){$(this).blur(),$(this).children().animate({marginLeft:0},{queue:!1})}),a.eles.nextWrap.on("mouseout",function(){$(this).blur(),$(this).children().animate({marginLeft:0},{queue:!1})}),a.eles.crumbWrap.children().on("mouseout",function(){$(this).blur()})},bindMouseOverEvents:function(){a.eles.prevWrap.on("mouseover",function(){$(this).focus()}),a.eles.nextWrap.on("mouseover",function(){$(this).focus()}),a.eles.crumbWrap.children().on("mouseover",function(){$(this).focus()})},changeImage:function(e,n){if(!a.animating){a.animating=!0;var t,s=a.eles.crumbWrap.find(".active").index();t="prev"==e?s-1:"next"==e?s+1:n,void 0==a.images[t]&&(t="prev"==e?a.images.length-1:0),i.transitionImage(s,t),i.updateCrumb(t),i.updateCaption(),i.checkLoop()}},transitionImage:function(e,n){if("none"==a.transition)a.eles.imageWrap.children().eq(e).hide(),a.eles.imageWrap.children().eq(n).show(),a.animating=!1;else if("fade"==a.transition)a.eles.imageWrap.children().eq(e).fadeOut(a.transitionDuration,function(){a.eles.imageWrap.children().eq(n).fadeIn(a.transitionDuration),a.animating=!1});else if("slide"==a.transition){var i=a.eles.imageWrap.children().eq(e),t=a.eles.imageWrap.children().eq(n);a.eles.mainWrap.css("height",t.css("height")),i.addClass("tcf-abs"),t.addClass("tcf-abs").show(),n>e?(t.css("left","-100%"),i.animate({left:"100%"},{duration:a.transitionDuration,queue:!1}),t.animate({left:"0%"},{queue:!1,duration:a.transitionDuration,complete:function(){i.removeClass("tcf-abs").hide(),t.removeClass("tcf-abs"),a.animating=!1}})):(t.css("left","100%"),i.animate({left:"-100%"},{duration:a.transitionDuration,queue:!1}),t.animate({left:"0%"},{queue:!1,duration:a.transitionDuration,complete:function(){i.removeClass("tcf-abs").hide(),t.removeClass("tcf-abs"),a.animating=!1}}))}},updateCrumb:function(e){a.eles.crumbWrap.find(".active").removeClass("active"),a.eles.crumbWrap.children().eq(e).addClass("active")},updateCaption:function(){var e=a.eles.crumbWrap.find(".active").index(),n=a.eles.imageWrap.children().eq(e);a.eles.caption.html(n.attr("title"))},checkLoop:function(){var e=a.eles.crumbWrap.find(".active").index(),n=a.images[e+1];a.loop||(0==e?a.eles.prevWrap.fadeOut():a.eles.prevWrap.fadeIn(),void 0==n?a.eles.nextWrap.fadeOut():a.eles.nextWrap.fadeIn())},bindResize:function(){$(window).on("resize",function(){var e=a.eles.crumbWrap.find(".active").index(),n=a.eles.imageWrap.children().eq(e).css("height");a.eles.mainWrap.css("height",n)})},bindInterval:function(){var e=window.setInterval(function(){i.changeImage("next")},a.changeInterval);a.eles.main.on("mouseover",function(){clearInterval(e)}),a.eles.main.on("mouseout",function(){clearInterval(e),e=window.setInterval(function(){i.changeImage("next")},a.changeInterval)})}};return this.each(function(){a.eles={},a.eles.main=$(this),i.init(this)})};