vendor: 32,294 bytes, lines 1-451
1/* 2 * jQuery FlexSlider v2.2.2 3 * Copyright 2012 WooThemes 4 * Contributing Author: Tyler Smith 5 */ 6! function (a) { 7 a.flexslider = function (b, c) { 8 var d = a(b); 9 d.vars = a.extend({}, a.flexslider.defaults, c); 10 var j, e = d.vars.namespace, 11 f = window.navigator && window.navigator.msPointerEnabled && window.MSGesture, 12 g = ("ontouchstart" in window || f || window.DocumentTouch && document instanceof DocumentTouch) && d.vars.touch, 13 h = "click touchend MSPointerUp", 14 i = "", 15 k = "vertical" === d.vars.direction, 16 l = d.vars.reverse, 17 m = d.vars.itemWidth > 0, 18 n = "fade" === d.vars.animation, 19 o = "" !== d.vars.asNavFor, 20 p = {}, 21 q = !0; 22 a.data(b, "flexslider", d), p = { 23 init: function () { 24 d.animating = !1, d.currentSlide = parseInt(d.vars.startAt ? d.vars.startAt : 0, 10), isNaN(d.currentSlide) && (d.currentSlide = 0), d.animatingTo = d.currentSlide, d.atEnd = 0 === d.currentSlide || d.currentSlide === d.last, d.containerSelector = d.vars.selector.substr(0, d.vars.selector.search(" ")), d.slides = a(d.vars.selector, d), d.container = a(d.containerSelector, d), d.count = d.slides.length, d.syncExists = a(d.vars.sync).length > 0, "slide" === d.vars.animation && (d.vars.animation = "swing"), d.prop = k ? "top" : "marginLeft", d.args = {}, d.manualPause = !1, d.stopped = !1, d.started = !1, d.startTimeout = null, d.transitions = !d.vars.video && !n && d.vars.useCSS && function () { 25 var a = document.createElement("div"), 26 b = ["perspectiveProperty", "WebkitPerspective", "MozPerspective", "OPerspective", "msPerspective"]; 27 for (var c in b) 28 if (void 0 !== a.style[b[c]]) return d.pfx = b[c].replace("Perspective", "").toLowerCase(), d.prop = "-" + d.pfx + "-transform", !0; 29 return !1 30 }(), d.ensureAnimationEnd = "", "" !== d.vars.controlsContainer && (d.controlsContainer = a(d.vars.controlsContainer).length > 0 && a(d.vars.controlsContainer)), "" !== d.vars.manualControls && (d.manualControls = a(d.vars.manualControls).length > 0 && a(d.vars.manualControls)), d.vars.randomize && (d.slides.sort(function () { 31 return Math.round(Math.random()) - .5 32 }), d.container.empty().append(d.slides)), d.doMath(), d.setup("init"), d.vars.controlNav && p.controlNav.setup(), d.vars.directionNav && p.directionNav.setup(), d.vars.keyboard && (1 === a(d.containerSelector).length || d.vars.multipleKeyboard) && a(document).bind("keyup", function (a) { 33 var b = a.keyCode; 34 if (!d.animating && (39 === b || 37 === b)) { 35 var c = 39 === b ? d.getTarget("next") : 37 === b ? d.getTarget("prev") : !1; 36 d.flexAnimate(c, d.vars.pauseOnAction) 37 } 38 }), d.vars.mousewheel && d.bind("mousewheel", function (a, b) { 39 a.preventDefault(); 40 var f = 0 > b ? d.getTarget("next") : d.getTarget("prev"); 41 d.flexAnimate(f, d.vars.pauseOnAction) 42 }), d.vars.pausePlay && p.pausePlay.setup(), d.vars.slideshow && d.vars.pauseInvisible && p.pauseInvisible.init(), d.vars.slideshow && (d.vars.pauseOnHover && d.hover(function () { 43 d.manualPlay || d.manualPause || d.pause() 44 }, function () { 45 d.manualPause || d.manualPlay || d.stopped || d.play() 46 }), d.vars.pauseInvisible && p.pauseInvisible.isHidden() || (d.vars.initDelay > 0 ? d.startTimeout = setTimeout(d.play, d.vars.initDelay) : d.play())), o && p.asNav.setup(), g && d.vars.touch && p.touch(), (!n || n && d.vars.smoothHeight) && a(window).bind("resize orientationchange focus", p.resize), d.find("img").attr("draggable", "false"), setTimeout(function () { 47 d.vars.start(d) 48 }, 200) 49 }, 50 asNav: { 51 setup: function () { 52 d.asNav = !0, d.animatingTo = Math.floor(d.currentSlide / d.move), d.currentItem = d.currentSlide, d.slides.removeClass(e + "active-slide").eq(d.currentItem).addClass(e + "active-slide"), f ? (b._slider = d, d.slides.each(function () { 53 var b = this; 54 b._gesture = new MSGesture, b._gesture.target = b, b.addEventListener("MSPointerDown", function (a) { 55 a.preventDefault(), a.currentTarget._gesture && a.currentTarget._gesture.addPointer(a.pointerId) 56 }, !1), b.addEventListener("MSGestureTap", function (b) { 57 b.preventDefault(); 58 var c = a(this), 59 e = c.index(); 60 a(d.vars.asNavFor).data("flexslider").animating || c.hasClass("active") || (d.direction = d.currentItem < e ? "next" : "prev", d.flexAnimate(e, d.vars.pauseOnAction, !1, !0, !0)) 61 }) 62 })) : d.slides.on(h, function (b) { 63 b.preventDefault(); 64 var c = a(this), 65 f = c.index(), 66 g = c.offset().left - a(d).scrollLeft(); 67 0 >= g && c.hasClass(e + "active-slide") ? d.flexAnimate(d.getTarget("prev"), !0) : a(d.vars.asNavFor).data("flexslider").animating || c.hasClass(e + "active-slide") || (d.direction = d.currentItem < f ? "next" : "prev", d.flexAnimate(f, d.vars.pauseOnAction, !1, !0, !0)) 68 }) 69 } 70 }, 71 controlNav: { 72 setup: function () { 73 d.manualControls ? p.controlNav.setupManual() : p.controlNav.setupPaging() 74 }, 75 setupPaging: function () { 76 var f, g, b = "thumbnails" === d.vars.controlNav ? "control-thumbs" : "control-paging", 77 c = 1; 78 if (d.controlNavScaffold = a('<ol class="' + e + "control-nav " + e + b + '"></ol>'), d.pagingCount > 1) 79 for (var j = 0; j < d.pagingCount; j++) { 80 if (g = d.slides.eq(j), f = "thumbnails" === d.vars.controlNav ? '<img src="' + g.attr("data-thumb") + '"/>' : "<a>" + c + "</a>", "thumbnails" === d.vars.controlNav && !0 === d.vars.thumbCaptions) { 81 var k = g.attr("data-thumbcaption"); 82 "" != k && void 0 != k && (f += '<span class="' + e + 'caption">' + k + "</span>") 83 } 84 d.controlNavScaffold.append("<li>" + f + "</li>"), c++ 85 } 86 d.controlsContainer ? a(d.controlsContainer).append(d.controlNavScaffold) : d.append(d.controlNavScaffold), p.controlNav.set(), p.controlNav.active(), d.controlNavScaffold.delegate("a, img", h, function (b) { 87 if (b.preventDefault(), "" === i || i === b.type) { 88 var c = a(this), 89 f = d.controlNav.index(c); 90 c.hasClass(e + "active") || (d.direction = f > d.currentSlide ? "next" : "prev", d.flexAnimate(f, d.vars.pauseOnAction)) 91 } 92 "" === i && (i = b.type), p.setToClearWatchedEvent() 93 }) 94 }, 95 setupManual: function () { 96 d.controlNav = d.manualControls, p.controlNav.active(), d.controlNav.bind(h, function (b) { 97 if (b.preventDefault(), "" === i || i === b.type) { 98 var c = a(this), 99 f = d.controlNav.index(c); 100 c.hasClass(e + "active") || (d.direction = f > d.currentSlide ? "next" : "prev", d.flexAnimate(f, d.vars.pauseOnAction)) 101 } 102 "" === i && (i = b.type), p.setToClearWatchedEvent() 103 }) 104 }, 105 set: function () { 106 var b = "thumbnails" === d.vars.controlNav ? "img" : "a"; 107 d.controlNav = a("." + e + "control-nav li " + b, d.controlsContainer ? d.controlsContainer : d) 108 }, 109 active: function () { 110 d.controlNav.removeClass(e + "active").eq(d.animatingTo).addClass(e + "active") 111 }, 112 update: function (b, c) { 113 d.pagingCount > 1 && "add" === b ? d.controlNavScaffold.append(a("<li><a>" + d.count + "</a></li>")) : 1 === d.pagingCount ? d.controlNavScaffold.find("li").remove() : d.controlNav.eq(c).closest("li").remove(), p.controlNav.set(), d.pagingCount > 1 && d.pagingCount !== d.controlNav.length ? d.update(c, b) : p.controlNav.active() 114 } 115 }, 116 directionNav: { 117 setup: function () { 118 var b = a('<ul class="' + e + 'direction-nav"><li><a class="' + e + 'prev" href="#">' + d.vars.prevText + '</a></li><li><a class="' + e + 'next" href="#">' + d.vars.nextText + "</a></li></ul>"); 119 d.controlsContainer ? (a(d.controlsContainer).append(b), d.directionNav = a("." + e + "direction-nav li a", d.controlsContainer)) : (d.append(b), d.directionNav = a("." + e + "direction-nav li a", d)), p.directionNav.update(), d.directionNav.bind(h, function (b) { 120 b.preventDefault(); 121 var c; 122 ("" === i || i === b.type) && (c = a(this).hasClass(e + "next") ? d.getTarget("next") : d.getTarget("prev"), d.flexAnimate(c, d.vars.pauseOnAction)), "" === i && (i = b.type), p.setToClearWatchedEvent() 123 }) 124 }, 125 update: function () { 126 var a = e + "disabled"; 127 1 === d.pagingCount ? d.directionNav.addClass(a).attr("tabindex", "-1") : d.vars.animationLoop ? d.directionNav.removeClass(a).removeAttr("tabindex") : 0 === d.animatingTo ? d.directionNav.removeClass(a).filter("." + e + "prev").addClass(a).attr("tabindex", "-1") : d.animatingTo === d.last ? d.directionNav.removeClass(a).filter("." + e + "next").addClass(a).attr("tabindex", "-1") : d.directionNav.removeClass(a).removeAttr("tabindex") 128 } 129 }, 130 pausePlay: { 131 setup: function () { 132 var b = a('<div class="' + e + 'pauseplay"><a></a></div>'); 133 d.controlsContainer ? (d.controlsContainer.append(b), d.pausePlay = a("." + e + "pauseplay a", d.controlsContainer)) : (d.append(b), d.pausePlay = a("." + e + "pauseplay a", d)), p.pausePlay.update(d.vars.slideshow ? e + "pause" : e + "play"), d.pausePlay.bind(h, function (b) { 134 b.preventDefault(), ("" === i || i === b.type) && (a(this).hasClass(e + "pause") ? (d.manualPause = !0, d.manualPlay = !1, d.pause()) : (d.manualPause = !1, d.manualPlay = !0, d.play())), "" === i && (i = b.type), p.setToClearWatchedEvent() 135 }) 136 }, 137 update: function (a) { 138 "play" === a ? d.pausePlay.removeClass(e + "pause").addClass(e + "play").html(d.vars.playText) : d.pausePlay.removeClass(e + "play").addClass(e + "pause").html(d.vars.pauseText) 139 } 140 }, 141 touch: function () { 142 function r(f) { 143 d.animating ? f.preventDefault() : (window.navigator.msPointerEnabled || 1 === f.touches.length) && (d.pause(), g = k ? d.h : d.w, i = Number(new Date), o = f.touches[0].pageX, p = f.touches[0].pageY, e = m && l && d.animatingTo === d.last ? 0 : m && l ? d.limit - (d.itemW + d.vars.itemMargin) * d.move * d.animatingTo : m && d.currentSlide === d.last ? d.limit : m ? (d.itemW + d.vars.itemMargin) * d.move * d.currentSlide : l ? (d.last - d.currentSlide + d.cloneOffset) * g : (d.currentSlide + d.cloneOffset) * g, a = k ? p : o, c = k ? o : p, b.addEventListener("touchmove", s, !1), b.addEventListener("touchend", t, !1)) 144 } 145 function s(b) { 146 o = b.touches[0].pageX, p = b.touches[0].pageY, h = k ? a - p : a - o, j = k ? Math.abs(h) < Math.abs(o - c) : Math.abs(h) < Math.abs(p - c); 147 var f = 500; 148 (!j || Number(new Date) - i > f) && (b.preventDefault(), !n && d.transitions && (d.vars.animationLoop || (h /= 0 === d.currentSlide && 0 > h || d.currentSlide === d.last && h > 0 ? Math.abs(h) / g + 2 : 1), d.setProps(e + h, "setTouch"))) 149 } 150 function t() { 151 if (b.removeEventListener("touchmove", s, !1), d.animatingTo === d.currentSlide && !j && null !== h) { 152 var k = l ? -h : h, 153 m = k > 0 ? d.getTarget("next") : d.getTarget("prev"); 154 d.canAdvance(m) && (Number(new Date) - i < 550 && Math.abs(k) > 50 || Math.abs(k) > g / 2) ? d.flexAnimate(m, d.vars.pauseOnAction) : n || d.flexAnimate(d.currentSlide, d.vars.pauseOnAction, !0) 155 } 156 b.removeEventListener("touchend", t, !1), a = null, c = null, h = null, e = null 157 } 158 function u(a) { 159 a.stopPropagation(), d.animating ? a.preventDefault() : (d.pause(), b._gesture.addPointer(a.pointerId), q = 0, g = k ? d.h : d.w, i = Number(new Date), e = m && l && d.animatingTo === d.last ? 0 : m && l ? d.limit - (d.itemW + d.vars.itemMargin) * d.move * d.animatingTo : m && d.currentSlide === d.last ? d.limit : m ? (d.itemW + d.vars.itemMargin) * d.move * d.currentSlide : l ? (d.last - d.currentSlide + d.cloneOffset) * g : (d.currentSlide + d.cloneOffset) * g) 160 } 161 function v(a) { 162 a.stopPropagation(); 163 var c = a.target._slider; 164 if (c) { 165 var d = -a.translationX, 166 f = -a.translationY; 167 return q += k ? f : d, h = q, j = k ? Math.abs(q) < Math.abs(-d) : Math.abs(q) < Math.abs(-f), a.detail === a.MSGESTURE_FLAG_INERTIA ? (setImmediate(function () { 168 b._gesture.stop() 169 }), void 0) : ((!j || Number(new Date) - i > 500) && (a.preventDefault(), !n && c.transitions && (c.vars.animationLoop || (h = q / (0 === c.currentSlide && 0 > q || c.currentSlide === c.last && q > 0 ? Math.abs(q) / g + 2 : 1)), c.setProps(e + h, "setTouch"))), void 0) 170 } 171 } 172 function w(b) { 173 b.stopPropagation(); 174 var d = b.target._slider; 175 if (d) { 176 if (d.animatingTo === d.currentSlide && !j && null !== h) { 177 var f = l ? -h : h, 178 k = f > 0 ? d.getTarget("next") : d.getTarget("prev"); 179 d.canAdvance(k) && (Number(new Date) - i < 550 && Math.abs(f) > 50 || Math.abs(f) > g / 2) ? d.flexAnimate(k, d.vars.pauseOnAction) : n || d.flexAnimate(d.currentSlide, d.vars.pauseOnAction, !0) 180 } 181 a = null, c = null, h = null, e = null, q = 0 182 } 183 } 184 var a, c, e, g, h, i, j = !1, 185 o = 0, 186 p = 0, 187 q = 0; 188 f ? (b.style.msTouchAction = "none", b._gesture = new MSGesture, b._gesture.target = b, b.addEventListener("MSPointerDown", u, !1), b._slider = d, b.addEventListener("MSGestureChange", v, !1), b.addEventListener("MSGestureEnd", w, !1)) : b.addEventListener("touchstart", r, !1) 189 }, 190 resize: function () { 191 !d.animating && d.is(":visible") && (m || d.doMath(), n ? p.smoothHeight() : m ? (d.slides.width(d.computedW), d.update(d.pagingCount), d.setProps()) : k ? (d.viewport.height(d.h), d.setProps(d.h, "setTotal")) : (d.vars.smoothHeight && p.smoothHeight(), d.newSlides.width(d.computedW), d.setProps(d.computedW, "setTotal"))) 192 }, 193 smoothHeight: function (a) { 194 if (!k || n) { 195 var b = n ? d : d.viewport; 196 a ? b.animate({ 197 height: d.slides.eq(d.animatingTo).height() 198 }, a) : b.height(d.slides.eq(d.animatingTo).height()) 199 } 200 }, 201 sync: function (b) { 202 var c = a(d.vars.sync).data("flexslider"), 203 e = d.animatingTo; 204 switch (b) { 205 case "animate": 206 c.flexAnimate(e, d.vars.pauseOnAction, !1, !0); 207 break; 208 case "play": 209 c.playing || c.asNav || c.play(); 210 break; 211 case "pause": 212 c.pause() 213 } 214 }, 215 uniqueID: function (b) { 216 return b.find("[id]").each(function () { 217 var b = a(this); 218 b.attr("id", b.attr("id") + "_clone") 219 }), b 220 }, 221 pauseInvisible: { 222 visProp: null, 223 init: function () { 224 var a = ["webkit", "moz", "ms", "o"]; 225 if ("hidden" in document) return "hidden"; 226 for (var b = 0; b < a.length; b++) a[b] + "Hidden" in document && (p.pauseInvisible.visProp = a[b] + "Hidden"); 227 if (p.pauseInvisible.visProp) { 228 var c = p.pauseInvisible.visProp.replace(/[H|h]idden/, "") + "visibilitychange"; 229 document.addEventListener(c, function () { 230 p.pauseInvisible.isHidden() ? d.startTimeout ? clearTimeout(d.startTimeout) : d.pause() : d.started ? d.play() : d.vars.initDelay > 0 ? setTimeout(d.play, d.vars.initDelay) : d.play() 231 }) 232 } 233 }, 234 isHidden: function () { 235 return document[p.pauseInvisible.visProp] || !1 236 } 237 }, 238 setToClearWatchedEvent: function () { 239 clearTimeout(j), j = setTimeout(function () { 240 i = "" 241 }, 3e3) 242 } 243 }, d.flexAnimate = function (b, c, f, h, i) { 244 if (d.vars.animationLoop || b === d.currentSlide || (d.direction = b > d.currentSlide ? "next" : "prev"), o && 1 === d.pagingCount && (d.direction = d.currentItem < b ? "next" : "prev"), !d.animating && (d.canAdvance(b, i) || f) && d.is(":visible")) { 245 if (o && h) { 246 var j = a(d.vars.asNavFor).data("flexslider"); 247 if (d.atEnd = 0 === b || b === d.count - 1, j.flexAnimate(b, !0, !1, !0, i), d.direction = d.currentItem < b ? "next" : "prev", j.direction = d.direction, Math.ceil((b + 1) / d.visible) - 1 === d.currentSlide || 0 === b) return d.currentItem = b, d.slides.removeClass(e + "active-slide").eq(b).addClass(e + "active-slide"), !1; 248 d.currentItem = b, d.slides.removeClass(e + "active-slide").eq(b).addClass(e + "active-slide"), b = Math.floor(b / d.visible) 249 } 250 if (d.animating = !0, d.animatingTo = b, c && d.pause(), d.vars.before(d), d.syncExists && !i && p.sync("animate"), d.vars.controlNav && p.controlNav.active(), m || d.slides.removeClass(e + "active-slide").eq(b).addClass(e + "active-slide"), d.atEnd = 0 === b || b === d.last, d.vars.directionNav && p.directionNav.update(), b === d.last && (d.vars.end(d), d.vars.animationLoop || d.pause()), n) g ? (d.slides.eq(d.currentSlide).css({ 251 opacity: 0, 252 zIndex: 1 253 }), d.slides.eq(b).css({ 254 opacity: 1, 255 zIndex: 2 256 }), d.wrapup(q)) : (d.slides.eq(d.currentSlide).css({ 257 zIndex: 1 258 }).animate({ 259 opacity: 0 260 }, d.vars.animationSpeed, d.vars.easing), d.slides.eq(b).css({ 261 zIndex: 2 262 }).animate({ 263 opacity: 1 264 }, d.vars.animationSpeed, d.vars.easing, d.wrapup)); 265 else { 266 var r, s, t, q = k ? d.slides.filter(":first").height() : d.computedW; 267 m ? (r = d.vars.itemMargin, t = (d.itemW + r) * d.move * d.animatingTo, s = t > d.limit && 1 !== d.visible ? d.limit : t) : s = 0 === d.currentSlide && b === d.count - 1 && d.vars.animationLoop && "next" !== d.direction ? l ? (d.count + d.cloneOffset) * q : 0 : d.currentSlide === d.last && 0 === b && d.vars.animationLoop && "prev" !== d.direction ? l ? 0 : (d.count + 1) * q : l ? (d.count - 1 - b + d.cloneOffset) * q : (b + d.cloneOffset) * q, d.setProps(s, "", d.vars.animationSpeed), d.transitions ? (d.vars.animationLoop && d.atEnd || (d.animating = !1, d.currentSlide = d.animatingTo), d.container.unbind("webkitTransitionEnd transitionend"), d.container.bind("webkitTransitionEnd transitionend", function () { 268 clearTimeout(d.ensureAnimationEnd), d.wrapup(q) 269 }), clearTimeout(d.ensureAnimationEnd), d.ensureAnimationEnd = setTimeout(function () { 270 d.wrapup(q) 271 }, d.vars.animationSpeed + 100)) : d.container.animate(d.args, d.vars.animationSpeed, d.vars.easing, function () { 272 d.wrapup(q) 273 }) 274 } 275 d.vars.smoothHeight && p.smoothHeight(d.vars.animationSpeed) 276 } 277 }, d.wrapup = function (a) { 278 n || m || (0 === d.currentSlide && d.animatingTo === d.last && d.vars.animationLoop ? d.setProps(a, "jumpEnd") : d.currentSlide === d.last && 0 === d.animatingTo && d.vars.animationLoop && d.setProps(a, "jumpStart")), d.animating = !1, d.currentSlide = d.animatingTo, d.vars.after(d) 279 }, d.animateSlides = function () { 280 !d.animating && q && d.flexAnimate(d.getTarget("next")) 281 }, d.pause = function () { 282 clearInterval(d.animatedSlides), d.animatedSlides = null, d.playing = !1, d.vars.pausePlay && p.pausePlay.update("play"), d.syncExists && p.sync("pause") 283 }, d.play = function () { 284 d.playing && clearInterval(d.animatedSlides), d.animatedSlides = d.animatedSlides || setInterval(d.animateSlides, d.vars.slideshowSpeed), d.started = d.playing = !0, d.vars.pausePlay && p.pausePlay.update("pause"), d.syncExists && p.sync("play") 285 }, d.stop = function () { 286 d.pause(), d.stopped = !0 287 }, d.canAdvance = function (a, b) { 288 var c = o ? d.pagingCount - 1 : d.last; 289 return b ? !0 : o && d.currentItem === d.count - 1 && 0 === a && "prev" === d.direction ? !0 : o && 0 === d.currentItem && a === d.pagingCount - 1 && "next" !== d.direction ? !1 : a !== d.currentSlide || o ? d.vars.animationLoop ? !0 : d.atEnd && 0 === d.currentSlide && a === c && "next" !== d.direction ? !1 : d.atEnd && d.currentSlide === c && 0 === a && "next" === d.direction ? !1 : !0 : !1 290 }, d.getTarget = function (a) { 291 return d.direction = a, "next" === a ? d.currentSlide === d.last ? 0 : d.currentSlide + 1 : 0 === d.currentSlide ? d.last : d.currentSlide - 1 292 }, d.setProps = function (a, b, c) { 293 var e = function () { 294 var c = a ? a : (d.itemW + d.vars.itemMargin) * d.move * d.animatingTo, 295 e = function () { 296 if (m) return "setTouch" === b ? a : l && d.animatingTo === d.last ? 0 : l ? d.limit - (d.itemW + d.vars.itemMargin) * d.move * d.animatingTo : d.animatingTo === d.last ? d.limit : c; 297 switch (b) { 298 case "setTotal": 299 return l ? (d.count - 1 - d.currentSlide + d.cloneOffset) * a : (d.currentSlide + d.cloneOffset) * a; 300 case "setTouch": 301 return l ? a : a; 302 case "jumpEnd": 303 return l ? a : d.count * a; 304 case "jumpStart": 305 return l ? d.count * a : a; 306 default: 307 return a 308 } 309 }(); 310 return -1 * e + "px" 311 }(); 312 d.transitions && (e = k ? "translate3d(0," + e + ",0)" : "translate3d(" + e + ",0,0)", c = void 0 !== c ? c / 1e3 + "s" : "0s", d.container.css("-" + d.pfx + "-transition-duration", c), d.container.css("transition-duration", c)), d.args[d.prop] = e, (d.transitions || void 0 === c) && d.container.css(d.args), d.container.css("transform", e) 313 }, d.setup = function (b) { 314 if (n) d.slides.css({ 315 width: "100%", 316 "float": "left", 317 marginRight: "-100%", 318 position: "relative" 319 }), "init" === b && (g ? d.slides.css({ 320 opacity: 0, 321 display: "block", 322 webkitTransition: "opacity " + d.vars.animationSpeed / 1e3 + "s ease", 323 zIndex: 1 324 }).eq(d.currentSlide).css({ 325 opacity: 1, 326 zIndex: 2 327 }) : d.slides.css({ 328 opacity: 0, 329 display: "block", 330 zIndex: 1 331 }).eq(d.currentSlide).css({ 332 zIndex: 2 333 }).animate({ 334 opacity: 1 335 }, d.vars.animationSpeed, d.vars.easing)), d.vars.smoothHeight && p.smoothHeight(); 336 else { 337 var c, f; 338 "init" === b && (d.viewport = a('<div class="' + e + 'viewport"></div>').css({ 339 overflow: "hidden", 340 position: "relative" 341 }).appendTo(d).append(d.container), d.cloneCount = 0, d.cloneOffset = 0, l && (f = a.makeArray(d.slides).reverse(), d.slides = a(f), d.container.empty().append(d.slides))), d.vars.animationLoop && !m && (d.cloneCount = 2, d.cloneOffset = 1, "init" !== b && d.container.find(".clone").remove(), p.uniqueID(d.slides.first().clone().addClass("clone").attr("aria-hidden", "true")).appendTo(d.container), p.uniqueID(d.slides.last().clone().addClass("clone").attr("aria-hidden", "true")).prependTo(d.container)), d.newSlides = a(d.vars.selector, d), c = l ? d.count - 1 - d.currentSlide + d.cloneOffset : d.currentSlide + d.cloneOffset, k && !m ? (d.container.height(200 * (d.count + d.cloneCount) + "%").css("position", "absolute").width("100%"), setTimeout(function () { 342 d.newSlides.css({ 343 display: "block" 344 }), d.doMath(), d.viewport.height(d.h), d.setProps(c * d.h, "init") 345 }, "init" === b ? 100 : 0)) : (d.container.width(200 * (d.count + d.cloneCount) + "%"), d.setProps(c * d.computedW, "init"), setTimeout(function () { 346 d.doMath(), d.newSlides.css({ 347 width: d.computedW, 348 "float": "left", 349 display: "block" 350 }), d.vars.smoothHeight && p.smoothHeight() 351 }, "init" === b ? 100 : 0)) 352 } 353 m || d.slides.removeClass(e + "active-slide").eq(d.currentSlide).addClass(e + "active-slide"), d.vars.init(d) 354 }, d.doMath = function () { 355 var a = d.slides.first(), 356 b = d.vars.itemMargin, 357 c = d.vars.minItems, 358 e = d.vars.maxItems; 359 d.w = void 0 === d.viewport ? d.width() : d.viewport.width(), d.h = a.height(), d.boxPadding = a.outerWidth() - a.width(), m ? (d.itemT = d.vars.itemWidth + b, d.minW = c ? c * d.itemT : d.w, d.maxW = e ? e * d.itemT - b : d.w, d.itemW = d.minW > d.w ? (d.w - b * (c - 1)) / c : d.maxW < d.w ? (d.w - b * (e - 1)) / e : d.vars.itemWidth > d.w ? d.w : d.vars.itemWidth, d.visible = Math.floor(d.w / d.itemW), d.move = d.vars.move > 0 && d.vars.move < d.visible ? d.vars.move : d.visible, d.pagingCount = Math.ceil((d.count - d.visible) / d.move + 1), d.last = d.pagingCount - 1, d.limit = 1 === d.pagingCount ? 0 : d.vars.itemWidth > d.w ? d.itemW * (d.count - 1) + b * (d.count - 1) : (d.itemW + b) * d.count - d.w - b) : (d.itemW = d.w, d.pagingCount = d.count, d.last = d.count - 1), d.computedW = d.itemW - d.boxPadding 360 }, d.update = function (a, b) { 361 d.doMath(), m || (a < d.currentSlide ? d.currentSlide += 1 : a <= d.currentSlide && 0 !== a && (d.currentSlide -= 1), d.animatingTo = d.currentSlide), d.vars.controlNav && !d.manualControls && ("add" === b && !m || d.pagingCount > d.controlNav.length ? p.controlNav.update("add") : ("remove" === b && !m || d.pagingCount < d.controlNav.length) && (m && d.currentSlide > d.last && (d.currentSlide -= 1, d.animatingTo -= 1), p.controlNav.update("remove", d.last))), d.vars.directionNav && p.directionNav.update() 362 }, d.addSlide = function (b, c) { 363 var e = a(b); 364 d.count += 1, d.last = d.count - 1, k && l ? void 0 !== c ? d.slides.eq(d.count - c).after(e) : d.container.prepend(e) : void 0 !== c ? d.slides.eq(c).before(e) : d.container.append(e), d.update(c, "add"), d.slides = a(d.vars.selector + ":not(.clone)", d), d.setup(), d.vars.added(d) 365 }, d.removeSlide = function (b) { 366 var c = isNaN(b) ? d.slides.index(a(b)) : b; 367 d.count -= 1, d.last = d.count - 1, isNaN(b) ? a(b, d.slides).remove() : k && l ? d.slides.eq(d.last).remove() : d.slides.eq(b).remove(), d.doMath(), d.update(c, "remove"), d.slides = a(d.vars.selector + ":not(.clone)", d), d.setup(), d.vars.removed(d) 368 }, p.init() 369 }, a(window).blur(function () { 370 focused = !1 371 }).focus(function () { 372 focused = !0 373 }), a.flexslider.defaults = { 374 namespace: "flex-", 375 selector: ".slides > li", 376 animation: "fade", 377 easing: "swing", 378 direction: "horizontal", 379 reverse: !1, 380 animationLoop: !0, 381 smoothHeight: !1, 382 startAt: 0, 383 slideshow: !0, 384 slideshowSpeed: 7e3, 385 animationSpeed: 600, 386 initDelay: 0, 387 randomize: !1, 388 thumbCaptions: !1, 389 pauseOnAction: !0, 390 pauseOnHover: !1, 391 pauseInvisible: !0, 392 useCSS: !0, 393 touch: !0, 394 video: !1, 395 controlNav: !0, 396 directionNav: !0, 397 prevText: "Previous", 398 nextText: "Next", 399 keyboard: !0, 400 multipleKeyboard: !1, 401 mousewheel: !1, 402 pausePlay: !1, 403 pauseText: "Pause", 404 playText: "Play", 405 controlsContainer: "", 406 manualControls: "", 407 sync: "", 408 asNavFor: "", 409 itemWidth: 0, 410 itemMargin: 0, 411 minItems: 1, 412 maxItems: 0, 413 move: 0, 414 allowOneSlide: !0, 415 start: function () {}, 416 before: function () {}, 417 after: function () {}, 418 end: function () {}, 419 added: function () {}, 420 removed: function () {}, 421 init: function () {} 422 }, a.fn.flexslider = function (b) { 423 if (void 0 === b && (b = {}), "object" == typeof b) return this.each(function () { 424 var c = a(this), 425 d = b.selector ? b.selector : ".slides > li", 426 e = c.find(d); 427 1 === e.length && b.allowOneSlide === !0 || 0 === e.length ? (e.fadeIn(400), b.start && b.start(c)) : void 0 === c.data("flexslider") && new a.flexslider(this, b) 428 }); 429 var c = a(this).data("flexslider"); 430 switch (b) { 431 case "play": 432 c.play(); 433 break; 434 case "pause": 435 c.pause(); 436 break; 437 case "stop": 438 c.stop(); 439 break; 440 case "next": 441 c.flexAnimate(c.getTarget("next"), !0); 442 break; 443 case "prev": 444 case "previous": 445 c.flexAnimate(c.getTarget("prev"), !0); 446 break; 447 default: 448 "number" == typeof b && c.flexAnimate(b, !0) 449 } 450 } 451}(jQuery);
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.