var sowb=window.sowb||{};jQuery((function(i){sowb.setupCarousel=function(){i.fn.setSlideTo=function(e){$item=i(this);var s=$item.slick("slickGetOption","slidesToShow"),t=$item.slick("slickGetOption","slidesToScroll");$item.slick("slickSetOption","slidesToShow",1),$item.slick("slickSetOption","slidesToScroll",1),$item.slick("slickGoTo",e),$item.slick("slickSetOption","slidesToShow",s),$item.slick("slickSetOption","slidesToScroll",t)},i(".sow-carousel-wrapper").each((function(){var e=i(this),s=e.find(".sow-carousel-items"),t=e.data("responsive");s.not(".slick-initialized").slick({arrows:!1,infinite:!1,rows:0,rtl:"rtl"==e.data("dir"),touchThreshold:20,variableWidth:!0,accessibility:!1,slidesToScroll:t.desktop_slides,slidesToShow:t.desktop_slides,responsive:[{breakpoint:t.tablet_portrait_breakpoint,settings:{slidesToScroll:t.tablet_portrait_slides,slidesToShow:t.tablet_portrait_slides}},{breakpoint:t.mobile_breakpoint,settings:{slidesToScroll:t.mobile_slides,slidesToShow:t.mobile_slides}}]}),s.on("swipe",(function(i,s,t){e.parent().parent().find(".sow-carousel-"+("left"==t?"next":"prev")).trigger("touchend")})),e.parent().parent().find(".sow-carousel-previous, .sow-carousel-next").on("click touchend",(function(s,t){s.preventDefault();var o=e.find(".sow-carousel-items"),l=o.find(".sow-carousel-item").length,a=l===e.data("post-count"),n=Math.ceil(o.outerWidth()/o.find(".sow-carousel-item").outerWidth(!0)),c=l-n+1,r=o.slick("slickGetOption","slidesToScroll");if(!a&&(o.slick("slickCurrentSlide")+n>=l-1||o.slick("slickCurrentSlide")+r>c-1)&&!e.data("fetching")){e.data("fetching",!0);var d=e.data("page")+1;o.slick("slickAdd",''),i.get(e.data("ajax-url"),{action:"sow_carousel_load",paged:d,instance_hash:e.parent().parent().find('input[name="instance_hash"]').val()},(function(i,s){o.find(".sow-carousel-loading").remove(),o.slick("slickAdd",i.html),l=e.find(".sow-carousel-item").length,e.data("fetching",!1),e.data("page",d),t&&o.find('.sow-carousel-item[tabindex="0"]').trigger("focus")}))}i(this).hasClass("sow-carousel-next")?a&&o.slick("slickCurrentSlide")>=c?e.data("loop-posts-enabled")&&o.slick("slickGoTo",0):a&&o.slick("slickCurrentSlide")+n>=c?o.setSlideTo(c):o.slick("slickCurrentSlide")+r>c-1?o.setSlideTo(c):o.slick("slickNext"):i(this).hasClass("sow-carousel-previous")&&(e.data("loop-posts-enabled")&&0==o.slick("slickCurrentSlide")?o.slick("slickGoTo",c):o.slick("slickPrev"))}))})),i(document).on("keydown",".sow-carousel-navigation a",(function(e){13!=e.keyCode&&32!=e.keyCode||(e.preventDefault(),i(this).trigger("click"))})),i(document).on("keyup",".sow-carousel-item",(function(e){if(13==e.keyCode&&i(this).find("h3 a")[0].click(),37==e.keyCode||39==e.keyCode){var s=i(this).parents(".sow-carousel-wrapper"),t=s.find(".sow-carousel-items"),o=t.find(".sow-carousel-item").length,l=i(this).data("slick-index"),a=o-(o===s.data("post-count")?0:1);if(37==e.keyCode)--l<0&&(l=a);else if(39==e.keyCode&&++l>=a){if(s.data("fetching"))return;s.parent().find(".sow-carousel-next").trigger("click",!0)}t.slick("slickGoTo",l,!0),s.find(".sow-carousel-item").prop("tabindex",-1),s.find('.sow-carousel-item[data-slick-index="'+l+'"]').trigger("focus").prop("tabindex",0)}})),i(window).on("resize load",(function(){i(".sow-carousel-wrapper").each((function(){var e=i(this),s=e.find(".sow-carousel-items.slick-initialized"),t=Math.ceil(s.outerWidth()/s.find(".sow-carousel-item").outerWidth(!0)),o=e.parent().parent().find(".sow-carousel-navigation");t>=e.data("post-count")?(o.hide(),s.slick("slickSetOption","touchMove",!1),s.slick("slickSetOption","draggable",!1)):o.not(":visible")&&(o.show(),s.slick("slickSetOption","touchMove",!0),s.slick("slickSetOption","draggable",!0));var l=e.data("responsive");window.matchMedia("(min-width: "+l.tablet_portrait_breakpoint+"px) and (max-width: "+l.tablet_landscape_breakpoint+"px) and (orientation: landscape)").matches&&(s.slick("slickSetOption","slidesToShow",l.tablet_landscape_slides),s.slick("slickSetOption","slidesToScroll",l.tablet_landscape_slides))})),i(".sow-carousel-item:first-of-type").prop("tabindex",0)}))},sowb.setupCarousel(),i(sowb).on("setup_widgets",sowb.setupCarousel)})),window.sowb=sowb;