/*! Lity - v2.2.2 - 2017-07-17 * http://sorgalla.com/lity/ * Copyright (c) 2015-2017 Jan Sorgalla; Licensed MIT */ !function(a, b) { "function" == typeof define && define.amd ? define(["jquery"], function($) { return b(a, $) }) : "object" == typeof module && "object" == typeof module.exports ? module.exports = b(a, require("jquery")) : a.lity = b(a, a.jQuery || a.Zepto) }("undefined" != typeof window ? window : this, function(b, $) { "use strict"; var e = b.document , i = $(b) , j = $.Deferred , k = $("html") , l = [] , f = "aria-hidden" , m = "lity-" + f , c = { esc: !0, handler: null, handlers: { image: g, inline: function(c, d) { var a, b, e; try { a = $(c) } catch (f) { return !1 } return !!a.length && (b = $(''), e = a.hasClass("lity-hide"), d.element().one("lity:remove", function() { b.before(a).remove(), e && !a.closest(".lity-content").length && a.addClass("lity-hide") }), a.removeClass("lity-hide").after(b)) }, youtube: function(b) { var a = o.exec(b); return !!a && x(w(b, v("https://www.youtube" + (a[2] || "") + ".com/embed/" + a[4], $.extend({ autoplay: 1 }, u(a[5] || ""))))) }, vimeo: function(b) { var a = p.exec(b); return !!a && x(w(b, v("https://player.vimeo.com/video/" + a[3], $.extend({ autoplay: 1 }, u(a[4] || ""))))) }, googlemaps: function(b) { var a = q.exec(b); return !!a && x(w(b, v("https://www.google." + a[3] + "/maps?" + a[6], { output: a[6].indexOf("layer=c") > 0 ? "svembed" : "embed" }))) }, facebookvideo: function(a) { var b = r.exec(a); return !!b && (0 !== a.indexOf("http") && (a = "https:" + a), x(w(a, v("https://www.facebook.com/plugins/video.php?href=" + a, $.extend({ autoplay: 1 }, u(b[4] || "")))))) }, iframe: x }, template: '' } , n = /(^data:image\/)|(\.(png|jpe?g|gif|svg|webp|bmp|ico|tiff?)(\?\S*)?$)/i , o = /(youtube(-nocookie)?\.com|youtu\.be)\/(watch\?v=|v\/|u\/|embed\/?)?([\w-]{11})(.*)?/i , p = /(vimeo(pro)?.com)\/(?:[^\d]+)?(\d+)\??(.*)?$/ , q = /((maps|www)\.)?google\.([^\/\?]+)\/?((maps\/?)?\?)(.*)/i , r = /(facebook\.com)\/([a-z0-9_-]*)\/videos\/([0-9]*)(.*)?$/i , s = function() { var c = e.createElement("div") , a = { WebkitTransition: "webkitTransitionEnd", MozTransition: "transitionend", OTransition: "oTransitionEnd otransitionend", transition: "transitionend" }; for (var b in a) if (void 0 !== c.style[b]) return a[b]; return !1 }(); function t(b) { var a = j(); return s && b.length ? (b.one(s, a.resolve), setTimeout(a.resolve, 500)) : a.resolve(), a.promise() } function d(a, b, c) { if (1 === arguments.length) return $.extend({}, a); if ("string" == typeof b) { if (void 0 === c) return void 0 === a[b] ? null : a[b]; a[b] = c } else $.extend(a, b); return this } function u(e) { for (var c, b = decodeURI(e.split("#")[0]).split("&"), d = {}, a = 0, f = b.length; a < f; a++) b[a] && (d[(c = b[a].split("="))[0]] = c[1]); return d } function v(a, b) { return a + (a.indexOf("?") > -1 ? "&" : "?") + $.param(b) } function w(a, c) { var b = a.indexOf("#"); return -1 === b ? c : (b > 0 && (a = a.substr(b)), c + a) } function g(b, a) { var c = $('' + (a.opener() && a.opener().data(') , d = j() , e = function() { var a; d.reject((a = "Failed loading image", $('').append(a))) }; return c.on("load", function() { if (0 === this.naturalWidth) return e(); d.resolve(c) }).on("error", e), d.promise() } function x(a) { var c = a && 0 === a.indexOf("https://player.vimeo.com/") , b = ""; return !0 == c && (b = 'allow="autoplay; fullscreen; picture-in-picture"'), '
' } function y() { return e.documentElement.clientHeight ? e.documentElement.clientHeight : Math.round(i.height()) } function z(b) { var a = h(); a && (27 === b.keyCode && a.options("esc") && a.close(), 9 === b.keyCode && A(b, a)) } function A(b, d) { var a = d.element().find('a[href],area[href],input:not([disabled]),select:not([disabled]),textarea:not([disabled]),button:not([disabled]),iframe,object,embed,[contenteditable],[tabindex]:not([tabindex^="-"])') , c = a.index(e.activeElement); b.shiftKey && c <= 0 ? (a.get(a.length - 1).focus(), b.preventDefault()) : b.shiftKey || c !== a.length - 1 || (a.get(0).focus(), b.preventDefault()) } function B() { $.each(l, function(b, a) { a.resize() }) } function h() { return 0 === l.length ? null : l[0] } function C(w, b, x, A) { var n, q, C, r, s, u, g, v, o, h, p, a = this, D = !1, E = !1; b = $.extend({}, c, b), q = $(b.template), a.element = function() { return q } , a.opener = function() { return x } , a.options = $.proxy(d, a, b), a.handlers = $.proxy(d, a, b.handlers), a.resize = function() { D && !E && C.css("max-height", y() + "px").trigger("lity:resize", [a]) } , a.close = function() { if (D && !E) { E = !0, (c = a).element().attr(f, "true"), 1 === l.length && (k.removeClass("lity-active"), i.off({ resize: B, keydown: z })), ((l = $.grep(l, function(a) { return c !== a })).length ? l[0].element() : $(".lity-hidden")).removeClass("lity-hidden").each(function() { var a = $(this) , b = a.data(m); b ? a.attr(f, b) : a.removeAttr(f), a.removeData(m) }); var c, b = j(); if (A && (e.activeElement === q[0] || $.contains(q[0], e.activeElement))) try { A.focus() } catch (d) {} return C.trigger("lity:close", [a]), q.removeClass("lity-opened").addClass("lity-closed"), t(C.add(q)).always(function() { C.trigger("lity:remove", [a]), q.remove(), q = void 0, b.resolve() }), b.promise() } } , n = (r = w, s = a, u = b.handlers, g = b.handler, o = "inline", h = $.extend({}, u), g && h[g] ? (v = h[g](r, s), o = g) : ($.each(["inline", "iframe"], function(b, a) { delete h[a], h[a] = u[a] }), $.each(h, function(b, a) { return !(a && (!a.test || a.test(r, s))) || (!1 !== (v = a(r, s)) ? (o = b, !1) : void 0) })), { handler: o, content: v || "" }), q.attr(f, "false").addClass("lity-loading lity-opened lity-" + n.handler).appendTo("body").focus().on("click", "[data-lity-close]", function(b) { $(b.target).is("[data-lity-close]") && a.close() }).trigger("lity:open", [a]), p = a, 1 === l.unshift(p) && (k.addClass("lity-active"), i.on({ resize: B, keydown: z })), $("body > *").not(p.element()).addClass("lity-hidden").each(function() { var a = $(this); void 0 === a.data(m) && a.data(m, a.attr(f) || null) }).attr(f, "true"), $.when(n.content).always(function(b) { C = $(b).css("max-height", y() + "px"), q.find(".lity-loader").each(function() { var a = $(this); t(a).always(function() { a.remove() }) }), q.removeClass("lity-loading").find(".lity-content").empty().append(C), D = !0, C.trigger("lity:ready", [a]) }) } function a(b, c, a) { b.preventDefault ? (b.preventDefault(), b = (a = $(this)).data("lity-target") || a.attr("href") || a.attr("src")) : a = $(a); var d = new C(b,$.extend({}, a.data("lity-options") || a.data("lity"), c),a,e.activeElement); if (!b.preventDefault) return d } return g.test = function(a) { return n.test(a) } , a.version = "2.2.2", a.options = $.proxy(d, a, c), a.handlers = $.proxy(d, a, c.handlers), a.current = h, $(e).on("click.lity", "[data-lity]", a), a })