vendor: 50,829 bytes, lines 1-1327
1/*! 2 * Fotorama 4.5.1 | http://fotorama.io/license/ 3 */ 4! function(a, b, c, d, e) { 5 "use strict"; 6 7 function f(a) { 8 var b = "bez_" + d.makeArray(arguments).join("_").replace(".", "p"); 9 if ("function" != typeof d.easing[b]) { 10 var c = function(a, b) { 11 var c = [null, null], 12 d = [null, null], 13 e = [null, null], 14 f = function(f, g) { 15 return e[g] = 3 * a[g], d[g] = 3 * (b[g] - a[g]) - e[g], c[g] = 1 - e[g] - d[g], f * (e[g] + f * (d[g] + f * c[g])) 16 }, g = function(a) { 17 return e[0] + a * (2 * d[0] + 3 * c[0] * a) 18 }, h = function(a) { 19 for (var b, c = a, d = 0; ++d < 14 && (b = f(c, 0) - a, !(Math.abs(b) < .001));) c -= b / g(c); 20 return c 21 }; 22 return function(a) { 23 return f(h(a), 1) 24 } 25 }; 26 d.easing[b] = function(b, d, e, f, g) { 27 return f * c([a[0], a[1]], [a[2], a[3]])(d / g) + e 28 } 29 } 30 return b 31 } 32 33 function g() {} 34 35 function h(a, b, c) { 36 return Math.max(isNaN(b) ? -1 / 0 : b, Math.min(isNaN(c) ? 1 / 0 : c, a)) 37 } 38 39 function i(a) { 40 return a.match(/ma/) && a.match(/-?\d+(?!d)/g)[a.match(/3d/) ? 12 : 4] 41 } 42 43 function j(a) { 44 return Ec ? +i(a.css("transform")) : +a.css("left").replace("px", "") 45 } 46 47 function k(a, b) { 48 var c = {}; 49 return Ec ? c.transform = "translate3d(" + (a + (b ? .001 : 0)) + "px,0,0)" : c.left = a, c 50 } 51 52 function l(a) { 53 return { 54 "transition-duration": a + "ms" 55 } 56 } 57 58 function m(a, b) { 59 return +String(a).replace(b || "px", "") || e 60 } 61 62 function n(a) { 63 return /%$/.test(a) && m(a, "%") 64 } 65 66 function o(a, b) { 67 return n(a) / 100 * b || m(a) 68 } 69 70 function p(a) { 71 return ( !! m(a) || !! m(a, "%")) && a 72 } 73 74 function q(a, b, c, d) { 75 return (a - (d || 0)) * (b + (c || 0)) 76 } 77 78 function r(a, b, c, d) { 79 return -Math.round(a / (b + (c || 0)) - (d || 0)) 80 } 81 82 function s(a) { 83 var b = a.data(); 84 if (!b.tEnd) { 85 var c = a[0], 86 d = { 87 WebkitTransition: "webkitTransitionEnd", 88 MozTransition: "transitionend", 89 OTransition: "oTransitionEnd otransitionend", 90 msTransition: "MSTransitionEnd", 91 transition: "transitionend" 92 }; 93 c.addEventListener(d[mc.prefixed("transition")], function(a) { 94 b.tProp && a.propertyName.match(b.tProp) && b.onEndFn() 95 }, !1), b.tEnd = !0 96 } 97 } 98 99 function t(a, b, c, d) { 100 var e, f = a.data(); 101 f && (f.onEndFn = function() { 102 e || (e = !0, clearTimeout(f.tT), c()) 103 }, f.tProp = b, clearTimeout(f.tT), f.tT = setTimeout(function() { 104 f.onEndFn() 105 }, 1.5 * d), s(a)) 106 } 107 108 function u(a, b, c) { 109 if (a.length) { 110 var d = a.data(); 111 Ec ? (a.css(l(0)), d.onEndFn = g, clearTimeout(d.tT)) : a.stop(); 112 var e = v(b, function() { 113 return j(a) 114 }); 115 return a.css(k(e, c)), e 116 } 117 } 118 119 function v() { 120 for (var a, b = 0, c = arguments.length; c > b && (a = b ? arguments[b]() : arguments[b], "number" != typeof a); b++); 121 return a 122 } 123 124 function w(a, b) { 125 return Math.round(a + (b - a) / 1.5) 126 } 127 128 function x() { 129 return x.p = x.p || ("https:" === c.protocol ? "../../../../https@/" : "http://"), x.p 130 } 131 132 function y(a) { 133 var c = b.createElement("a"); 134 return c.href = a, c 135 } 136 137 function z(a, b) { 138 if ("string" != typeof a) return a; 139 a = y(a); 140 var c, d; 141 if (a.host.match(/youtube\.com/) && a.search) { 142 if (c = a.search.split("v=")[1]) { 143 var e = c.indexOf("&"); - 1 !== e && (c = c.substring(0, e)), d = "youtube" 144 } 145 } else a.host.match(/youtube\.com|youtu\.be/) ? (c = a.pathname.replace(/^\/(embed\/|v\/)?/, "").replace(/\/.*/, ""), d = "youtube") : a.host.match(/vimeo\.com/) && (d = "vimeo", c = a.pathname.replace(/^\/(video\/)?/, "").replace(/\/.*/, "")); 146 return c && d || !b || (c = a.href, d = "custom"), c ? { 147 id: c, 148 type: d, 149 s: a.search.replace(/^\?/, "") 150 } : !1 151 } 152 153 function A(a, b, c) { 154 var e, f, g = a.video; 155 return "youtube" === g.type ? (f = x() + "img.youtube.com/vi/" + g.id + "/default.jpg", e = f.replace(/\/default.jpg$/, "../../../hqdefault.jpg"), a.thumbsReady = !0) : "vimeo" === g.type ? d.ajax({ 156 url: x() + "vimeo.com/api/v2/video/" + g.id + ".json", 157 dataType: "jsonp", 158 success: function(d) { 159 a.thumbsReady = !0, B(b, { 160 img: d[0].thumbnail_large, 161 thumb: d[0].thumbnail_small 162 }, a.i, c) 163 } 164 }) : a.thumbsReady = !0, { 165 img: e, 166 thumb: f 167 } 168 } 169 170 function B(a, b, c, e) { 171 for (var f = 0, g = a.length; g > f; f++) { 172 var h = a[f]; 173 if (h.i === c && h.thumbsReady) { 174 var i = { 175 videoReady: !0 176 }; 177 i[Uc] = i[Wc] = i[Vc] = !1, e.splice(f, 1, d.extend({}, h, i, b)); 178 break 179 } 180 } 181 } 182 183 function C(a) { 184 function b(a, b, e) { 185 var f = a.children("img").eq(0), 186 g = a.attr("href"), 187 h = a.attr("src"), 188 i = f.attr("src"), 189 j = b.video, 190 k = e ? z(g, j === !0) : !1; 191 k ? g = !1 : k = j, c(a, f, d.extend(b, { 192 video: k, 193 img: b.img || g || h || i, 194 thumb: b.thumb || i || h || g 195 })) 196 } 197 198 function c(a, b, c) { 199 var e = c.thumb && c.img !== c.thumb, 200 f = m(c.width || a.attr("width")), 201 g = m(c.height || a.attr("height")); 202 d.extend(c, { 203 width: f, 204 height: g, 205 thumbratio: R(c.thumbratio || m(c.thumbwidth || b && b.attr("width") || e || f) / m(c.thumbheight || b && b.attr("height") || e || g)) 206 }) 207 } 208 var e = []; 209 return a.children().each(function() { 210 var a = d(this), 211 f = Q(d.extend(a.data(), { 212 id: a.attr("id") 213 })); 214 if (a.is("a, img")) b(a, f, !0); 215 else { 216 if (a.is(":empty")) return; 217 c(a, null, d.extend(f, { 218 html: this, 219 _html: a.html() 220 })) 221 } 222 e.push(f) 223 }), e 224 } 225 226 function D(a) { 227 return 0 === a.offsetWidth && 0 === a.offsetHeight 228 } 229 230 function E(a) { 231 return !d.contains(b.documentElement, a) 232 } 233 234 function F(a, b, c) { 235 a() ? b() : setTimeout(function() { 236 F(a, b) 237 }, c || 100) 238 } 239 240 function G(a) { 241 c.replace(c.protocol + "//" + c.host + c.pathname.replace(/^\/?/, "../../../default.htm") + c.search + "#" + a) 242 } 243 244 function H(a, b, c) { 245 var d = a.data(), 246 e = d.measures; 247 if (e && (!d.l || d.l.W !== e.width || d.l.H !== e.height || d.l.r !== e.ratio || d.l.w !== b.w || d.l.h !== b.h || d.l.m !== c)) { 248 var f = e.width, 249 g = e.height, 250 i = b.w / b.h, 251 j = e.ratio >= i, 252 k = "scaledown" === c, 253 l = "contain" === c, 254 m = "cover" === c; 255 j && (k || l) || !j && m ? (f = h(b.w, 0, k ? f : 1 / 0), g = f / e.ratio) : (j && m || !j && (k || l)) && (g = h(b.h, 0, k ? g : 1 / 0), f = g * e.ratio), a.css({ 256 width: Math.ceil(f), 257 height: Math.ceil(g), 258 marginLeft: Math.floor(-f / 2), 259 marginTop: Math.floor(-g / 2) 260 }), d.l = { 261 W: e.width, 262 H: e.height, 263 r: e.ratio, 264 w: b.w, 265 h: b.h, 266 m: c 267 } 268 } 269 return !0 270 } 271 272 function I(a, b) { 273 var c = a[0]; 274 c.styleSheet ? c.styleSheet.cssText = b : a.html(b) 275 } 276 277 function J(a, b, c) { 278 return b === c ? !1 : b >= a ? "left" : a >= c ? "right" : "left right" 279 } 280 281 function K(a, b, c, d) { 282 if (!c) return !1; 283 if (!isNaN(a)) return a - (d ? 0 : 1); 284 for (var e, f = 0, g = b.length; g > f; f++) { 285 var h = b[f]; 286 if (h.id === a) { 287 e = f; 288 break 289 } 290 } 291 return e 292 } 293 294 function L(a, b, c) { 295 c = c || {}, a.each(function() { 296 var a, e = d(this), 297 f = e.data(); 298 f.clickOn || (f.clickOn = !0, d.extend(X(e, { 299 onStart: function(b) { 300 a = b, (c.onStart || g).call(this, b) 301 }, 302 onMove: c.onMove || g, 303 onTouchEnd: c.onTouchEnd || g, 304 onEnd: function(c) { 305 c.moved || b.call(this, a) 306 } 307 }), { 308 noMove: !0 309 })) 310 }) 311 } 312 313 function M(a, b) { 314 return '<div class="' + a + '">' + (b || "") + "</div>" 315 } 316 317 function N(a) { 318 for (var b = a.length; b;) { 319 var c = Math.floor(Math.random() * b--), 320 d = a[b]; 321 a[b] = a[c], a[c] = d 322 } 323 return a 324 } 325 326 function O(a) { 327 return "[object Array]" == Object.prototype.toString.call(a) && d.map(a, function(a) { 328 return d.extend({}, a) 329 }) 330 } 331 332 function P(a, b) { 333 Ac.scrollLeft(a).scrollTop(b) 334 } 335 336 function Q(a) { 337 if (a) { 338 var b = {}; 339 return d.each(a, function(a, c) { 340 b[a.toLowerCase()] = c 341 }), b 342 } 343 } 344 345 function R(a) { 346 if (a) { 347 var b = +a; 348 return isNaN(b) ? (b = a.split("/"), +b[0] / +b[1] || e) : b 349 } 350 } 351 352 function S(a, b) { 353 a.preventDefault(), b && a.stopPropagation() 354 } 355 356 function T(a) { 357 return a ? ">" : "<" 358 } 359 360 function U(a, b) { 361 var c = a.data(), 362 e = Math.round(b.pos), 363 f = function() { 364 c.sliding = !1, (b.onEnd || g)() 365 }; 366 "undefined" != typeof b.overPos && b.overPos !== b.pos && (e = b.overPos, f = function() { 367 U(a, d.extend({}, b, { 368 overPos: b.pos, 369 time: Math.max(Nc, b.time / 2) 370 })) 371 }); 372 var h = d.extend(k(e, b._001), b.width && { 373 width: b.width 374 }); 375 c.sliding = !0, Ec ? (a.css(d.extend(l(b.time), h)), b.time > 10 ? t(a, "transform", f, b.time) : f()) : a.stop().animate(h, b.time, Xc, f) 376 } 377 378 function V(a, b, c, e, f, h) { 379 var i = "undefined" != typeof h; 380 if (i || (f.push(arguments), Array.prototype.push.call(arguments, f.length), !(f.length > 1))) { 381 a = a || d(a), b = b || d(b); 382 var j = a[0], 383 k = b[0], 384 l = "crossfade" === e.method, 385 m = function() { 386 if (!m.done) { 387 m.done = !0; 388 var a = (i || f.shift()) && f.shift(); 389 a && V.apply(this, a), (e.onEnd || g)( !! a) 390 } 391 }, n = e.time / (h || 1); 392 c.removeClass(Kb + " " + Jb), a.stop().addClass(Kb), b.stop().addClass(Jb), l && k && a.fadeTo(0, 0), a.fadeTo(l ? n : 0, 1, l && m), b.fadeTo(n, 0, m), j && l || k || m() 393 } 394 } 395 396 function W(a) { 397 var b = (a.touches || [])[0] || a; 398 a._x = b.pageX, a._y = b.clientY, a._now = d.now() 399 } 400 401 function X(c, e) { 402 function f(a) { 403 return n = d(a.target), v.checked = q = r = t = !1, l || v.flow || a.touches && a.touches.length > 1 || a.which > 1 || wc && wc.type !== a.type && yc || (q = e.select && n.is(e.select, u)) ? q : (p = "touchstart" === a.type, r = n.is("a, a *", u), o = v.control, s = v.noMove || v.noSwipe || o ? 16 : v.snap ? 0 : 4, W(a), m = wc = a, xc = a.type.replace(/down|start/, "move").replace(/Down/, "Move"), (e.onStart || g).call(u, a, { 404 control: o, 405 $target: n 406 }), l = v.flow = !0, void((!p || v.go) && S(a))) 407 } 408 409 function h(a) { 410 if (a.touches && a.touches.length > 1 || Kc && !a.isPrimary || xc !== a.type || !l) return l && i(), void(e.onTouchEnd || g)(); 411 W(a); 412 var b = Math.abs(a._x - m._x), 413 c = Math.abs(a._y - m._y), 414 d = b - c, 415 f = (v.go || v.x || d >= 0) && !v.noSwipe, 416 h = 0 > d; 417 p && !v.checked ? (l = f) && S(a) : (S(a), (e.onMove || g).call(u, a, { 418 touch: p 419 })), !t && Math.sqrt(Math.pow(b, 2) + Math.pow(c, 2)) > s && (t = !0), v.checked = v.checked || f || h 420 } 421 422 function i(a) { 423 (e.onTouchEnd || g)(); 424 var b = l; 425 v.control = l = !1, b && (v.flow = !1), !b || r && !v.checked || (a && S(a), yc = !0, clearTimeout(zc), zc = setTimeout(function() { 426 yc = !1 427 }, 1e3), (e.onEnd || g).call(u, { 428 moved: t, 429 $target: n, 430 control: o, 431 touch: p, 432 startEvent: m, 433 aborted: !a || "MSPointerCancel" === a.type 434 })) 435 } 436 437 function j() { 438 v.flow || setTimeout(function() { 439 v.flow = !0 440 }, 10) 441 } 442 443 function k() { 444 v.flow && setTimeout(function() { 445 v.flow = !1 446 }, Mc) 447 } 448 var l, m, n, o, p, q, r, s, t, u = c[0], 449 v = {}; 450 return Kc ? (u[Jc]("MSPointerDown", f, !1), b[Jc]("MSPointerMove", h, !1), b[Jc]("MSPointerCancel", i, !1), b[Jc]("MSPointerUp", i, !1)) : (u[Jc] && (u[Jc]("touchstart", f, !1), u[Jc]("touchmove", h, !1), u[Jc]("touchend", i, !1), b[Jc]("touchstart", j, !1), b[Jc]("touchend", k, !1), b[Jc]("touchcancel", k, !1), a[Jc]("scroll", k, !1)), c.on("mousedown", f), Bc.on("mousemove", h).on("mouseup", i)), c.on("click", "a", function(a) { 451 v.checked && S(a) 452 }), v 453 } 454 455 function Y(a, b) { 456 function c(c, d) { 457 A = !0, j = l = c._x, q = c._now, p = [ 458 [q, j] 459 ], m = n = D.noMove || d ? 0 : u(a, (b.getPos || g)(), b._001), (b.onStart || g).call(B, c) 460 } 461 462 function e(a, b) { 463 s = D.min, t = D.max, v = D.snap, x = a.altKey, A = z = !1, y = b.control, y || C.sliding || c(a) 464 } 465 466 function f(d, e) { 467 D.noSwipe || (A || c(d), l = d._x, p.push([d._now, l]), n = m - (j - l), o = J(n, s, t), s >= n ? n = w(n, s) : n >= t && (n = w(n, t)), D.noMove || (a.css(k(n, b._001)), z || (z = !0, e.touch || Kc || a.addClass(Zb)), (b.onMove || g).call(B, d, { 468 pos: n, 469 edge: o 470 }))) 471 } 472 473 function i(e) { 474 if (!D.noSwipe || !e.moved) { 475 A || c(e.startEvent, !0), e.touch || Kc || a.removeClass(Zb), r = d.now(); 476 for (var f, i, j, k, o, q, u, w, y, z = r - Mc, C = null, E = Nc, F = b.friction, G = p.length - 1; G >= 0; G--) { 477 if (f = p[G][0], i = Math.abs(f - z), null === C || j > i) C = f, k = p[G][1]; 478 else if (C === z || i > j) break; 479 j = i 480 } 481 u = h(n, s, t); 482 var H = k - l, 483 I = H >= 0, 484 J = r - C, 485 K = J > Mc, 486 L = !K && n !== m && u === n; 487 v && (u = h(Math[L ? I ? "floor" : "ceil" : "round"](n / v) * v, s, t), s = t = u), L && (v || u === n) && (y = -(H / J), E *= h(Math.abs(y), b.timeLow, b.timeHigh), o = Math.round(n + y * E / F), v || (u = o), (!I && o > t || I && s > o) && (q = I ? s : t, w = o - q, v || (u = q), w = h(u + .03 * w, q - 50, q + 50), E = Math.abs((n - w) / (y / F)))), E *= x ? 10 : 1, (b.onEnd || g).call(B, d.extend(e, { 488 moved: e.moved || K && v, 489 pos: n, 490 newPos: u, 491 overPos: w, 492 time: E 493 })) 494 } 495 } 496 var j, l, m, n, o, p, q, r, s, t, v, x, y, z, A, B = a[0], 497 C = a.data(), 498 D = {}; 499 return D = d.extend(X(b.$wrap, { 500 onStart: e, 501 onMove: f, 502 onTouchEnd: b.onTouchEnd, 503 onEnd: i, 504 select: b.select 505 }), D) 506 } 507 508 function Z(a, b) { 509 var c, e, f, h = a[0], 510 i = { 511 prevent: {} 512 }; 513 return h[Jc] && h[Jc](Lc, function(a) { 514 var h = a.wheelDeltaY || -1 * a.deltaY || 0, 515 j = a.wheelDeltaX || -1 * a.deltaX || 0, 516 k = Math.abs(j) > Math.abs(h), 517 l = T(0 > j), 518 m = e === l, 519 n = d.now(), 520 o = Mc > n - f; 521 e = l, f = n, k && i.ok && (!i.prevent[l] || c) && (S(a, !0), c && m && o || (b.shift && (c = !0, clearTimeout(i.t), i.t = setTimeout(function() { 522 c = !1 523 }, Oc)), (b.onEnd || g)(a, b.shift ? l : j))) 524 }, !1), i 525 } 526 527 function $() { 528 d.each(d.Fotorama.instances, function(a, b) { 529 b.index = a 530 }) 531 } 532 533 function _(a) { 534 d.Fotorama.instances.push(a), $() 535 } 536 537 function ab(a) { 538 d.Fotorama.instances.splice(a.index, 1), $() 539 } 540 var bb = "fotorama", 541 cb = "fullscreen", 542 db = bb + "__wrap", 543 eb = db + "--css2", 544 fb = db + "--css3", 545 gb = db + "--video", 546 hb = db + "--fade", 547 ib = db + "--slide", 548 jb = db + "--no-controls", 549 kb = db + "--no-shadows", 550 lb = db + "--pan-y", 551 mb = db + "--rtl", 552 nb = db + "--only-active", 553 ob = db + "--no-captions", 554 pb = db + "--toggle-arrows", 555 qb = bb + "__stage", 556 rb = qb + "__frame", 557 sb = rb + "--video", 558 tb = qb + "__shaft", 559 ub = bb + "__grab", 560 vb = bb + "__pointer", 561 wb = bb + "__arr", 562 xb = wb + "--disabled", 563 yb = wb + "--prev", 564 zb = wb + "--next", 565 Ab = bb + "__nav", 566 Bb = Ab + "-wrap", 567 Cb = Ab + "__shaft", 568 Db = Ab + "--dots", 569 Eb = Ab + "--thumbs", 570 Fb = Ab + "__frame", 571 Gb = Fb + "--dot", 572 Hb = Fb + "--thumb", 573 Ib = bb + "__fade", 574 Jb = Ib + "-front", 575 Kb = Ib + "-rear", 576 Lb = bb + "__shadow", 577 Mb = Lb + "s", 578 Nb = Mb + "--left", 579 Ob = Mb + "--right", 580 Pb = bb + "__active", 581 Qb = bb + "__select", 582 Rb = bb + "--hidden", 583 Sb = bb + "--fullscreen", 584 Tb = bb + "__fullscreen-icon", 585 Ub = bb + "__error", 586 Vb = bb + "__loading", 587 Wb = bb + "__loaded", 588 Xb = Wb + "--full", 589 Yb = Wb + "--img", 590 Zb = bb + "__grabbing", 591 $b = bb + "__img", 592 _b = $b + "--full", 593 ac = bb + "__dot", 594 bc = bb + "__thumb", 595 cc = bc + "-border", 596 dc = bb + "__html", 597 ec = bb + "__video", 598 fc = ec + "-play", 599 gc = ec + "-close", 600 hc = bb + "__caption", 601 ic = bb + "__caption__wrap", 602 jc = bb + "__spinner", 603 kc = d && d.fn.jquery.split("."); 604 if (!kc || kc[0] < 1 || 1 == kc[0] && kc[1] < 8) throw "Fotorama requires jQuery 1.8 or later and will not run without it."; 605 var lc = {}, mc = function(a, b, c) { 606 function d(a) { 607 r.cssText = a 608 } 609 610 function e(a, b) { 611 return typeof a === b 612 } 613 614 function f(a, b) { 615 return !!~("" + a).indexOf(b) 616 } 617 618 function g(a, b) { 619 for (var d in a) { 620 var e = a[d]; 621 if (!f(e, "-") && r[e] !== c) return "pfx" == b ? e : !0 622 } 623 return !1 624 } 625 626 function h(a, b, d) { 627 for (var f in a) { 628 var g = b[a[f]]; 629 if (g !== c) return d === !1 ? a[f] : e(g, "function") ? g.bind(d || b) : g 630 } 631 return !1 632 } 633 634 function i(a, b, c) { 635 var d = a.charAt(0).toUpperCase() + a.slice(1), 636 f = (a + " " + u.join(d + " ") + d).split(" "); 637 return e(b, "string") || e(b, "undefined") ? g(f, b) : (f = (a + " " + v.join(d + " ") + d).split(" "), h(f, b, c)) 638 } 639 var j, k, l, m = "2.6.2", 640 n = {}, o = b.documentElement, 641 p = "modernizr", 642 q = b.createElement(p), 643 r = q.style, 644 s = ({}.toString, " -webkit- -moz- -o- -ms- ".split(" ")), 645 t = "Webkit Moz O ms", 646 u = t.split(" "), 647 v = t.toLowerCase().split(" "), 648 w = {}, x = [], 649 y = x.slice, 650 z = function(a, c, d, e) { 651 var f, g, h, i, j = b.createElement("div"), 652 k = b.body, 653 l = k || b.createElement("body"); 654 if (parseInt(d, 10)) 655 for (; d--;) h = b.createElement("div"), h.id = e ? e[d] : p + (d + 1), j.appendChild(h); 656 return f = ["­", '<style id="s', p, '">', a, "</style>"].join(""), j.id = p, (k ? j : l).innerHTML += f, l.appendChild(j), k || (l.style.background = "", l.style.overflow = "hidden", i = o.style.overflow, o.style.overflow = "hidden", o.appendChild(l)), g = c(j, a), k ? j.parentNode.removeChild(j) : (l.parentNode.removeChild(l), o.style.overflow = i), !! g 657 }, A = {}.hasOwnProperty; 658 l = e(A, "undefined") || e(A.call, "undefined") ? function(a, b) { 659 return b in a && e(a.constructor.prototype[b], "undefined") 660 } : function(a, b) { 661 return A.call(a, b) 662 }, Function.prototype.bind || (Function.prototype.bind = function(a) { 663 var b = this; 664 if ("function" != typeof b) throw new TypeError; 665 var c = y.call(arguments, 1), 666 d = function() { 667 if (this instanceof d) { 668 var e = function() {}; 669 e.prototype = b.prototype; 670 var f = new e, 671 g = b.apply(f, c.concat(y.call(arguments))); 672 return Object(g) === g ? g : f 673 } 674 return b.apply(a, c.concat(y.call(arguments))) 675 }; 676 return d 677 }), w.csstransforms3d = function() { 678 var a = !! i("perspective"); 679 return a 680 }; 681 for (var B in w) l(w, B) && (k = B.toLowerCase(), n[k] = w[B](), x.push((n[k] ? "" : "no-") + k)); 682 return n.addTest = function(a, b) { 683 if ("object" == typeof a) 684 for (var d in a) l(a, d) && n.addTest(d, a[d]); 685 else { 686 if (a = a.toLowerCase(), n[a] !== c) return n; 687 b = "function" == typeof b ? b() : b, "undefined" != typeof enableClasses && enableClasses && (o.className += " " + (b ? "" : "no-") + a), n[a] = b 688 } 689 return n 690 }, d(""), q = j = null, n._version = m, n._prefixes = s, n._domPrefixes = v, n._cssomPrefixes = u, n.testProp = function(a) { 691 return g([a]) 692 }, n.testAllProps = i, n.testStyles = z, n.prefixed = function(a, b, c) { 693 return b ? i(a, b, c) : i(a, "pfx") 694 }, n 695 }(a, b), 696 nc = { 697 ok: !1, 698 is: function() { 699 return !1 700 }, 701 request: function() {}, 702 cancel: function() {}, 703 event: "", 704 prefix: "" 705 }, oc = "webkit moz o ms khtml".split(" "); 706 if ("undefined" != typeof b.cancelFullScreen) nc.ok = !0; 707 else 708 for (var pc = 0, qc = oc.length; qc > pc; pc++) 709 if (nc.prefix = oc[pc], "undefined" != typeof b[nc.prefix + "CancelFullScreen"]) { 710 nc.ok = !0; 711 break 712 } nc.ok && (nc.event = nc.prefix + "fullscreenchange", nc.is = function() { 713 switch (this.prefix) { 714 case "": 715 return b.fullScreen; 716 case "webkit": 717 return b.webkitIsFullScreen; 718 default: 719 return b[this.prefix + "FullScreen"] 720 } 721 }, nc.request = function(a) { 722 return "" === this.prefix ? a.requestFullScreen() : a[this.prefix + "RequestFullScreen"]() 723 }, nc.cancel = function() { 724 return "" === this.prefix ? b.cancelFullScreen() : b[this.prefix + "CancelFullScreen"]() 725 }); 726 var rc, sc = { 727 lines: 12, 728 length: 5, 729 width: 2, 730 radius: 7, 731 corners: 1, 732 rotate: 15, 733 color: "rgba(128, 128, 128, .75)", 734 hwaccel: !0 735 }, tc = { 736 top: "auto", 737 left: "auto", 738 className: "" 739 }; 740 ! function(a, b) { 741 rc = b() 742 }(this, function() { 743 function a(a, c) { 744 var d, e = b.createElement(a || "div"); 745 for (d in c) e[d] = c[d]; 746 return e 747 } 748 749 function c(a) { 750 for (var b = 1, c = arguments.length; c > b; b++) a.appendChild(arguments[b]); 751 return a 752 } 753 754 function d(a, b, c, d) { 755 var e = ["opacity", b, ~~ (100 * a), c, d].join("-"), 756 f = .01 + c / d * 100, 757 g = Math.max(1 - (1 - a) / b * (100 - f), a), 758 h = m.substring(0, m.indexOf("Animation")).toLowerCase(), 759 i = h && "-" + h + "-" || ""; 760 return o[e] || (p.insertRule("@" + i + "keyframes " + e + "{0%{opacity:" + g + "}" + f + "%{opacity:" + a + "}" + (f + .01) + "%{opacity:1}" + (f + b) % 100 + "%{opacity:" + a + "}100%{opacity:" + g + "}}", p.cssRules.length), o[e] = 1), e 761 } 762 763 function f(a, b) { 764 var c, d, f = a.style; 765 for (b = b.charAt(0).toUpperCase() + b.slice(1), d = 0; d < n.length; d++) 766 if (c = n[d] + b, f[c] !== e) return c; 767 return f[b] !== e ? b : void 0 768 } 769 770 function g(a, b) { 771 for (var c in b) a.style[f(a, c) || c] = b[c]; 772 return a 773 } 774 775 function h(a) { 776 for (var b = 1; b < arguments.length; b++) { 777 var c = arguments[b]; 778 for (var d in c) a[d] === e && (a[d] = c[d]) 779 } 780 return a 781 } 782 783 function i(a) { 784 for (var b = { 785 x: a.offsetLeft, 786 y: a.offsetTop 787 }; a = a.offsetParent;) b.x += a.offsetLeft, b.y += a.offsetTop; 788 return b 789 } 790 791 function j(a, b) { 792 return "string" == typeof a ? a : a[b % a.length] 793 } 794 795 function k(a) { 796 return "undefined" == typeof this ? new k(a) : void(this.opts = h(a || {}, k.defaults, q)) 797 } 798 799 function l() { 800 function b(b, c) { 801 return a("<" + b + ' xmlns="urn:schemas-microsoft.com:vml" class="spin-vml">', c) 802 } 803 p.addRule(".spin-vml", "behavior:url(#default#VML)"), k.prototype.lines = function(a, d) { 804 function e() { 805 return g(b("group", { 806 coordsize: k + " " + k, 807 coordorigin: -i + " " + -i 808 }), { 809 width: k, 810 height: k 811 }) 812 } 813 814 function f(a, f, h) { 815 c(m, c(g(e(), { 816 rotation: 360 / d.lines * a + "deg", 817 left: ~~f 818 }), c(g(b("roundrect", { 819 arcsize: d.corners 820 }), { 821 width: i, 822 height: d.width, 823 left: d.radius, 824 top: -d.width >> 1, 825 filter: h 826 }), b("fill", { 827 color: j(d.color, a), 828 opacity: d.opacity 829 }), b("stroke", { 830 opacity: 0 831 })))) 832 } 833 var h, i = d.length + d.width, 834 k = 2 * i, 835 l = 2 * -(d.width + d.length) + "px", 836 m = g(e(), { 837 position: "absolute", 838 top: l, 839 left: l 840 }); 841 if (d.shadow) 842 for (h = 1; h <= d.lines; h++) f(h, -2, "progid:DXImageTransform.Microsoft.Blur(pixelradius=2,makeshadow=1,shadowopacity=.3)"); 843 for (h = 1; h <= d.lines; h++) f(h); 844 return c(a, m) 845 }, k.prototype.opacity = function(a, b, c, d) { 846 var e = a.firstChild; 847 d = d.shadow && d.lines || 0, e && b + d < e.childNodes.length && (e = e.childNodes[b + d], e = e && e.firstChild, e = e && e.firstChild, e && (e.opacity = c)) 848 } 849 } 850 var m, n = ["webkit", "Moz", "ms", "O"], 851 o = {}, p = function() { 852 var d = a("style", { 853 type: "text/css" 854 }); 855 return c(b.getElementsByTagName("head")[0], d), d.sheet || d.styleSheet 856 }(), 857 q = { 858 lines: 12, 859 length: 7, 860 width: 5, 861 radius: 10, 862 rotate: 0, 863 corners: 1, 864 color: "#000", 865 direction: 1, 866 speed: 1, 867 trail: 100, 868 opacity: .25, 869 fps: 20, 870 zIndex: 2e9, 871 className: "spinner", 872 top: "auto", 873 left: "auto", 874 position: "relative" 875 }; 876 k.defaults = {}, h(k.prototype, { 877 spin: function(b) { 878 this.stop(); 879 var c, d, e = this, 880 f = e.opts, 881 h = e.el = g(a(0, { 882 className: f.className 883 }), { 884 position: f.position, 885 width: 0, 886 zIndex: f.zIndex 887 }), 888 j = f.radius + f.length + f.width; 889 if (b && (b.insertBefore(h, b.firstChild || null), d = i(b), c = i(h), g(h, { 890 left: ("auto" == f.left ? d.x - c.x + (b.offsetWidth >> 1) : parseInt(f.left, 10) + j) + "px", 891 top: ("auto" == f.top ? d.y - c.y + (b.offsetHeight >> 1) : parseInt(f.top, 10) + j) + "px" 892 })), h.setAttribute("role", "progressbar"), e.lines(h, e.opts), !m) { 893 var k, l = 0, 894 n = (f.lines - 1) * (1 - f.direction) / 2, 895 o = f.fps, 896 p = o / f.speed, 897 q = (1 - f.opacity) / (p * f.trail / 100), 898 r = p / f.lines; 899 ! function s() { 900 l++; 901 for (var a = 0; a < f.lines; a++) k = Math.max(1 - (l + (f.lines - a) * r) % p * q, f.opacity), e.opacity(h, a * f.direction + n, k, f); 902 e.timeout = e.el && setTimeout(s, ~~ (1e3 / o)) 903 }() 904 } 905 return e 906 }, 907 stop: function() { 908 var a = this.el; 909 return a && (clearTimeout(this.timeout), a.parentNode && a.parentNode.removeChild(a), this.el = e), this 910 }, 911 lines: function(b, e) { 912 function f(b, c) { 913 return g(a(), { 914 position: "absolute", 915 width: e.length + e.width + "px", 916 height: e.width + "px", 917 background: b, 918 boxShadow: c, 919 transformOrigin: "left", 920 transform: "rotate(" + ~~(360 / e.lines * i + e.rotate) + "deg) translate(" + e.radius + "px,0)", 921 borderRadius: (e.corners * e.width >> 1) + "px" 922 }) 923 } 924 for (var h, i = 0, k = (e.lines - 1) * (1 - e.direction) / 2; i < e.lines; i++) h = g(a(), { 925 position: "absolute", 926 top: 1 + ~(e.width / 2) + "px", 927 transform: e.hwaccel ? "translate3d(0,0,0)" : "", 928 opacity: e.opacity, 929 animation: m && d(e.opacity, e.trail, k + i * e.direction, e.lines) + " " + 1 / e.speed + "s linear infinite" 930 }), e.shadow && c(h, g(f("#000", "0 0 4px #000"), { 931 top: "2px" 932 })), c(b, c(h, f(j(e.color, i), "0 0 1px rgba(0,0,0,.1)"))); 933 return b 934 }, 935 opacity: function(a, b, c) { 936 b < a.childNodes.length && (a.childNodes[b].style.opacity = c) 937 } 938 }); 939 var r = g(a("group"), { 940 behavior: "url(#default#VML)" 941 }); 942 return !f(r, "transform") && r.adj ? l() : m = f(r, "animation"), k 943 }); 944 var uc, vc, wc, xc, yc, zc, Ac = d(a), 945 Bc = d(b), 946 Cc = "quirks" === c.hash.replace("#", ""), 947 Dc = mc.csstransforms3d, 948 Ec = Dc && !Cc, 949 Fc = Dc || "CSS1Compat" === b.compatMode, 950 Gc = nc.ok, 951 Hc = navigator.userAgent.match(/Android|webOS|iPhone|iPad|iPod|BlackBerry|Windows Phone/i), 952 Ic = !Ec || Hc, 953 Jc = "addEventListener", 954 Kc = navigator.msPointerEnabled, 955 Lc = "onwheel" in b.createElement("div") ? "wheel" : b.onmousewheel !== e ? "mousewheel" : "DOMMouseScroll", 956 Mc = 250, 957 Nc = 300, 958 Oc = 1400, 959 Pc = 5e3, 960 Qc = 2, 961 Rc = 64, 962 Sc = 500, 963 Tc = 333, 964 Uc = "$stageFrame", 965 Vc = "$navDotFrame", 966 Wc = "$navThumbFrame", 967 Xc = f([.1, 0, .25, 1]), 968 Yc = 99999, 969 Zc = { 970 width: null, 971 minwidth: null, 972 maxwidth: "100%", 973 height: null, 974 minheight: null, 975 maxheight: null, 976 ratio: null, 977 margin: Qc, 978 glimpse: 0, 979 nav: "dots", 980 navposition: "bottom", 981 navwidth: null, 982 thumbwidth: Rc, 983 thumbheight: Rc, 984 thumbmargin: Qc, 985 thumbborderwidth: Qc, 986 allowfullscreen: !1, 987 fit: "contain", 988 transition: "slide", 989 clicktransition: null, 990 transitionduration: Nc, 991 captions: !0, 992 hash: !1, 993 startindex: 0, 994 loop: !1, 995 autoplay: !1, 996 stopautoplayontouch: !0, 997 keyboard: !1, 998 arrows: !0, 999 click: !0, 1000 swipe: !0, 1001 trackpad: !0, 1002 shuffle: !1, 1003 direction: "ltr", 1004 shadows: !0, 1005 spinner: null 1006 }, $c = { 1007 left: !0, 1008 right: !0, 1009 down: !1, 1010 up: !1, 1011 space: !1, 1012 home: !1, 1013 end: !1 1014 }; 1015 jQuery.Fotorama = function(a, e) { 1016 function f() { 1017 d.each(pd, function(a, b) { 1018 if (!b.i) { 1019 b.i = ce++; 1020 var c = z(b.video, !0); 1021 if (c) { 1022 var d = {}; 1023 b.video = c, b.img || b.thumb ? b.thumbsReady = !0 : d = A(b, pd, $d), B(pd, { 1024 img: d.img, 1025 thumb: d.thumb 1026 }, b.i, $d) 1027 } 1028 } 1029 }) 1030 } 1031 1032 function g(a) { 1033 return Pd[a] || $d.fullScreen 1034 } 1035 1036 function i(a) { 1037 var b = "keydown." + bb, 1038 c = "keydown." + bb + _d, 1039 d = "resize." + bb + _d; 1040 a ? (Bc.on(c, function(a) { 1041 var b, c; 1042 td && 27 === a.keyCode ? (b = !0, fd(td, !0, !0)) : ($d.fullScreen || e.keyboard && !$d.index) && (27 === a.keyCode ? (b = !0, $d.cancelFullScreen()) : a.shiftKey && 32 === a.keyCode && g("space") || 37 === a.keyCode && g("left") || 38 === a.keyCode && g("up") ? c = "<" : 32 === a.keyCode && g("space") || 39 === a.keyCode && g("right") || 40 === a.keyCode && g("down") ? c = ">" : 36 === a.keyCode && g("home") ? c = "<<" : 35 === a.keyCode && g("end") && (c = ">>")), (b || c) && S(a), c && $d.show({ 1043 index: c, 1044 slow: a.altKey, 1045 user: !0 1046 }) 1047 }), $d.index || Bc.off(b).on(b, "textarea, input, select", function(a) { 1048 !vc.hasClass(cb) && a.stopPropagation() 1049 }), Ac.on(d, $d.resize)) : (Bc.off(c), Ac.off(d)) 1050 } 1051 1052 function j(b) { 1053 b !== j.f && (b ? (a.html("").addClass(bb + " " + ae).append(ge).before(ee).before(fe), _($d)) : (ge.detach(), ee.detach(), fe.detach(), a.html(de.urtext).removeClass(ae), ab($d)), i(b), j.f = b) 1054 } 1055 1056 function n() { 1057 pd = $d.data = pd || O(e.data) || C(a), qd = $d.size = pd.length, !od.ok && e.shuffle && N(pd), f(), ze = y(ze), qd && j(!0) 1058 } 1059 1060 function s() { 1061 var a = 2 > qd || td; 1062 Ce.noMove = a || Id, Ce.noSwipe = a || !e.swipe, !Md && ie.toggleClass(ub, !Ce.noMove && !Ce.noSwipe), Kc && ge.toggleClass(lb, !Ce.noSwipe) 1063 } 1064 1065 function t(a) { 1066 a === !0 && (a = ""), e.autoplay = Math.max(+a || Pc, 1.5 * Ld) 1067 } 1068 1069 function w() { 1070 function a(a, c) { 1071 b[a ? "add" : "remove"].push(c) 1072 } 1073 $d.options = e = Q(e), Id = "crossfade" === e.transition || "dissolve" === e.transition, Cd = e.loop && (qd > 2 || Id) && (!Md || "slide" !== Md), Ld = +e.transitionduration || Nc, Od = "rtl" === e.direction, Pd = d.extend({}, e.keyboard && $c, e.keyboard); 1074 var b = { 1075 add: [], 1076 remove: [] 1077 }; 1078 qd > 1 ? (Dd = e.nav, Fd = "top" === e.navposition, b.remove.push(Qb), me.toggle( !! e.arrows)) : (Dd = !1, me.hide()), ec(), sd = new rc(d.extend(sc, e.spinner, tc, { 1079 direction: Od ? -1 : 1 1080 })), yc(), zc(), e.autoplay && t(e.autoplay), Jd = m(e.thumbwidth) || Rc, Kd = m(e.thumbheight) || Rc, De.ok = Fe.ok = e.trackpad && !Ic, s(), Xc(e, [Be]), Ed = "thumbs" === Dd, Ed ? (lc(qd, "navThumb"), rd = re, Zd = Wc, I(ee, d.Fotorama.jst.style({ 1081 w: Jd, 1082 h: Kd, 1083 b: e.thumbborderwidth, 1084 m: e.thumbmargin, 1085 s: _d, 1086 q: !Fc 1087 })), oe.addClass(Eb).removeClass(Db)) : "dots" === Dd ? (lc(qd, "navDot"), rd = qe, Zd = Vc, oe.addClass(Db).removeClass(Eb)) : (Dd = !1, oe.removeClass(Eb + " " + Db)), Dd && (Fd ? ne.insertBefore(he) : ne.insertAfter(he), qc.nav = !1, qc(rd, pe, "nav")), Gd = e.allowfullscreen, Gd ? (te.appendTo(he), Hd = Gc && "native" === Gd) : (te.detach(), Hd = !1), a(Id, hb), a(!Id, ib), a(!e.captions, ob), a(Od, mb), a("always" !== e.arrows, pb), Nd = e.shadows && !Ic, a(!Nd, kb), ge.addClass(b.add.join(" ")).removeClass(b.remove.join(" ")), Ae = d.extend({}, e) 1088 } 1089 1090 function x(a) { 1091 return 0 > a ? (qd + a % qd) % qd : a >= qd ? a % qd : a 1092 } 1093 1094 function y(a) { 1095 return h(a, 0, qd - 1) 1096 } 1097 1098 function D(a) { 1099 return Cd ? x(a) : y(a) 1100 } 1101 1102 function W(a) { 1103 return a > 0 || Cd ? a - 1 : !1 1104 } 1105 1106 function X(a) { 1107 return qd - 1 > a || Cd ? a + 1 : !1 1108 } 1109 1110 function $() { 1111 Ce.min = Cd ? -1 / 0 : -q(qd - 1, Be.w, e.margin, wd), Ce.max = Cd ? 1 / 0 : -q(0, Be.w, e.margin, wd), Ce.snap = Be.w + e.margin 1112 } 1113 1114 function Ib() { 1115 Ee.min = Math.min(0, Be.nw - pe.width()), Ee.max = 0, pe.toggleClass(ub, !(Ee.noMove = Ee.min === Ee.max)) 1116 } 1117 1118 function Jb(a, b, c) { 1119 if ("number" == typeof a) { 1120 a = new Array(a); 1121 var e = !0 1122 } 1123 return d.each(a, function(a, d) { 1124 if (e && (d = a), "number" == typeof d) { 1125 var f = pd[x(d)]; 1126 if (f) { 1127 var g = "$" + b + "Frame", 1128 h = f[g]; 1129 c.call(this, a, d, f, h, g, h && h.data()) 1130 } 1131 } 1132 }) 1133 } 1134 1135 function Kb(a, b, c, d) { 1136 (!Qd || "*" === Qd && d === Bd) && (a = p(e.width) || p(a) || Sc, b = p(e.height) || p(b) || Tc, $d.resize({ 1137 width: a, 1138 ratio: e.ratio || c || a / b 1139 }, 0, d === Bd ? !0 : "*")) 1140 } 1141 1142 function Lb(a, b, c, f, g) { 1143 Jb(a, b, function(a, h, i, j, k, l) { 1144 function m(a) { 1145 var b = x(h); 1146 Zc(a, { 1147 index: b, 1148 src: v, 1149 frame: pd[b] 1150 }) 1151 } 1152 1153 function n() { 1154 s.remove(), d.Fotorama.cache[v] = "error", i.html && "stage" === b || !w || w === v ? (!v || i.html || q ? "stage" === b && (j.trigger("f:load").removeClass(Vb + " " + Ub).addClass(Wb), m("load"), Kb()) : (j.trigger("f:error").removeClass(Vb).addClass(Ub), m("error")), l.state = "error", !(qd > 1 && pd[h] === i) || i.html || i.deleted || i.video || q || (i.deleted = !0, $d.splice(h, 1))) : (i[u] = v = w, Lb([h], b, c, f, !0)) 1155 } 1156 1157 function o() { 1158 d.Fotorama.measures[v] = t.measures = d.Fotorama.measures[v] || { 1159 width: r.width, 1160 height: r.height, 1161 ratio: r.width / r.height 1162 }, Kb(t.measures.width, t.measures.height, t.measures.ratio, h), s.off("load error").addClass($b + (q ? " " + _b : "")).prependTo(j), H(s, c || Be, f || i.fit || e.fit), d.Fotorama.cache[v] = l.state = "loaded", setTimeout(function() { 1163 j.trigger("f:load").removeClass(Vb + " " + Ub).addClass(Wb + " " + (q ? Xb : Yb)), "stage" === b && m("load") 1164 }, 5) 1165 } 1166 1167 function p() { 1168 var a = 10; 1169 F(function() { 1170 return !Xd || !a-- && !Ic 1171 }, function() { 1172 o() 1173 }) 1174 } 1175 if (j) { 1176 var q = $d.fullScreen && i.full && i.full !== i.img && !l.$full && "stage" === b; 1177 if (!l.$img || g || q) { 1178 var r = new Image, 1179 s = d(r), 1180 t = s.data(); 1181 l[q ? "$full" : "$img"] = s; 1182 var u = "stage" === b ? q ? "full" : "img" : "thumb", 1183 v = i[u], 1184 w = q ? null : i["stage" === b ? "thumb" : "img"]; 1185 if ("navThumb" === b && (j = l.$wrap), !v) return void n(); 1186 d.Fotorama.cache[v] ? ! function y() { 1187 "error" === d.Fotorama.cache[v] ? n() : "loaded" === d.Fotorama.cache[v] ? setTimeout(p, 0) : setTimeout(y, 100) 1188 }() : (d.Fotorama.cache[v] = "*", s.on("load", p).on("error", n)), l.state = "", r.src = v 1189 } 1190 } 1191 }) 1192 } 1193 1194 function Zb(a) { 1195 ye.append(sd.spin().el).appendTo(a) 1196 } 1197 1198 function ec() { 1199 ye.detach(), sd && sd.stop() 1200 } 1201 1202 function kc() { 1203 var a = $d.activeFrame[Uc]; 1204 a && !a.data().state && (Zb(a), a.on("f:load f:error", function() { 1205 a.off("f:load f:error"), ec() 1206 })) 1207 } 1208 1209 function lc(a, b) { 1210 Jb(a, b, function(a, c, f, g, h, i) { 1211 g || (g = f[h] = ge[h].clone(), i = g.data(), i.data = f, "stage" === b ? (f.html && d('<div class="' + dc + '"></div>').append(f._html ? d(f.html).removeAttr("id").html(f._html) : f.html).appendTo(g), e.captions && f.caption && d(M(hc, M(ic, f.caption))).appendTo(g), f.video && g.addClass(sb).append(ve.clone()), je = je.add(g)) : "navDot" === b ? qe = qe.add(g) : "navThumb" === b && (i.$wrap = g.children(":first"), re = re.add(g), f.video && g.append(ve.clone()))) 1212 }) 1213 } 1214 1215 function mc(a, b, c) { 1216 return a && a.length && H(a, b, c) 1217 } 1218 1219 function oc(a) { 1220 Jb(a, "stage", function(a, b, c, f, g, h) { 1221 if (f) { 1222 He[Uc][x(b)] = f.css(d.extend({ 1223 left: Id ? 0 : q(b, Be.w, e.margin, wd) 1224 }, Id && l(0))), E(f[0]) && (f.appendTo(ie), fd(c.$video)); 1225 var i = c.fit || e.fit; 1226 mc(h.$img, Be, i), mc(h.$full, Be, i) 1227 } 1228 }) 1229 } 1230 1231 function pc(a, b) { 1232 if ("thumbs" === Dd && !isNaN(a)) { 1233 var c = -a, 1234 e = -a + Be.nw; 1235 re.each(function() { 1236 var a = d(this), 1237 f = a.data(), 1238 g = f.eq, 1239 h = { 1240 h: Kd 1241 }, i = "cover"; 1242 h.w = f.w, f.l + f.w < c || f.l > e || mc(f.$img, h, i) || b && Lb([g], "navThumb", h, i) 1243 }) 1244 } 1245 } 1246 1247 function qc(a, b, c) { 1248 if (!qc[c]) { 1249 var f = "nav" === c && Ed, 1250 g = 0; 1251 b.append(a.filter(function() { 1252 for (var a, b = d(this), c = b.data(), e = 0, f = pd.length; f > e; e++) 1253 if (c.data === pd[e]) { 1254 a = !0, c.eq = e; 1255 break 1256 } 1257 return a || b.remove() && !1 1258 }).sort(function(a, b) { 1259 return d(a).data().eq - d(b).data().eq 1260 }).each(function() { 1261 if (f) { 1262 var a = d(this), 1263 b = a.data(), 1264 c = Math.round(Kd * b.data.thumbratio) || Jd; 1265 b.l = g, b.w = c, a.css({ 1266 width: c 1267 }), g += c + e.thumbmargin 1268 } 1269 })), qc[c] = !0 1270 } 1271 } 1272 1273 function wc(a) { 1274 return a - Ie > Be.w / 3 1275 } 1276 1277 function xc(a) { 1278 return !(Cd || ze + a && ze - qd + a || td) 1279 } 1280 1281 function yc() { 1282 ke.toggleClass(xb, xc(0)), le.toggleClass(xb, xc(1)) 1283 } 1284 1285 function zc() { 1286 De.ok && (De.prevent = { 1287 "<": xc(0), 1288 ">": xc(1) 1289 }) 1290 } 1291 1292 function Cc(a) { 1293 var b, c, d = a.data(); 1294 return Ed ? (b = d.l, c = d.w) : (b = a.position().left, c = a.width()), { 1295 c: b + c / 2, 1296 min: -b + 10 * e.thumbmargin, 1297 max: -b + Be.w - c - 10 * e.thumbmargin 1298 } 1299 } 1300 1301 function Dc(a) { 1302 var b = $d.activeFrame[Zd].data(); 1303 U(se, { 1304 time: .9 * a, 1305 pos: b.l, 1306 width: b.w - 2 * e.thumbborderwidth 1307 }) 1308 } 1309 1310 function Hc(a) { 1311 var b = pd[a.guessIndex][Zd]; 1312 if (b) { 1313 var c = Ee.min !== Ee.max, 1314 d = c && Cc($d.activeFrame[Zd]), 1315 e = c && (a.keep && Hc.l ? Hc.l : h((a.coo || Be.nw / 2) - Cc(b).c, d.min, d.max)), 1316 f = c && h(e, Ee.min, Ee.max), 1317 g = .9 * a.time; 1318 U(pe, { 1319 time: g, 1320 pos: f || 0, 1321 onEnd: function() { 1322 pc(f, !0) 1323 } 1324 }), ed(oe, J(f, Ee.min, Ee.max)), Hc.l = e 1325 } 1326 } 1327
1328 function Jc() { 1329 Lc(Zd), Ge[Zd].push($d.activeFrame[Zd].addClass(Pb)) 1330 } 1331 1332 function Lc(a) { 1333 for (var b = Ge[a]; b.length;) b.shift().removeClass(Pb) 1334 } 1335 1336 function Oc(a) { 1337 var b = He[a]; 1338 d.each(vd, function(a, c) { 1339 delete b[x(c)] 1340 }), d.each(b, function(a, c) { 1341 delete b[a], c.detach() 1342 }) 1343 } 1344 1345 function Qc(a) { 1346 wd = xd = ze; 1347 var b = $d.activeFrame, 1348 c = b[Uc]; 1349 c && (Lc(Uc), Ge[Uc].push(c.addClass(Pb)), a || $d.show.onEnd(!0), u(ie, 0, !0), Oc(Uc), oc(vd), $(), Ib()) 1350 } 1351 1352 function Xc(a, b) { 1353 a && d.each(b, function(b, c) { 1354 c && d.extend(c, { 1355 width: a.width || c.width, 1356 height: a.height, 1357 minwidth: a.minwidth, 1358 maxwidth: a.maxwidth, 1359 minheight: a.minheight, 1360 maxheight: a.maxheight, 1361 ratio: R(a.ratio) 1362 }) 1363 }) 1364 } 1365 1366 function Zc(b, c) { 1367 a.trigger(bb + ":" + b, [$d, c]) 1368 } 1369 1370 function _c() { 1371 clearTimeout(ad.t), Xd = 1, e.stopautoplayontouch ? $d.stopAutoplay() : Ud = !0 1372 } 1373 1374 function ad() { 1375 e.stopautoplayontouch || (bd(), cd()), ad.t = setTimeout(function() { 1376 Xd = 0 1377 }, Nc + Mc) 1378 } 1379 1380 function bd() { 1381 Ud = !(!td && !Vd) 1382 } 1383 1384 function cd() { 1385 if (clearTimeout(cd.t), !e.autoplay || Ud) return void($d.autoplay && ($d.autoplay = !1, Zc("stopautoplay"))); 1386 $d.autoplay || ($d.autoplay = !0, Zc("startautoplay")); 1387 var a = ze, 1388 b = $d.activeFrame[Uc].data(); 1389 F(function() { 1390 return b.state || a !== ze 1391 }, function() { 1392 cd.t = setTimeout(function() { 1393 Ud || a !== ze || $d.show(Cd ? T(!Od) : x(ze + (Od ? -1 : 1))) 1394 }, e.autoplay) 1395 }) 1396 } 1397 1398 function dd() { 1399 $d.fullScreen && ($d.fullScreen = !1, Gc && nc.cancel(be), vc.removeClass(cb), uc.removeClass(cb), a.removeClass(Sb).insertAfter(fe), Be = d.extend({}, Wd), fd(td, !0, !0), kd("x", !1), $d.resize(), Lb(vd, "stage"), P(Sd, Rd), Zc("fullscreenexit")) 1400 } 1401 1402 function ed(a, b) { 1403 Nd && (a.removeClass(Nb + " " + Ob), b && !td && a.addClass(b.replace(/^|\s/g, " " + Mb + "--"))) 1404 } 1405 1406 function fd(a, b, c) { 1407 b && (ge.removeClass(gb), td = !1, s()), a && a !== td && (a.remove(), Zc("unloadvideo")), c && (bd(), cd()) 1408 } 1409 1410 function gd(a) { 1411 ge.toggleClass(jb, a) 1412 } 1413 1414 function hd(a) { 1415 if (!Ce.flow) { 1416 var b = a ? a.pageX : hd.x, 1417 c = b && !xc(wc(b)) && e.click; 1418 hd.p === c || !Id && e.swipe || !he.toggleClass(vb, c) || (hd.p = c, hd.x = b) 1419 } 1420 } 1421 1422 function id(a) { 1423 clearTimeout(id.t), e.clicktransition && e.clicktransition !== e.transition ? (Md = e.transition, $d.setOptions({ 1424 transition: e.clicktransition 1425 }), id.t = setTimeout(function() { 1426 $d.show(a) 1427 }, 10)) : $d.show(a) 1428 } 1429 1430 function jd(a, b) { 1431 var c = a.target, 1432 f = d(c); 1433 f.hasClass(fc) ? $d.playVideo() : c === ue ? $d[($d.fullScreen ? "cancel" : "request") + "FullScreen"]() : td ? c === xe && fd(td, !0, !0) : b ? gd() : e.click && id({ 1434 index: a.shiftKey || T(wc(a._x)), 1435 slow: a.altKey, 1436 user: !0 1437 }) 1438 } 1439 1440 function kd(a, b) { 1441 Ce[a] = Ee[a] = b 1442 } 1443 1444 function ld(a, b) { 1445 var c = d(this).data().eq; 1446 id({ 1447 index: c, 1448 slow: a.altKey, 1449 user: !0, 1450 coo: a._x - oe.offset().left, 1451 time: b 1452 }) 1453 } 1454 1455 function md() { 1456 if (n(), w(), !md.i) { 1457 md.i = !0; 1458 var a = e.startindex; 1459 (a || e.hash && c.hash) && (Bd = K(a || c.hash.replace(/^#/, ""), pd, 0 === $d.index || a, a)), ze = wd = xd = yd = Bd = D(Bd) || 0 1460 } 1461 if (qd) { 1462 if (nd()) return; 1463 td && fd(td, !0), vd = [], Oc(Uc), $d.show({ 1464 index: ze, 1465 time: 0, 1466 reset: md.ok 1467 }), $d.resize() 1468 } else $d.destroy(); 1469 md.ok = !0 1470 } 1471
vendor: 12,094 bytes, lines 1472-1734
1472 function nd() { 1473 return !nd.f === Od ? (nd.f = Od, ze = qd - 1 - ze, $d.reverse(), !0) : void 0 1474 } 1475 1476 function od() { 1477 od.ok || (od.ok = !0, Zc("ready")) 1478 } 1479 uc = uc || d("html"), vc = vc || d("body"); 1480 var pd, qd, rd, sd, td, ud, vd, wd, xd, yd, zd, Ad, Bd, Cd, Dd, Ed, Fd, Gd, Hd, Id, Jd, Kd, Ld, Md, Nd, Od, Pd, Qd, Rd, Sd, Td, Ud, Vd, Wd, Xd, Yd, Zd, $d = this, 1481 _d = d.now(), 1482 ae = bb + _d, 1483 be = a[0], 1484 ce = 1, 1485 de = a.data(), 1486 ee = d("<style></style>"), 1487 fe = d(M(Rb)), 1488 ge = d(M(db)), 1489 he = d(M(qb)).appendTo(ge), 1490 ie = (he[0], d(M(tb)).appendTo(he)), 1491 je = d(), 1492 ke = d(M(wb + " " + yb)), 1493 le = d(M(wb + " " + zb)), 1494 me = ke.add(le).appendTo(he), 1495 ne = d(M(Bb)), 1496 oe = d(M(Ab)).appendTo(ne), 1497 pe = d(M(Cb)).appendTo(oe), 1498 qe = d(), 1499 re = d(), 1500 se = (ie.data(), pe.data(), d(M(cc)).appendTo(pe)), 1501 te = d(M(Tb)), 1502 ue = te[0], 1503 ve = d(M(fc)), 1504 we = d(M(gc)).appendTo(he), 1505 xe = we[0], 1506 ye = d(M(jc)), 1507 ze = !1, 1508 Ae = {}, Be = {}, Ce = {}, De = {}, Ee = {}, Fe = {}, Ge = {}, He = {}, Ie = 0, 1509 Je = []; 1510 ge[Uc] = d(M(rb)), ge[Wc] = d(M(Fb + " " + Hb, M(bc))), ge[Vc] = d(M(Fb + " " + Gb, M(ac))), Ge[Uc] = [], Ge[Wc] = [], Ge[Vc] = [], He[Uc] = {}, ge.addClass(Ec ? fb : eb), de.fotorama = this, $d.startAutoplay = function(a) { 1511 return $d.autoplay ? this : (Ud = Vd = !1, t(a || e.autoplay), cd(), this) 1512 }, $d.stopAutoplay = function() { 1513 return $d.autoplay && (Ud = Vd = !0, cd()), this 1514 }, $d.show = function(a) { 1515 var b; 1516 "object" != typeof a ? (b = a, a = {}) : b = a.index, b = ">" === b ? xd + 1 : "<" === b ? xd - 1 : "<<" === b ? 0 : ">>" === b ? qd - 1 : b, b = isNaN(b) ? K(b, pd, !0) : b, b = "undefined" == typeof b ? ze || 0 : b, $d.activeIndex = ze = D(b), zd = W(ze), Ad = X(ze), vd = [ze, zd, Ad], xd = Cd ? b : ze; 1517 var c = Math.abs(yd - xd), 1518 d = v(a.time, function() { 1519 return Math.min(Ld * (1 + (c - 1) / 12), 2 * Ld) 1520 }), 1521 f = a.overPos; 1522 a.slow && (d *= 10), $d.activeFrame = ud = pd[ze], fd(td, ud.i !== pd[x(wd)].i), lc(vd, "stage"), oc(Ic ? [xd] : [xd, W(xd), X(xd)]), kd("go", !0), a.reset || Zc("show", { 1523 user: a.user, 1524 time: d 1525 }), Ud = !0; 1526 var g = $d.show.onEnd = function(b) { 1527 if (!g.ok) { 1528 if (g.ok = !0, b || Qc(!0), !a.reset && (Zc("showend", { 1529 user: a.user 1530 }), !b && Md && Md !== e.transition)) return $d.setOptions({ 1531 transition: Md 1532 }), void(Md = !1); 1533 kc(), Lb(vd, "stage"), kd("go", !1), zc(), hd(), bd(), cd() 1534 } 1535 }; 1536 if (Id) { 1537 var i = ud[Uc], 1538 j = ze !== yd ? pd[yd][Uc] : null; 1539 V(i, j, je, { 1540 time: d, 1541 method: e.transition, 1542 onEnd: g 1543 }, Je) 1544 } else U(ie, { 1545 pos: -q(xd, Be.w, e.margin, wd), 1546 overPos: f, 1547 time: d, 1548 onEnd: g, 1549 _001: !0 1550 }); if (yc(), Dd) { 1551 Jc(); 1552 var k = y(ze + h(xd - yd, -1, 1)); 1553 Hc({ 1554 time: d, 1555 coo: k !== ze && a.coo, 1556 guessIndex: "undefined" != typeof a.coo ? k : ze, 1557 keep: a.reset 1558 }), Ed && Dc(d) 1559 } 1560 return Td = "undefined" != typeof yd && yd !== ze, yd = ze, e.hash && Td && !$d.eq && G(ud.id || ze + 1), this 1561 }, $d.requestFullScreen = function() { 1562 return Gd && !$d.fullScreen && (Rd = Ac.scrollTop(), Sd = Ac.scrollLeft(), P(0, 0), kd("x", !0), Wd = d.extend({}, Be), a.addClass(Sb).appendTo(vc.addClass(cb)), uc.addClass(cb), fd(td, !0, !0), $d.fullScreen = !0, Hd && nc.request(be), $d.resize(), Lb(vd, "stage"), kc(), Zc("fullscreenenter")), this 1563 }, $d.cancelFullScreen = function() { 1564 return Hd && nc.is() ? nc.cancel(b) : dd(), this 1565 }, b.addEventListener && b.addEventListener(nc.event, function() { 1566 !pd || nc.is() || td || dd() 1567 }, !1), $d.resize = function(a) { 1568 if (!pd) return this; 1569 Xc($d.fullScreen ? { 1570 width: "100%", 1571 maxwidth: null, 1572 minwidth: null, 1573 height: "100%", 1574 maxheight: null, 1575 minheight: null 1576 } : Q(a), [Be, $d.fullScreen || e]); 1577 var b = arguments[1] || 0, 1578 c = arguments[2], 1579 d = Be.width, 1580 f = Be.height, 1581 g = Be.ratio, 1582 i = Ac.height() - (Dd ? oe.height() : 0); 1583 return p(d) && (ge.addClass(nb).css({ 1584 width: d, 1585 minWidth: Be.minwidth || 0, 1586 maxWidth: Be.maxwidth || Yc 1587 }), d = Be.W = Be.w = ge.width(), Be.nw = Dd && o(e.navwidth, d) || d, e.glimpse && (Be.w -= Math.round(2 * (o(e.glimpse, d) || 0))), ie.css({ 1588 width: Be.w, 1589 marginLeft: (Be.W - Be.w) / 2 1590 }), f = o(f, i), f = f || g && d / g, f && (d = Math.round(d), f = Be.h = Math.round(h(f, o(Be.minheight, i), o(Be.maxheight, i))), he.stop().animate({ 1591 width: d, 1592 height: f 1593 }, b, function() { 1594 ge.removeClass(nb) 1595 }), Qc(), Dd && (oe.stop().animate({ 1596 width: Be.nw 1597 }, b), Hc({ 1598 guessIndex: ze, 1599 time: b, 1600 keep: !0 1601 }), Ed && qc.nav && Dc(b)), Qd = c || !0, od())), Ie = he.offset().left, this 1602 }, $d.setOptions = function(a) { 1603 return d.extend(e, a), md(), this 1604 }, $d.shuffle = function() { 1605 return pd && N(pd) && md(), this 1606 }, $d.destroy = function() { 1607 return $d.cancelFullScreen(), $d.stopAutoplay(), pd = $d.data = null, j(), vd = [], Oc(Uc), this 1608 }, $d.playVideo = function() { 1609 var a = $d.activeFrame, 1610 b = a.video, 1611 c = ze; 1612 return "object" == typeof b && a.videoReady && (Hd && $d.fullScreen && $d.cancelFullScreen(), F(function() { 1613 return !nc.is() || c !== ze 1614 }, function() { 1615 c === ze && (a.$video = a.$video || d(d.Fotorama.jst.video(b)), a.$video.appendTo(a[Uc]), ge.addClass(gb), td = a.$video, s(), Zc("loadvideo")) 1616 })), this 1617 }, $d.stopVideo = function() { 1618 return fd(td, !0, !0), this 1619 }, he.on("mousemove", hd), Ce = Y(ie, { 1620 onStart: _c, 1621 onMove: function(a, b) { 1622 ed(he, b.edge) 1623 }, 1624 onTouchEnd: ad, 1625 onEnd: function(a) { 1626 ed(he); 1627 var b = (Kc && !Yd || a.touch) && e.arrows && "always" !== e.arrows; 1628 if (a.moved || b && a.pos !== a.newPos && !a.control) { 1629 var c = r(a.newPos, Be.w, e.margin, wd); 1630 $d.show({ 1631 index: c, 1632 time: Id ? Ld : a.time, 1633 overPos: a.overPos, 1634 user: !0 1635 }) 1636 } else a.aborted || a.control || jd(a.startEvent, b) 1637 }, 1638 _001: !0, 1639 timeLow: 1, 1640 timeHigh: 1, 1641 friction: 2, 1642 select: "." + Qb + ", ." + Qb + " *", 1643 $wrap: he 1644 }), Ee = Y(pe, { 1645 onStart: _c, 1646 onMove: function(a, b) { 1647 ed(oe, b.edge) 1648 }, 1649 onTouchEnd: ad, 1650 onEnd: function(a) { 1651 function b() { 1652 Hc.l = a.newPos, bd(), cd(), pc(a.newPos, !0) 1653 } 1654 if (a.moved) a.pos !== a.newPos ? (Ud = !0, U(pe, { 1655 time: a.time, 1656 pos: a.newPos, 1657 overPos: a.overPos, 1658 onEnd: b 1659 }), pc(a.newPos), Nd && ed(oe, J(a.newPos, Ee.min, Ee.max))) : b(); 1660 else { 1661 var c = a.$target.closest("." + Fb, pe)[0]; 1662 c && ld.call(c, a.startEvent) 1663 } 1664 }, 1665 timeLow: .5, 1666 timeHigh: 2, 1667 friction: 5, 1668 $wrap: oe 1669 }), De = Z(he, { 1670 shift: !0, 1671 onEnd: function(a, b) { 1672 _c(), ad(), $d.show({ 1673 index: b, 1674 slow: a.altKey 1675 }) 1676 } 1677 }), Fe = Z(oe, { 1678 onEnd: function(a, b) { 1679 _c(), ad(); 1680 var c = u(pe) + .25 * b; 1681 pe.css(k(h(c, Ee.min, Ee.max))), Nd && ed(oe, J(c, Ee.min, Ee.max)), Fe.prevent = { 1682 "<": c >= Ee.max, 1683 ">": c <= Ee.min 1684 }, clearTimeout(Fe.t), Fe.t = setTimeout(function() { 1685 pc(c, !0) 1686 }, Mc), pc(c) 1687 } 1688 }), ge.hover(function() { 1689 setTimeout(function() { 1690 Xd || (Yd = !0, gd(!Yd)) 1691 }, 0) 1692 }, function() { 1693 Yd && (Yd = !1, gd(!Yd)) 1694 }), L(me, function(a) { 1695 S(a), id({ 1696 index: me.index(this) ? ">" : "<", 1697 slow: a.altKey, 1698 user: !0 1699 }) 1700 }, { 1701 onStart: function() { 1702 _c(), Ce.control = !0 1703 }, 1704 onTouchEnd: ad 1705 }), d.each("load push pop shift unshift reverse sort splice".split(" "), function(a, b) { 1706 $d[b] = function() { 1707 return pd = pd || [], "load" !== b ? Array.prototype[b].apply(pd, arguments) : arguments[0] && "object" == typeof arguments[0] && arguments[0].length && (pd = O(arguments[0])), md(), $d 1708 } 1709 }), md() 1710 }, d.fn.fotorama = function(b) { 1711 return this.each(function() { 1712 var c = this, 1713 e = d(this), 1714 f = e.data(), 1715 g = f.fotorama; 1716 g ? g.setOptions(b) : F(function() { 1717 return !D(c) 1718 }, function() { 1719 f.urtext = e.html(), new d.Fotorama(e, d.extend({}, Zc, a.fotoramaDefaults, b, f)) 1720 }) 1721 }) 1722 }, d.Fotorama.instances = [], d.Fotorama.cache = {}, d.Fotorama.measures = {}, d = d || {}, d.Fotorama = d.Fotorama || {}, d.Fotorama.jst = d.Fotorama.jst || {}, d.Fotorama.jst.style = function(a) { 1723 { 1724 var b, c = ""; 1725 lc.escape 1726 } 1727 return c += ".fotorama" + (null == (b = a.s) ? "" : b) + " .fotorama__nav--thumbs .fotorama__nav__frame{\npadding:" + (null == (b = a.m) ? "" : b) + "px;\nheight:" + (null == (b = a.h) ? "" : b) + "px}\n.fotorama" + (null == (b = a.s) ? "" : b) + " .fotorama__thumb-border{\nheight:" + (null == (b = a.h - a.b * (a.q ? 0 : 2)) ? "" : b) + "px;\nborder-width:" + (null == (b = a.b) ? "" : b) + "px;\nmargin-top:" + (null == (b = a.m) ? "" : b) + "px}" 1728 }, d.Fotorama.jst.video = function(a) { 1729 function b() { 1730 c += d.call(arguments, "") 1731 } 1732 var c = "", 1733 d = (lc.escape, Array.prototype.join); 1734 return c += '<div class="fotorama__video"><iframe src="', b(("youtube" == a.type ? "../../../../youtube.com/embed/" + a.id + "@auto
1734play=1" : "vimeo" == a.type ? "../../../../player.vimeo.com/video/" + a.id + "@autoplay=1&badge=0" : a.id) + (a.s && "custom" != a.type ? "&" + a.s : "")), c += '" frameborder="0" allowfullscreen></iframe></div>' 1735 }, d(function() { 1736 d("." + bb + ':not([data-auto="false"])').fotorama() 1737 }) 1738}(window, document, location, "undefined" != typeof jQuery && 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.