vendor: 4,928 bytes, lines 1-69
1! 2function(a) { 3 a.flexslider = function(b, c) { 4 var d = a(b); 5 d.vars = a.extend({}, a.flexslider.defaults, c); 6 var j, e = d.vars.namespace, 7 f = window.navigator && window.navigator.msPointerEnabled && window.MSGesture, 8 g = ("ontouchstart" in window || f || window.DocumentTouch && document instanceof DocumentTouch) && d.vars.touch, 9 h = "click touchend MSPointerUp", 10 i = "", 11 k = "vertical" === d.vars.direction, 12 l = d.vars.reverse, 13 m = d.vars.itemWidth > 0, 14 n = "fade" === d.vars.animation, 15 o = "" !== d.vars.asNavFor, 16 p = {}, 17 q = !0; 18 a.data(b, "flexslider", d), p = { 19 init: function() { 20 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 && 21 function() { 22 var a = document.createElement("div"), 23 b = ["perspectiveProperty", "WebkitPerspective", "MozPerspective", "OPerspective", "msPerspective"]; 24 for (var c in b) if (void 0 !== a.style[b[c]]) return d.pfx = b[c].replace("Perspective", "").toLowerCase(), d.prop = "-" + d.pfx + "-transform", !0; 25 return !1 26 }(), "" !== 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() { 27 return Math.round(Math.random()) - .5 28 }), 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) { 29 var b = a.keyCode; 30 if (!d.animating && (39 === b || 37 === b)) { 31 var c = 39 === b ? d.getTarget("next") : 37 === b ? d.getTarget("prev") : !1; 32 d.flexAnimate(c, d.vars.pauseOnAction) 33 } 34 }), d.vars.mousewheel && d.bind("mousewheel", function(a, b) { 35 a.preventDefault(); 36 var f = 0 > b ? d.getTarget("next") : d.getTarget("prev"); 37 d.flexAnimate(f, d.vars.pauseOnAction) 38 }), d.vars.pausePlay && p.pausePlay.setup(), d.vars.slideshow && d.vars.pauseInvisible && p.pauseInvisible.init(), d.vars.slideshow && (d.vars.pauseOnHover && d.hover(function() { 39 !d.manualPlay && !d.manualPause && d.pause() 40 }, function() { 41 !d.manualPause && !d.manualPlay && !d.stopped && d.play() 42 }), 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() { 43 d.vars.start(d) 44 }, 200) 45 }, 46 asNav: { 47 setup: function() { 48 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() { 49 var b = this; 50 b._gesture = new MSGesture, b._gesture.target = b, b.addEventListener("MSPointerDown", function(a) { 51 a.preventDefault(), a.currentTarget._gesture && a.currentTarget._gesture.addPointer(a.pointerId) 52 }, !1), b.addEventListener("MSGestureTap", function(b) { 53 b.preventDefault(); 54 var c = a(this), 55 e = c.index(); 56 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)) 57 }) 58 })) : d.slides.on(h, function(b) { 59 b.preventDefault(); 60 var c = a(this), 61 f = c.index(), 62 g = c.offset().left - a(d).scrollLeft(); 63 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)) 64 }) 65 } 66 }, 67 controlNav: { 68 setup: function() { 69 d.manualControls ? p.controlNav.setupManual() : p.controlNav.setupPaging(
69) 70 }, 71 setupPaging: function() { 72 var f, g, b = "thumbnails" === d.vars.controlNav ? "control-thumbs" : "control-paging", 73 c = 1; 74 if (d.controlNavScaffold = a('<ol class="' + e + "control-nav " + e + b + '"></ol>'), d.pagingCount > 1) for (var j = 0; j < d.pagingCount; j++) { 75 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) { 76 var k = g.attr("data-thumbcaption"); 77 "" != k && void 0 != k && (f += '<span class="' + e + 'caption">' + k + "</span>") 78 } 79 d.controlNavScaffold.append("<li>" + f + "</li>"), c++ 80 } 81 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) { 82 if (b.preventDefault(), "" === i || i === b.type) { 83 var c = a(this), 84 f = d.controlNav.index(c); 85 c.hasClass(e + "active") || (d.direction = f > d.currentSlide ? "next" : "prev", d.flexAnimate(f, d.vars.pauseOnAction)) 86 } 87 "" === i && (i = b.type), p.setToClearWatchedEvent() 88 }) 89 }, 90 setupManual: function() { 91 d.controlNav = d.manualControls, p.controlNav.active(), d.controlNav.bind(h, function(b) { 92 if (b.preventDefault(), "" === i || i === b.type) { 93 var c = a(this), 94 f = d.controlNav.index(c); 95 c.hasClass(e + "active") || (d.direction = f > d.currentSlide ? "next" : "prev", d.flexAnimate(f, d.vars.pauseOnAction)) 96 } 97 "" === i && (i = b.type), p.setToClearWatchedEvent() 98 }) 99 }, 100 set: function() { 101 var b = "thumbnails" === d.vars.controlNav ? "img" : "a"; 102 d.controlNav = a("." + e + "control-nav li " + b, d.controlsContainer ? d.controlsContainer : d) 103 }, 104 active: function() { 105 d.controlNav.removeClass(e + "active").eq(d.animatingTo).addClass(e + "active") 106 }, 107 update: function(b, c) { 108 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() 109 } 110 }, 111 directionNav: { 112 setup: function() { 113 if(d.pagingCount > 1) 114 { 115 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>"); 116 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) { 117 b.preventDefault(); 118 var c; 119 ("" === 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() 120 }) 121 } 122 }, 123 update: function() { 124 var a = e + "disabled"; 125 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") 126 } 127 }, 128 pausePlay: { 129 setup: function() { 130 var b = a('<div class="' + e + 'pauseplay"><a></a></div>'); 131 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) { 132 b.preventDefault(), ("" === i || i === b.type) && (a(this).hasClass(e + "pause") ? (d.manualPause = !0, d.manualPlay
vendor: 34,071 bytes, lines 132-693
132= !1, d.pause()) : (d.manualPause = !1, d.manualPlay = !0, d.play())), "" === i && (i = b.type), p.setToClearWatchedEvent() 133 }) 134 }, 135 update: function(a) { 136 "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) 137 } 138 }, 139 touch: function() { 140 function r(f) { 141 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)) 142 } 143 function s(b) { 144 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); 145 var f = 500; 146 (!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"))) 147 } 148 function t() { 149 if (b.removeEventListener("touchmove", s, !1), d.animatingTo === d.currentSlide && !j && null !== h) { 150 var k = l ? -h : h, 151 m = k > 0 ? d.getTarget("next") : d.getTarget("prev"); 152 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) 153 } 154 b.removeEventListener("touchend", t, !1), a = null, c = null, h = null, e = null 155 } 156 function u(a) { 157 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) 158 } 159 function v(a) { 160 a.stopPropagation(); 161 var c = a.target._slider; 162 if (c) { 163 var d = -a.translationX, 164 f = -a.translationY; 165 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() { 166 b._gesture.stop() 167 }), 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) 168 } 169 } 170 function w(b) { 171 b.stopPropagation(); 172 var d = b.target._slider; 173 if (d) { 174 if (d.animatingTo === d.currentSlide && !j && null !== h) { 175 var f = l ? -h : h, 176 k = f > 0 ? d.getTarget("next") : d.getTarget("prev"); 177 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) 178 } 179 a = null, c = null, h = null, e = null, q = 0 180 } 181 } 182 var a, c, e, g, h, i, j = !1, 183 o = 0, 184 p = 0, 185 q = 0; 186 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) 187 }, 188 resize: function() { 189 !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"))) 190 }, 191 smoothHeight: function(a) { 192 if (!k || n) { 193 var b = n ? d : d.viewport; 194 a ? b.animate({ 195 height: d.slides.eq(d.animatingTo).height() 196 }, a) : b.height(d.slides.eq(d.animatingTo).height()) 197 } 198 }, 199 sync: function(b) { 200 var c = a(d.vars.sync).data("flexslider"), 201 e = d.animatingTo; 202 switch (b) { 203 case "animate": 204 c.flexAnimate(e, d.vars.pauseOnAction, !1, !0); 205 break; 206 case "play": 207 !c.playing && !c.asNav && c.play(); 208 break; 209 case "pause": 210 c.pause() 211 } 212 }, 213 uniqueID: function(b) { 214 return b.find("[id]").each(function() { 215 var b = a(this); 216 b.attr("id", b.attr("id") + "_clone") 217 }), b 218 }, 219 pauseInvisible: { 220 visProp: null, 221 init: function() { 222 var a = ["webkit", "moz", "ms", "o"]; 223 if ("hidden" in document) return "hidden"; 224 for (var b = 0; b < a.length; b++) a[b] + "Hidden" in document && (p.pauseInvisible.visProp = a[b] + "Hidden"); 225 if (p.pauseInvisible.visProp) { 226 var c = p.pauseInvisible.visProp.replace(/[H|h]idden/, "") + "visibilitychange"; 227 document.addEventListener(c, function() { 228 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() 229 }) 230 } 231 }, 232 isHidden: function() { 233 return document[p.pauseInvisible.visProp] || !1 234 } 235 }, 236 setToClearWatchedEvent: function() { 237 clearTimeout(j), j = setTimeout(function() { 238 i = "" 239 }, 3e3) 240 } 241 }, d.flexAnimate = function(b, c, f, h, i) { 242 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")) { 243 if (o && h) { 244 var j = a(d.vars.asNavFor).data("flexslider"); 245 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; 246 d.currentItem = b, d.slides.removeClass(e + "active-slide").eq(b).addClass(e + "active-slide"), b = Math.floor(b / d.visible) 247 } 248 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({ 249 opacity: 0, 250 zIndex: 1 251 }), d.slides.eq(b).css({ 252 opacity: 1, 253 zIndex: 2 254 }), d.wrapup(q)) : (d.slides.eq(d.currentSlide).css({ 255 zIndex: 1 256 }).animate({ 257 opacity: 0 258 }, d.vars.animationSpeed, d.vars.easing), d.slides.eq(b).css({ 259 zIndex: 2 260 }).animate({ 261 opacity: 1 262 }, d.vars.animationSpeed, d.vars.easing, d.wrapup)); 263 else { 264 var r, s, t, q = k ? d.slides.filter(":first").height() : d.computedW; 265 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() { 266 d.wrapup(q) 267 })) : d.container.animate(d.args, d.vars.animationSpeed, d.vars.easing, function() { 268 d.wrapup(q) 269 }) 270 } 271 d.vars.smoothHeight && p.smoothHeight(d.vars.animationSpeed) 272 } 273 }, d.wrapup = function(a) { 274 !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) 275 }, d.animateSlides = function() { 276 !d.animating && q && d.flexAnimate(d.getTarget("next")) 277 }, d.pause = function() { 278 clearInterval(d.animatedSlides), d.animatedSlides = null, d.playing = !1, d.vars.pausePlay && p.pausePlay.update("play"), d.syncExists && p.sync("pause") 279 }, d.play = function() { 280 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") 281 }, d.stop = function() { 282 d.pause(), d.stopped = !0 283 }, d.canAdvance = function(a, b) { 284 var c = o ? d.pagingCount - 1 : d.last; 285 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 286 }, d.getTarget = function(a) { 287 return d.direction = a, "next" === a ? d.currentSlide === d.last ? 0 : d.currentSlide + 1 : 0 === d.currentSlide ? d.last : d.currentSlide - 1 288 }, d.setProps = function(a, b, c) { 289 var e = function() { 290 var c = a ? a : (d.itemW + d.vars.itemMargin) * d.move * d.animatingTo, 291 e = function() { 292 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; 293 switch (b) { 294 case "setTotal": 295 return l ? (d.count - 1 - d.currentSlide + d.cloneOffset) * a : (d.currentSlide + d.cloneOffset) * a; 296 case "setTouch": 297 return l ? a : a; 298 case "jumpEnd": 299 return l ? a : d.count * a; 300 case "jumpStart": 301 return l ? d.count * a : a; 302 default: 303 return a 304 } 305 }(); 306 return -1 * e + "px" 307 }(); 308 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) 309 }, d.setup = function(b) { 310 if (n) d.slides.css({ 311 width: "100%", 312 "float": "left", 313 marginRight: "-100%", 314 position: "relative" 315 }), "init" === b && (g ? d.slides.css({ 316 opacity: 0, 317 display: "block", 318 webkitTransition: "opacity " + d.vars.animationSpeed / 1e3 + "s ease", 319 zIndex: 1 320 }).eq(d.currentSlide).css({ 321 opacity: 1, 322 zIndex: 2 323 }) : d.slides.css({ 324 opacity: 0, 325 display: "block", 326 zIndex: 1 327 }).eq(d.currentSlide).css({ 328 zIndex: 2 329 }).animate({ 330 opacity: 1 331 }, d.vars.animationSpeed, d.vars.easing)), d.vars.smoothHeight && p.smoothHeight(); 332 else { 333 var c, f; 334 "init" === b && (d.viewport = a('<div class="' + e + 'viewport"></div>').css({ 335 overflow: "hidden", 336 position: "relative" 337 }).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(), d.container.append(d.slides.first().clone().addClass("clone").attr("aria-hidden", "true")).prepend(d.slides.last().clone().addClass("clone").attr("aria-hidden", "true")), p.uniqueID(d.slides.first().clone().addClass("clone")).appendTo(d.container), p.uniqueID(d.slides.last().clone().addClass("clone")).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() { 338 d.newSlides.css({ 339 display: "block" 340 }), d.doMath(), d.viewport.height(d.h), d.setProps(c * d.h, "init") 341 }, "init" === b ? 100 : 0)) : (d.container.width(200 * (d.count + d.cloneCount) + "%"), d.setProps(c * d.computedW, "init"), setTimeout(function() { 342 d.doMath(), d.newSlides.css({ 343 width: d.computedW, 344 "float": "left", 345 display: "block" 346 }), d.vars.smoothHeight && p.smoothHeight() 347 }, "init" === b ? 100 : 0)) 348 } 349 m || d.slides.removeClass(e + "active-slide").eq(d.currentSlide).addClass(e + "active-slide"), d.vars.init(d) 350 }, d.doMath = function() { 351 var a = d.slides.first(), 352 b = d.vars.itemMargin, 353 c = d.vars.minItems, 354 e = d.vars.maxItems; 355 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 356 }, d.update = function(a, b) { 357 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() 358 }, d.addSlide = function(b, c) { 359 var e = a(b); 360 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) 361 }, d.removeSlide = function(b) { 362 var c = isNaN(b) ? d.slides.index(a(b)) : b; 363 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) 364 }, p.init() 365 }, a(window).blur(function() { 366 focused = !1 367 }).focus(function() { 368 focused = !0 369 }), a.flexslider.defaults = { 370 namespace: "flex-", 371 selector: ".slides > li", 372 animation: "fade", 373 easing: "swing", 374 direction: "horizontal", 375 reverse: !1, 376 animationLoop: !0, 377 smoothHeight: !1, 378 startAt: 0, 379 slideshow: !0, 380 slideshowSpeed: 7e3, 381 animationSpeed: 600, 382 initDelay: 0, 383 randomize: !1, 384 thumbCaptions: !1, 385 pauseOnAction: !0, 386 pauseOnHover: !1, 387 pauseInvisible: !0, 388 useCSS: !0, 389 touch: !0, 390 video: !1, 391 controlNav: !0, 392 directionNav: !0, 393 prevText: "Previous", 394 nextText: "Next", 395 keyboard: !0, 396 multipleKeyboard: !1, 397 mousewheel: !1, 398 pausePlay: !1, 399 pauseText: "Pause", 400 playText: "Play", 401 controlsContainer: "", 402 manualControls: "", 403 sync: "", 404 asNavFor: "", 405 itemWidth: 0, 406 itemMargin: 0, 407 minItems: 1, 408 maxItems: 0, 409 move: 0, 410 allowOneSlide: !0, 411 start: function() {}, 412 before: function() {}, 413 after: function() {}, 414 end: function() {}, 415 added: function() {}, 416 removed: function() {}, 417 init: function() {} 418 }, a.fn.flexslider = function(b) { 419 if (void 0 === b && (b = {}), "object" == typeof b) return this.each(function() { 420 var c = a(this), 421 d = b.selector ? b.selector : ".slides > li", 422 e = c.find(d); 423 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) 424 }); 425 var c = a(this).data("flexslider"); 426 switch (b) { 427 case "play": 428 c.play(); 429 break; 430 case "pause": 431 c.pause(); 432 break; 433 case "stop": 434 c.stop(); 435 break; 436 case "next": 437 c.flexAnimate(c.getTarget("next"), !0); 438 break; 439 case "prev": 440 case "previous": 441 c.flexAnimate(c.getTarget("prev"), !0); 442 break; 443 default: 444 "number" == typeof b && c.flexAnimate(b, !0) 445 } 446 } 447}(jQuery), function(a) { 448 a.flexslider = function(b, c) { 449 var d = a(b); 450 d.vars = a.extend({}, a.flexslider.defaults, c); 451 var j, e = d.vars.namespace, 452 f = window.navigator && window.navigator.msPointerEnabled && window.MSGesture, 453 g = ("ontouchstart" in window || f || window.DocumentTouch && document instanceof DocumentTouch) && d.vars.touch, 454 h = "click touchend MSPointerUp", 455 i = "", 456 k = "vertical" === d.vars.direction, 457 l = d.vars.reverse, 458 m = d.vars.itemWidth > 0, 459 n = "fade" === d.vars.animation, 460 o = "" !== d.vars.asNavFor, 461 p = {}, 462 q = !0; 463 a.data(b, "flexslider", d), p = { 464 init: function() { 465 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 && 466 function() { 467 var a = document.createElement("div"), 468 b = ["perspectiveProperty", "WebkitPerspective", "MozPerspective", "OPerspective", "msPerspective"]; 469 for (var c in b) if (void 0 !== a.style[b[c]]) return d.pfx = b[c].replace("Perspective", "").toLowerCase(), d.prop = "-" + d.pfx + "-transform", !0; 470 return !1 471 }(), "" !== 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() { 472 return Math.round(Math.random()) - .5 473 }), 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) { 474 var b = a.keyCode; 475 if (!d.animating && (39 === b || 37 === b)) { 476 var c = 39 === b ? d.getTarget("next") : 37 === b ? d.getTarget("prev") : !1; 477 d.flexAnimate(c, d.vars.pauseOnAction) 478 } 479 }), d.vars.mousewheel && d.bind("mousewheel", function(a, b) { 480 a.preventDefault(); 481 var f = 0 > b ? d.getTarget("next") : d.getTarget("prev"); 482 d.flexAnimate(f, d.vars.pauseOnAction) 483 }), d.vars.pausePlay && p.pausePlay.setup(), d.vars.slideshow && d.vars.pauseInvisible && p.pauseInvisible.init(), d.vars.slideshow && (d.vars.pauseOnHover && d.hover(function() { 484 !d.manualPlay && !d.manualPause && d.pause() 485 }, function() { 486 !d.manualPause && !d.manualPlay && !d.stopped && d.play() 487 }), 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() { 488 d.vars.start(d) 489 }, 200) 490 }, 491 asNav: { 492 setup: function() { 493 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() { 494 var b = this; 495 b._gesture = new MSGesture, b._gesture.target = b, b.addEventListener("MSPointerDown", function(a) { 496 a.preventDefault(), a.currentTarget._gesture && a.currentTarget._gesture.addPointer(a.pointerId) 497 }, !1), b.addEventListener("MSGestureTap", function(b) { 498 b.preventDefault(); 499 var c = a(this), 500 e = c.index(); 501 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)) 502 }) 503 })) : d.slides.on(h, function(b) { 504 b.preventDefault(); 505 var c = a(this), 506 f = c.index(), 507 g = c.offset().left - a(d).scrollLeft(); 508 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)) 509 }) 510 } 511 }, 512 controlNav: { 513 setup: function() { 514 d.manualControls ? p.controlNav.setupManual() : p.controlNav.setupPaging() 515 }, 516 setupPaging: function() { 517 var f, g, b = "thumbnails" === d.vars.controlNav ? "control-thumbs" : "control-paging", 518 c = 1; 519 if (d.controlNavScaffold = a('<ol class="' + e + "control-nav " + e + b + '"></ol>'), d.pagingCount > 1) for (var j = 0; j < d.pagingCount; j++) { 520 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) { 521 var k = g.attr("data-thumbcaption"); 522 "" != k && void 0 != k && (f += '<span class="' + e + 'caption">' + k + "</span>") 523 } 524 d.controlNavScaffold.append("<li>" + f + "</li>"), c++ 525 } 526 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) { 527 if (b.preventDefault(), "" === i || i === b.type) { 528 var c = a(this), 529 f = d.controlNav.index(c); 530 c.hasClass(e + "active") || (d.direction = f > d.currentSlide ? "next" : "prev", d.flexAnimate(f, d.vars.pauseOnAction)) 531 } 532 "" === i && (i = b.type), p.setToClearWatchedEvent() 533 }) 534 }, 535 setupManual: function() { 536 d.controlNav = d.manualControls, p.controlNav.active(), d.controlNav.bind(h, function(b) { 537 if (b.preventDefault(), "" === i || i === b.type) { 538 var c = a(this), 539 f = d.controlNav.index(c); 540 c.hasClass(e + "active") || (d.direction = f > d.currentSlide ? "next" : "prev", d.flexAnimate(f, d.vars.pauseOnAction)) 541 } 542 "" === i && (i = b.type), p.setToClearWatchedEvent() 543 }) 544 }, 545 set: function() { 546 var b = "thumbnails" === d.vars.controlNav ? "img" : "a"; 547 d.controlNav = a("." + e + "control-nav li " + b, d.controlsContainer ? d.controlsContainer : d) 548 }, 549 active: function() { 550 d.controlNav.removeClass(e + "active").eq(d.animatingTo).addClass(e + "active") 551 }, 552 update: function(b, c) { 553 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() 554 } 555 }, 556 directionNav: { 557 setup: function() { 558 if(d.pagingCount > 1) 559 { 560 var b = a('<ul class="' + e + 'direction-nav"><li><div class="' + e + 'prev"><span></span></div></li><li><div class="' + e + 'next" ><span></span></div></li></ul>'); 561 d.controlsContainer ? (a(d.controlsContainer).append(b), d.directionNav = a("." + e + "direction-nav li div", d.controlsContainer)) : (d.append(b), d.directionNav = a("." + e + "direction-nav li div", d)), p.directionNav.update(), d.directionNav.bind(h, function(b) { 562 b.preventDefault(); 563 var c; 564 ("" === 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() 565 }) 566 } 567 }, 568 update: function() { 569 var a = e + "disabled"; 570 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") 571 } 572 }, 573 pausePlay: { 574 setup: function() { 575 var b = a('<div class="' + e + 'pauseplay"><a></a></div>'); 576 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) { 577 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() 578 }) 579 }, 580 update: function(a) { 581 "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) 582 } 583 }, 584 touch: function() { 585 function r(f) { 586 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)) 587 } 588 function s(b) { 589 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); 590 var f = 500; 591 (!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"))) 592 } 593 function t() { 594 if (b.removeEventListener("touchmove", s, !1), d.animatingTo === d.currentSlide && !j && null !== h) { 595 var k = l ? -h : h, 596 m = k > 0 ? d.getTarget("next") : d.getTarget("prev"); 597 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) 598 } 599 b.removeEventListener("touchend", t, !1), a = null, c = null, h = null, e = null 600 } 601 function u(a) { 602 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) 603 } 604 function v(a) { 605 a.stopPropagation(); 606 var c = a.target._slider; 607 if (c) { 608 var d = -a.translationX, 609 f = -a.translationY; 610 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() { 611 b._gesture.stop() 612 }), 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) 613 } 614 } 615 function w(b) { 616 b.stopPropagation(); 617 var d = b.target._slider; 618 if (d) { 619 if (d.animatingTo === d.currentSlide && !j && null !== h) { 620 var f = l ? -h : h, 621 k = f > 0 ? d.getTarget("next") : d.getTarget("prev"); 622 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) 623 } 624 a = null, c = null, h = null, e = null, q = 0 625 } 626 } 627 var a, c, e, g, h, i, j = !1, 628 o = 0, 629 p = 0, 630 q = 0; 631 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) 632 }, 633 resize: function() { 634 !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"))) 635 }, 636 smoothHeight: function(a) { 637 if (!k || n) { 638 var b = n ? d : d.viewport; 639 a ? b.animate({ 640 height: d.slides.eq(d.animatingTo).height() 641 }, a) : b.height(d.slides.eq(d.animatingTo).height()) 642 } 643 }, 644 sync: function(b) { 645 var c = a(d.vars.sync).data("flexslider"), 646 e = d.animatingTo; 647 switch (b) { 648 case "animate": 649 c.flexAnimate(e, d.vars.pauseOnAction, !1, !0); 650 break; 651 case "play": 652 !c.playing && !c.asNav && c.play(); 653 break; 654 case "pause": 655 c.pause() 656 } 657 }, 658 uniqueID: function(b) { 659 return b.find("[id]").each(function() { 660 var b = a(this); 661 b.attr("id", b.attr("id") + "_clone") 662 }), b 663 }, 664 pauseInvisible: { 665 visProp: null, 666 init: function() { 667 var a = ["webkit", "moz", "ms", "o"]; 668 if ("hidden" in document) return "hidden"; 669 for (var b = 0; b < a.length; b++) a[b] + "Hidden" in document && (p.pauseInvisible.visProp = a[b] + "Hidden"); 670 if (p.pauseInvisible.visProp) { 671 var c = p.pauseInvisible.visProp.replace(/[H|h]idden/, "") + "visibilitychange"; 672 document.addEventListener(c, function() { 673 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() 674 }) 675 } 676 }, 677 isHidden: function() { 678 return document[p.pauseInvisible.visProp] || !1 679 } 680 }, 681 setToClearWatchedEvent: function() { 682 clearTimeout(j), j = setTimeout(function() { 683 i = "" 684 }, 3e3) 685 } 686 }, d.flexAnimate = function(b, c, f, h, i) { 687 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")) { 688 if (o && h) { 689 var j = a(d.vars.asNavFor).data("flexslider"); 690 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; 691 d.currentItem = b, d.slides.removeClass(e + "active-slide").eq(b).addClass(e + "active-slide"), b = Math.floor(b / d.visible) 692 } 693 if (d.animating = !0, d.animatingTo = b, c && d.pause(), d.vars.before(d), d.syncExists && !i && p.sync("animate"), d.vars.c
693ontrolNav && 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({ 694 opacity: 0, 695 zIndex: 1 696 }), d.slides.eq(b).css({ 697 opacity: 1, 698 zIndex: 2 699 }), d.wrapup(q)) : (d.slides.eq(d.currentSlide).css({ 700 zIndex: 1 701 }).animate({ 702 opacity: 0 703 }, d.vars.animationSpeed, d.vars.easing), d.slides.eq(b).css({ 704 zIndex: 2 705 }).animate({ 706 opacity: 1 707 }, d.vars.animationSpeed, d.vars.easing, d.wrapup)); 708 else { 709 var r, s, t, q = k ? d.slides.filter(":first").height() : d.computedW; 710 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() { 711 d.wrapup(q) 712 })) : d.container.animate(d.args, d.vars.animationSpeed, d.vars.easing, function() { 713 d.wrapup(q) 714 }) 715 } 716 d.vars.smoothHeight && p.smoothHeight(d.vars.animationSpeed) 717 } 718 }, d.wrapup = function(a) { 719 !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) 720 }, d.animateSlides = function() { 721 !d.animating && q && d.flexAnimate(d.getTarget("next")) 722 }, d.pause = function() { 723 clearInterval(d.animatedSlides), d.animatedSlides = null, d.playing = !1, d.vars.pausePlay && p.pausePlay.update("play"), d.syncExists && p.sync("pause") 724 }, d.play = function() { 725 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") 726 }, d.stop = function() { 727 d.pause(), d.stopped = !0 728 }, d.canAdvance = function(a, b) { 729 var c = o ? d.pagingCount - 1 : d.last; 730 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 731 }, d.getTarget = function(a) { 732 return d.direction = a, "next" === a ? d.currentSlide === d.last ? 0 : d.currentSlide + 1 : 0 === d.currentSlide ? d.last : d.currentSlide - 1 733 }, d.setProps = function(a, b, c) { 734 var e = function() { 735 var c = a ? a : (d.itemW + d.vars.itemMargin) * d.move * d.animatingTo, 736 e = function() { 737 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; 738 switch (b) { 739 case "setTotal": 740 return l ? (d.count - 1 - d.currentSlide + d.cloneOffset) * a : (d.currentSlide + d.cloneOffset) * a; 741 case "setTouch": 742 return l ? a : a; 743 case "jumpEnd": 744 return l ? a : d.count * a; 745 case "jumpStart": 746 return l ? d.count * a : a; 747 default: 748 return a 749 } 750 }(); 751 return -1 * e + "px" 752 }(); 753 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) 754 }, d.setup = function(b) { 755 if (n) d.slides.css({ 756 width: "100%", 757 "float": "left", 758 marginRight: "-100%", 759 position: "relative" 760 }), "init" === b && (g ? d.slides.css({ 761 opacity: 0, 762 display: "block", 763 webkitTransition: "opacity " + d.vars.animationSpeed / 1e3 + "s ease", 764 zIndex: 1 765 }).eq(d.currentSlide).css({ 766 opacity: 1, 767 zIndex: 2 768 }) : d.slides.css({ 769 opacity: 0, 770 display: "block", 771 zIndex: 1 772 }).eq(d.currentSlide).css({ 773 zIndex: 2 774 }).animate({ 775 opacity: 1 776 }, d.vars.animationSpeed, d.vars.easing)), d.vars.smoothHeight && p.smoothHeight(); 777 else { 778 var c, f; 779 "init" === b && (d.viewport = a('<div class="' + e + 'viewport"></div>').css({ 780 overflow: "hidden", 781 position: "relative" 782 }).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(), d.container.append(d.slides.first().clone().addClass("clone").attr("aria-hidden", "true")).prepend(d.slides.last().clone().addClass("clone").attr("aria-hidden", "true")), p.uniqueID(d.slides.first().clone().addClass("clone")).appendTo(d.container), p.uniqueID(d.slides.last().clone().addClass("clone")).prependTo(d.container)), d.newSlides = a(d.vars.selector, d), c = l ? d.count - 1 - d.currentSlide + d.
vendor: 4,909 bytes, lines 782-892
782cloneOffset : d.currentSlide + d.cloneOffset, k && !m ? (d.container.height(200 * (d.count + d.cloneCount) + "%").css("position", "absolute").width("100%"), setTimeout(function() { 783 d.newSlides.css({ 784 display: "block" 785 }), d.doMath(), d.viewport.height(d.h), d.setProps(c * d.h, "init") 786 }, "init" === b ? 100 : 0)) : (d.container.width(200 * (d.count + d.cloneCount) + "%"), d.setProps(c * d.computedW, "init"), setTimeout(function() { 787 d.doMath(), d.newSlides.css({ 788 width: d.computedW, 789 "float": "left", 790 display: "block" 791 }), d.vars.smoothHeight && p.smoothHeight() 792 }, "init" === b ? 100 : 0)) 793 } 794 m || d.slides.removeClass(e + "active-slide").eq(d.currentSlide).addClass(e + "active-slide"), d.vars.init(d) 795 }, d.doMath = function() { 796 var a = d.slides.first(), 797 b = d.vars.itemMargin, 798 c = d.vars.minItems, 799 e = d.vars.maxItems; 800 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 801 }, d.update = function(a, b) { 802 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() 803 }, d.addSlide = function(b, c) { 804 var e = a(b); 805 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) 806 }, d.removeSlide = function(b) { 807 var c = isNaN(b) ? d.slides.index(a(b)) : b; 808 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) 809 }, p.init() 810 }, a(window).blur(function() { 811 focused = !1 812 }).focus(function() { 813 focused = !0 814 }), a.flexslider.defaults = { 815 namespace: "flex-", 816 selector: ".slides > li", 817 animation: "fade", 818 easing: "swing", 819 direction: "horizontal", 820 reverse: !1, 821 animationLoop: !0, 822 smoothHeight: !1, 823 startAt: 0, 824 slideshow: !0, 825 slideshowSpeed: 7e3, 826 animationSpeed: 600, 827 initDelay: 0, 828 randomize: !1, 829 thumbCaptions: !1, 830 pauseOnAction: !0, 831 pauseOnHover: !1, 832 pauseInvisible: !0, 833 useCSS: !0, 834 touch: !0, 835 video: !1, 836 controlNav: !0, 837 directionNav: !0, 838 prevText: "Previous", 839 nextText: "Next", 840 keyboard: !0, 841 multipleKeyboard: !1, 842 mousewheel: !1, 843 pausePlay: !1, 844 pauseText: "Pause", 845 playText: "Play", 846 controlsContainer: "", 847 manualControls: "", 848 sync: "", 849 asNavFor: "", 850 itemWidth: 0, 851 itemMargin: 0, 852 minItems: 1, 853 maxItems: 0, 854 move: 0, 855 allowOneSlide: !0, 856 start: function() {}, 857 before: function() {}, 858 after: function() {}, 859 end: function() {}, 860 added: function() {}, 861 removed: function() {}, 862 init: function() {} 863 }, a.fn.flexslider = function(b) { 864 if (void 0 === b && (b = {}), "object" == typeof b) return this.each(function() { 865 var c = a(this), 866 d = b.selector ? b.selector : ".slides > li", 867 e = c.find(d); 868 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) 869 }); 870 var c = a(this).data("flexslider"); 871 switch (b) { 872 case "play": 873 c.play(); 874 break; 875 case "pause": 876 c.pause(); 877 break; 878 case "stop": 879 c.stop(); 880 break; 881 case "next": 882 c.flexAnimate(c.getTarget("next"), !0); 883 break; 884 case "prev": 885 case "previous": 886 c.flexAnimate(c.getTarget("prev"), !0); 887 break; 888 default: 889 "number" == typeof b && c.flexAnimate(b, !0) 890 } 891 } 892}(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.