@@ -1,189 +0,0 @@
|
||||
/*! elementor - v3.32.0 - 05-10-2025 */
|
||||
"use strict";
|
||||
(self.webpackChunkelementorFrontend = self.webpackChunkelementorFrontend || []).push([[131], {
|
||||
5249: (e, t, a) => {
|
||||
Object.defineProperty(t, "__esModule", {
|
||||
value: !0
|
||||
}),
|
||||
t.default = void 0,
|
||||
a(6281),
|
||||
a(4846),
|
||||
a(7458),
|
||||
a(6211);
|
||||
class baseTabs extends elementorModules.frontend.handlers.Base {
|
||||
getDefaultSettings() {
|
||||
return {
|
||||
selectors: {
|
||||
tablist: '[role="tablist"]',
|
||||
tabTitle: ".elementor-tab-title",
|
||||
tabContent: ".elementor-tab-content"
|
||||
},
|
||||
classes: {
|
||||
active: "elementor-active"
|
||||
},
|
||||
showTabFn: "show",
|
||||
hideTabFn: "hide",
|
||||
toggleSelf: !0,
|
||||
hidePrevious: !0,
|
||||
autoExpand: !0,
|
||||
keyDirection: {
|
||||
ArrowLeft: elementorFrontendConfig.is_rtl ? 1 : -1,
|
||||
ArrowUp: -1,
|
||||
ArrowRight: elementorFrontendConfig.is_rtl ? -1 : 1,
|
||||
ArrowDown: 1
|
||||
}
|
||||
}
|
||||
}
|
||||
getDefaultElements() {
|
||||
const e = this.getSettings("selectors");
|
||||
return {
|
||||
$tabTitles: this.findElement(e.tabTitle),
|
||||
$tabContents: this.findElement(e.tabContent)
|
||||
}
|
||||
}
|
||||
activateDefaultTab() {
|
||||
const e = this.getSettings();
|
||||
if (!e.autoExpand || "editor" === e.autoExpand && !this.isEdit)
|
||||
return;
|
||||
const t = this.getEditSettings("activeItemIndex") || 1
|
||||
, a = {
|
||||
showTabFn: e.showTabFn,
|
||||
hideTabFn: e.hideTabFn
|
||||
};
|
||||
this.setSettings({
|
||||
showTabFn: "show",
|
||||
hideTabFn: "hide"
|
||||
}),
|
||||
this.changeActiveTab(t),
|
||||
this.setSettings(a)
|
||||
}
|
||||
handleKeyboardNavigation(e) {
|
||||
const t = e.currentTarget
|
||||
, a = jQuery(t.closest(this.getSettings("selectors").tablist))
|
||||
, i = a.find(this.getSettings("selectors").tabTitle)
|
||||
, s = "vertical" === a.attr("aria-orientation");
|
||||
switch (e.key) {
|
||||
case "ArrowLeft":
|
||||
case "ArrowRight":
|
||||
if (s)
|
||||
return;
|
||||
break;
|
||||
case "ArrowUp":
|
||||
case "ArrowDown":
|
||||
if (!s)
|
||||
return;
|
||||
e.preventDefault();
|
||||
break;
|
||||
case "Home":
|
||||
return e.preventDefault(),
|
||||
void i.first().trigger("focus");
|
||||
case "End":
|
||||
return e.preventDefault(),
|
||||
void i.last().trigger("focus");
|
||||
default:
|
||||
return
|
||||
}
|
||||
const n = t.getAttribute("data-tab") - 1
|
||||
, r = this.getSettings("keyDirection")[e.key]
|
||||
, o = i[n + r];
|
||||
o ? o.focus() : -1 === n + r ? i.last().trigger("focus") : i.first().trigger("focus")
|
||||
}
|
||||
deactivateActiveTab(e) {
|
||||
const t = this.getSettings()
|
||||
, a = t.classes.active
|
||||
, i = e ? '[data-tab="' + e + '"]' : "." + a
|
||||
, s = this.elements.$tabTitles.filter(i)
|
||||
, n = this.elements.$tabContents.filter(i);
|
||||
s.add(n).removeClass(a + " active"),
|
||||
s.closest(".elementor-accordion-item").removeClass("active"),
|
||||
s.attr({
|
||||
tabindex: "-1",
|
||||
"aria-selected": "false",
|
||||
"aria-expanded": "false"
|
||||
}),
|
||||
n[t.hideTabFn](),
|
||||
n.attr("hidden", "hidden")
|
||||
}
|
||||
activateTab(e) {
|
||||
const t = this.getSettings()
|
||||
, a = t.classes.active
|
||||
, i = this.elements.$tabTitles.filter('[data-tab="' + e + '"]')
|
||||
, s = this.elements.$tabContents.filter('[data-tab="' + e + '"]')
|
||||
, n = "show" === t.showTabFn ? 0 : 400;
|
||||
i.add(s).addClass(a + " active"),
|
||||
i.closest(".elementor-accordion-item").addClass("active"),
|
||||
i.attr({
|
||||
tabindex: "0",
|
||||
"aria-selected": "true",
|
||||
"aria-expanded": "true"
|
||||
}),
|
||||
s[t.showTabFn](n, () => elementorFrontend.elements.$window.trigger("elementor-pro/motion-fx/recalc")),
|
||||
s.removeAttr("hidden")
|
||||
}
|
||||
isActiveTab(e) {
|
||||
return this.elements.$tabTitles.filter('[data-tab="' + e + '"]').hasClass(this.getSettings("classes.active"))
|
||||
}
|
||||
bindEvents() {
|
||||
this.elements.$tabTitles.on({
|
||||
keydown: e => {
|
||||
jQuery(e.target).is("a") && "Enter" === e.key && e.preventDefault(),
|
||||
["End", "Home", "ArrowUp", "ArrowDown"].includes(e.key) && this.handleKeyboardNavigation(e)
|
||||
}
|
||||
,
|
||||
keyup: e => {
|
||||
switch (e.code) {
|
||||
case "ArrowLeft":
|
||||
case "ArrowRight":
|
||||
this.handleKeyboardNavigation(e);
|
||||
break;
|
||||
case "Enter":
|
||||
case "Space":
|
||||
e.preventDefault(),
|
||||
this.changeActiveTab(e.currentTarget.getAttribute("data-tab"))
|
||||
}
|
||||
}
|
||||
,
|
||||
click: e => {
|
||||
e.preventDefault(),
|
||||
this.changeActiveTab(e.currentTarget.getAttribute("data-tab"))
|
||||
}
|
||||
})
|
||||
}
|
||||
onInit() {
|
||||
super.onInit(...arguments),
|
||||
this.activateDefaultTab()
|
||||
}
|
||||
onEditSettingsChange(e) {
|
||||
"activeItemIndex" === e && this.activateDefaultTab()
|
||||
}
|
||||
changeActiveTab(e) {
|
||||
const t = this.isActiveTab(e)
|
||||
, a = this.getSettings();
|
||||
if (t) return;
|
||||
!a.toggleSelf && t || !a.hidePrevious || this.deactivateActiveTab(),
|
||||
!a.hidePrevious && t && this.deactivateActiveTab(e),
|
||||
t || this.activateTab(e)
|
||||
}
|
||||
}
|
||||
t.default = baseTabs
|
||||
}
|
||||
,
|
||||
9675: (e, t, a) => {
|
||||
var i = a(6784);
|
||||
Object.defineProperty(t, "__esModule", {
|
||||
value: !0
|
||||
}),
|
||||
t.default = void 0;
|
||||
var s = i(a(5249));
|
||||
class Accordion extends s.default {
|
||||
getDefaultSettings() {
|
||||
return {
|
||||
...super.getDefaultSettings(),
|
||||
showTabFn: "slideDown",
|
||||
hideTabFn: "slideUp"
|
||||
}
|
||||
}
|
||||
}
|
||||
t.default = Accordion
|
||||
}
|
||||
}]);
|
||||
153
assets/js/add-to-cart.min.js
vendored
153
assets/js/add-to-cart.min.js
vendored
@@ -1,153 +0,0 @@
|
||||
jQuery(function(t) {
|
||||
if ("undefined" == typeof wc_add_to_cart_params)
|
||||
return !1;
|
||||
var a = function() {
|
||||
this.requests = [],
|
||||
this.addRequest = this.addRequest.bind(this),
|
||||
this.run = this.run.bind(this),
|
||||
this.$liveRegion = this.createLiveRegion(),
|
||||
t(document.body).on("click", ".add_to_cart_button:not(.wc-interactive)", {
|
||||
addToCartHandler: this
|
||||
}, this.onAddToCart).on("click", ".remove_from_cart_button", {
|
||||
addToCartHandler: this
|
||||
}, this.onRemoveFromCart).on("added_to_cart", {
|
||||
addToCartHandler: this
|
||||
}, this.onAddedToCart).on("removed_from_cart", {
|
||||
addToCartHandler: this
|
||||
}, this.onRemovedFromCart).on("ajax_request_not_sent.adding_to_cart", this.updateButton)
|
||||
};
|
||||
a.prototype.addRequest = function(t) {
|
||||
this.requests.push(t),
|
||||
1 === this.requests.length && this.run()
|
||||
}
|
||||
,
|
||||
a.prototype.run = function() {
|
||||
var a = this
|
||||
, e = a.requests[0].complete;
|
||||
a.requests[0].complete = function() {
|
||||
"function" == typeof e && e(),
|
||||
a.requests.shift(),
|
||||
a.requests.length > 0 && a.run()
|
||||
}
|
||||
,
|
||||
t.ajax(this.requests[0])
|
||||
}
|
||||
,
|
||||
a.prototype.onAddToCart = function(a) {
|
||||
var e = t(this);
|
||||
if (e.is(".ajax_add_to_cart")) {
|
||||
if (!e.attr("data-product_id"))
|
||||
return !0;
|
||||
if (a.data.addToCartHandler.$liveRegion.text("").removeAttr("aria-relevant"),
|
||||
a.preventDefault(),
|
||||
e.removeClass("added"),
|
||||
e.addClass("loading"),
|
||||
!1 === t(document.body).triggerHandler("should_send_ajax_request.adding_to_cart", [e]))
|
||||
return t(document.body).trigger("ajax_request_not_sent.adding_to_cart", [!1, !1, e]),
|
||||
!0;
|
||||
var r = {};
|
||||
t.each(e.data(), function(t, a) {
|
||||
r[t] = a
|
||||
}),
|
||||
t.each(e[0].dataset, function(t, a) {
|
||||
r[t] = a
|
||||
}),
|
||||
t(document.body).trigger("adding_to_cart", [e, r]),
|
||||
a.data.addToCartHandler.addRequest({
|
||||
type: "POST",
|
||||
url: wc_add_to_cart_params.wc_ajax_url.toString().replace("%%endpoint%%", "add_to_cart"),
|
||||
data: r,
|
||||
success: function(a) {
|
||||
a && (a.error && a.product_url ? window.location = a.product_url : "yes" !== wc_add_to_cart_params.cart_redirect_after_add ? t(document.body).trigger("added_to_cart", [a.fragments, a.cart_hash, e]) : window.location = wc_add_to_cart_params.cart_url)
|
||||
},
|
||||
dataType: "json"
|
||||
})
|
||||
}
|
||||
}
|
||||
,
|
||||
a.prototype.onRemoveFromCart = function(a) {
|
||||
var e = t(this)
|
||||
, r = e.closest(".woocommerce-mini-cart-item");
|
||||
a.data.addToCartHandler.$liveRegion.text("").removeAttr("aria-relevant"),
|
||||
a.preventDefault(),
|
||||
r.block({
|
||||
message: null,
|
||||
overlayCSS: {
|
||||
opacity: .6
|
||||
}
|
||||
}),
|
||||
a.data.addToCartHandler.addRequest({
|
||||
type: "POST",
|
||||
url: wc_add_to_cart_params.wc_ajax_url.toString().replace("%%endpoint%%", "remove_from_cart"),
|
||||
data: {
|
||||
cart_item_key: e.data("cart_item_key")
|
||||
},
|
||||
success: function(a) {
|
||||
a && a.fragments ? t(document.body).trigger("removed_from_cart", [a.fragments, a.cart_hash, e]) : window.location = e.attr("href")
|
||||
},
|
||||
error: function() {
|
||||
window.location = e.attr("href")
|
||||
},
|
||||
dataType: "json"
|
||||
})
|
||||
}
|
||||
,
|
||||
a.prototype.updateButton = function(a, e, r, d) {
|
||||
if (d = void 0 !== d && d) {
|
||||
if (d.removeClass("loading"),
|
||||
e && d.addClass("added"),
|
||||
e && !wc_add_to_cart_params.is_cart && 0 === d.parent().find(".added_to_cart").length) {
|
||||
var o = document.createElement("a");
|
||||
o.href = wc_add_to_cart_params.cart_url,
|
||||
o.className = "added_to_cart wc-forward",
|
||||
o.title = wc_add_to_cart_params.i18n_view_cart,
|
||||
o.textContent = wc_add_to_cart_params.i18n_view_cart,
|
||||
d.after(o)
|
||||
}
|
||||
t(document.body).trigger("wc_cart_button_updated", [d])
|
||||
}
|
||||
}
|
||||
,
|
||||
a.prototype.updateFragments = function(a, e) {
|
||||
e && (t.each(e, function(a) {
|
||||
t(a).addClass("updating").fadeTo("400", "0.6").block({
|
||||
message: null,
|
||||
overlayCSS: {
|
||||
opacity: .6
|
||||
}
|
||||
})
|
||||
}),
|
||||
t.each(e, function(a, e) {
|
||||
t(a).replaceWith(e),
|
||||
t(a).stop(!0).css("opacity", "1").unblock()
|
||||
}),
|
||||
t(document.body).trigger("wc_fragments_loaded"))
|
||||
}
|
||||
,
|
||||
a.prototype.alertCartUpdated = function(t, a, e, r) {
|
||||
if (r = void 0 !== r && r) {
|
||||
var d = r.data("success_message");
|
||||
if (!d)
|
||||
return;
|
||||
t.data.addToCartHandler.$liveRegion.delay(1e3).text(d).attr("aria-relevant", "all")
|
||||
}
|
||||
}
|
||||
,
|
||||
a.prototype.createLiveRegion = function() {
|
||||
var a = t(".widget_shopping_cart_live_region");
|
||||
return a.length ? a : t('<div class="widget_shopping_cart_live_region screen-reader-text" role="status"></div>').appendTo("body")
|
||||
}
|
||||
,
|
||||
a.prototype.onAddedToCart = function(t, a, e, r) {
|
||||
t.data.addToCartHandler.updateButton(t, a, e, r),
|
||||
t.data.addToCartHandler.updateFragments(t, a),
|
||||
t.data.addToCartHandler.alertCartUpdated(t, a, e, r)
|
||||
}
|
||||
,
|
||||
a.prototype.onRemovedFromCart = function(t, a, e, r) {
|
||||
t.data.addToCartHandler.updateFragments(t, a),
|
||||
t.data.addToCartHandler.alertCartUpdated(t, a, e, r)
|
||||
}
|
||||
,
|
||||
new a
|
||||
});
|
||||
39
assets/js/address.min.js
vendored
39
assets/js/address.min.js
vendored
@@ -1,39 +0,0 @@
|
||||
( (e, s) => {
|
||||
let o = {
|
||||
noStateCountries: [],
|
||||
init() {
|
||||
s(e).on("load", o.onLoad),
|
||||
s(document).on("wpformsRepeaterFieldCloneCreated", o.setChangeHandlers)
|
||||
},
|
||||
onLoad() {
|
||||
o.noStateCountries = wpforms_settings?.address_field?.list_countries_without_states || [],
|
||||
o.noStateCountries.length && o.setChangeHandlers()
|
||||
},
|
||||
setChangeHandlers() {
|
||||
s(".wpforms-field-address").each(function() {
|
||||
var e = s(this).find("select.wpforms-field-address-country");
|
||||
e.length && (o.handleCountryChange(e),
|
||||
e.off("change").on("change", function() {
|
||||
o.handleCountryChange(this)
|
||||
}))
|
||||
})
|
||||
},
|
||||
handleCountryChange(e) {
|
||||
var e = s(e)
|
||||
, t = e.closest(".wpforms-field").find(".wpforms-field-address-state")
|
||||
, n = t.closest(".wpforms-field-row");
|
||||
n.length && (e = e.val(),
|
||||
o.handleStateInput(t, n, e))
|
||||
},
|
||||
handleStateInput(e, t, n) {
|
||||
o.noStateCountries.includes(n) ? (e.val("").prop("disabled", !0).prop("required", !1).on("change", function() {
|
||||
s(this).val("")
|
||||
}),
|
||||
t.addClass("wpforms-without-state")) : (e.prop("disabled", !1).prop("required", t.find(".wpforms-first input").prop("required")).off("change"),
|
||||
t.removeClass("wpforms-without-state"))
|
||||
}
|
||||
};
|
||||
o.init(),
|
||||
o
|
||||
}
|
||||
)(window, jQuery);
|
||||
866
assets/js/core.min.js
vendored
866
assets/js/core.min.js
vendored
@@ -1,866 +0,0 @@
|
||||
/*! jQuery UI - v1.13.3 - 2024-04-26
|
||||
* https://jqueryui.com
|
||||
* Includes: widget.js, position.js, data.js, disable-selection.js, effect.js, effects/effect-blind.js, effects/effect-bounce.js, effects/effect-clip.js, effects/effect-drop.js, effects/effect-explode.js, effects/effect-fade.js, effects/effect-fold.js, effects/effect-highlight.js, effects/effect-puff.js, effects/effect-pulsate.js, effects/effect-scale.js, effects/effect-shake.js, effects/effect-size.js, effects/effect-slide.js, effects/effect-transfer.js, focusable.js, form-reset-mixin.js, jquery-patch.js, keycode.js, labels.js, scroll-parent.js, tabbable.js, unique-id.js, widgets/accordion.js, widgets/autocomplete.js, widgets/button.js, widgets/checkboxradio.js, widgets/controlgroup.js, widgets/datepicker.js, widgets/dialog.js, widgets/draggable.js, widgets/droppable.js, widgets/menu.js, widgets/mouse.js, widgets/progressbar.js, widgets/resizable.js, widgets/selectable.js, widgets/selectmenu.js, widgets/slider.js, widgets/sortable.js, widgets/spinner.js, widgets/tabs.js, widgets/tooltip.js
|
||||
* Copyright jQuery Foundation and other contributors; Licensed MIT */
|
||||
!function(t) {
|
||||
"use strict";
|
||||
"function" == typeof define && define.amd ? define(["jquery"], t) : t(jQuery)
|
||||
}(function(x) {
|
||||
"use strict";
|
||||
var t, e, i, n, W, C, o, s, r, l, a, h, u;
|
||||
function E(t, e, i) {
|
||||
return [parseFloat(t[0]) * (a.test(t[0]) ? e / 100 : 1), parseFloat(t[1]) * (a.test(t[1]) ? i / 100 : 1)]
|
||||
}
|
||||
function L(t, e) {
|
||||
return parseInt(x.css(t, e), 10) || 0
|
||||
}
|
||||
function N(t) {
|
||||
return null != t && t === t.window
|
||||
}
|
||||
x.ui = x.ui || {},
|
||||
x.ui.version = "1.13.3",
|
||||
/*!
|
||||
* jQuery UI :data 1.13.3
|
||||
* https://jqueryui.com
|
||||
*
|
||||
* Copyright OpenJS Foundation and other contributors
|
||||
* Released under the MIT license.
|
||||
* https://jquery.org/license
|
||||
*/
|
||||
x.extend(x.expr.pseudos, {
|
||||
data: x.expr.createPseudo ? x.expr.createPseudo(function(e) {
|
||||
return function(t) {
|
||||
return !!x.data(t, e)
|
||||
}
|
||||
}) : function(t, e, i) {
|
||||
return !!x.data(t, i[3])
|
||||
}
|
||||
}),
|
||||
/*!
|
||||
* jQuery UI Disable Selection 1.13.3
|
||||
* https://jqueryui.com
|
||||
*
|
||||
* Copyright OpenJS Foundation and other contributors
|
||||
* Released under the MIT license.
|
||||
* https://jquery.org/license
|
||||
*/
|
||||
x.fn.extend({
|
||||
disableSelection: (t = "onselectstart"in document.createElement("div") ? "selectstart" : "mousedown",
|
||||
function() {
|
||||
return this.on(t + ".ui-disableSelection", function(t) {
|
||||
t.preventDefault()
|
||||
})
|
||||
}
|
||||
),
|
||||
enableSelection: function() {
|
||||
return this.off(".ui-disableSelection")
|
||||
}
|
||||
}),
|
||||
/*!
|
||||
* jQuery UI Focusable 1.13.3
|
||||
* https://jqueryui.com
|
||||
*
|
||||
* Copyright OpenJS Foundation and other contributors
|
||||
* Released under the MIT license.
|
||||
* https://jquery.org/license
|
||||
*/
|
||||
x.ui.focusable = function(t, e) {
|
||||
var i, n, o, s = t.nodeName.toLowerCase();
|
||||
return "area" === s ? (o = (i = t.parentNode).name,
|
||||
!(!t.href || !o || "map" !== i.nodeName.toLowerCase()) && 0 < (i = x("img[usemap='#" + o + "']")).length && i.is(":visible")) : (/^(input|select|textarea|button|object)$/.test(s) ? (n = !t.disabled) && (o = x(t).closest("fieldset")[0]) && (n = !o.disabled) : n = "a" === s && t.href || e,
|
||||
n && x(t).is(":visible") && function(t) {
|
||||
var e = t.css("visibility");
|
||||
for (; "inherit" === e; )
|
||||
t = t.parent(),
|
||||
e = t.css("visibility");
|
||||
return "visible" === e
|
||||
}(x(t)))
|
||||
}
|
||||
,
|
||||
x.extend(x.expr.pseudos, {
|
||||
focusable: function(t) {
|
||||
return x.ui.focusable(t, null != x.attr(t, "tabindex"))
|
||||
}
|
||||
}),
|
||||
x.fn._form = function() {
|
||||
return "string" == typeof this[0].form ? this.closest("form") : x(this[0].form)
|
||||
}
|
||||
,
|
||||
/*!
|
||||
* jQuery UI Form Reset Mixin 1.13.3
|
||||
* https://jqueryui.com
|
||||
*
|
||||
* Copyright OpenJS Foundation and other contributors
|
||||
* Released under the MIT license.
|
||||
* https://jquery.org/license
|
||||
*/
|
||||
x.ui.formResetMixin = {
|
||||
_formResetHandler: function() {
|
||||
var e = x(this);
|
||||
setTimeout(function() {
|
||||
var t = e.data("ui-form-reset-instances");
|
||||
x.each(t, function() {
|
||||
this.refresh()
|
||||
})
|
||||
})
|
||||
},
|
||||
_bindFormResetHandler: function() {
|
||||
var t;
|
||||
this.form = this.element._form(),
|
||||
this.form.length && ((t = this.form.data("ui-form-reset-instances") || []).length || this.form.on("reset.ui-form-reset", this._formResetHandler),
|
||||
t.push(this),
|
||||
this.form.data("ui-form-reset-instances", t))
|
||||
},
|
||||
_unbindFormResetHandler: function() {
|
||||
var t;
|
||||
this.form.length && ((t = this.form.data("ui-form-reset-instances")).splice(x.inArray(this, t), 1),
|
||||
t.length ? this.form.data("ui-form-reset-instances", t) : this.form.removeData("ui-form-reset-instances").off("reset.ui-form-reset"))
|
||||
}
|
||||
},
|
||||
x.ui.ie = !!/msie [\w.]+/.exec(navigator.userAgent.toLowerCase()),
|
||||
/*!
|
||||
* jQuery UI Support for jQuery core 1.8.x and newer 1.13.3
|
||||
* https://jqueryui.com
|
||||
*
|
||||
* Copyright OpenJS Foundation and other contributors
|
||||
* Released under the MIT license.
|
||||
* https://jquery.org/license
|
||||
*
|
||||
*/
|
||||
x.expr.pseudos || (x.expr.pseudos = x.expr[":"]),
|
||||
x.uniqueSort || (x.uniqueSort = x.unique),
|
||||
x.escapeSelector || (e = /([\0-\x1f\x7f]|^-?\d)|^-$|[^\x80-\uFFFF\w-]/g,
|
||||
i = function(t, e) {
|
||||
return e ? "\0" === t ? "<22>" : t.slice(0, -1) + "\\" + t.charCodeAt(t.length - 1).toString(16) + " " : "\\" + t
|
||||
}
|
||||
,
|
||||
x.escapeSelector = function(t) {
|
||||
return (t + "").replace(e, i)
|
||||
}
|
||||
),
|
||||
x.fn.even && x.fn.odd || x.fn.extend({
|
||||
even: function() {
|
||||
return this.filter(function(t) {
|
||||
return t % 2 == 0
|
||||
})
|
||||
},
|
||||
odd: function() {
|
||||
return this.filter(function(t) {
|
||||
return t % 2 == 1
|
||||
})
|
||||
}
|
||||
}),
|
||||
/*!
|
||||
* jQuery UI Keycode 1.13.3
|
||||
* https://jqueryui.com
|
||||
*
|
||||
* Copyright OpenJS Foundation and other contributors
|
||||
* Released under the MIT license.
|
||||
* https://jquery.org/license
|
||||
*/
|
||||
x.ui.keyCode = {
|
||||
BACKSPACE: 8,
|
||||
COMMA: 188,
|
||||
DELETE: 46,
|
||||
DOWN: 40,
|
||||
END: 35,
|
||||
ENTER: 13,
|
||||
ESCAPE: 27,
|
||||
HOME: 36,
|
||||
LEFT: 37,
|
||||
PAGE_DOWN: 34,
|
||||
PAGE_UP: 33,
|
||||
PERIOD: 190,
|
||||
RIGHT: 39,
|
||||
SPACE: 32,
|
||||
TAB: 9,
|
||||
UP: 38
|
||||
},
|
||||
/*!
|
||||
* jQuery UI Labels 1.13.3
|
||||
* https://jqueryui.com
|
||||
*
|
||||
* Copyright OpenJS Foundation and other contributors
|
||||
* Released under the MIT license.
|
||||
* https://jquery.org/license
|
||||
*/
|
||||
x.fn.labels = function() {
|
||||
var t, e, i;
|
||||
return this.length ? this[0].labels && this[0].labels.length ? this.pushStack(this[0].labels) : (e = this.eq(0).parents("label"),
|
||||
(t = this.attr("id")) && (i = (i = this.eq(0).parents().last()).add((i.length ? i : this).siblings()),
|
||||
t = "label[for='" + x.escapeSelector(t) + "']",
|
||||
e = e.add(i.find(t).addBack(t))),
|
||||
this.pushStack(e)) : this.pushStack([])
|
||||
}
|
||||
,
|
||||
x.ui.plugin = {
|
||||
add: function(t, e, i) {
|
||||
var n, o = x.ui[t].prototype;
|
||||
for (n in i)
|
||||
o.plugins[n] = o.plugins[n] || [],
|
||||
o.plugins[n].push([e, i[n]])
|
||||
},
|
||||
call: function(t, e, i, n) {
|
||||
var o, s = t.plugins[e];
|
||||
if (s && (n || t.element[0].parentNode && 11 !== t.element[0].parentNode.nodeType))
|
||||
for (o = 0; o < s.length; o++)
|
||||
t.options[s[o][0]] && s[o][1].apply(t.element, i)
|
||||
}
|
||||
},
|
||||
/*!
|
||||
* jQuery UI Position 1.13.3
|
||||
* https://jqueryui.com
|
||||
*
|
||||
* Copyright OpenJS Foundation and other contributors
|
||||
* Released under the MIT license.
|
||||
* https://jquery.org/license
|
||||
*
|
||||
* https://api.jqueryui.com/position/
|
||||
*/
|
||||
W = Math.max,
|
||||
C = Math.abs,
|
||||
o = /left|center|right/,
|
||||
s = /top|center|bottom/,
|
||||
r = /[\+\-]\d+(\.[\d]+)?%?/,
|
||||
l = /^\w+/,
|
||||
a = /%$/,
|
||||
h = x.fn.position,
|
||||
x.position = {
|
||||
scrollbarWidth: function() {
|
||||
var t, e, i;
|
||||
return void 0 !== n ? n : (i = (e = x("<div style='display:block;position:absolute;width:200px;height:200px;overflow:hidden;'><div style='height:300px;width:auto;'></div></div>")).children()[0],
|
||||
x("body").append(e),
|
||||
t = i.offsetWidth,
|
||||
e.css("overflow", "scroll"),
|
||||
t === (i = i.offsetWidth) && (i = e[0].clientWidth),
|
||||
e.remove(),
|
||||
n = t - i)
|
||||
},
|
||||
getScrollInfo: function(t) {
|
||||
var e = t.isWindow || t.isDocument ? "" : t.element.css("overflow-x")
|
||||
, i = t.isWindow || t.isDocument ? "" : t.element.css("overflow-y")
|
||||
, e = "scroll" === e || "auto" === e && t.width < t.element[0].scrollWidth;
|
||||
return {
|
||||
width: "scroll" === i || "auto" === i && t.height < t.element[0].scrollHeight ? x.position.scrollbarWidth() : 0,
|
||||
height: e ? x.position.scrollbarWidth() : 0
|
||||
}
|
||||
},
|
||||
getWithinInfo: function(t) {
|
||||
var e = x(t || window)
|
||||
, i = N(e[0])
|
||||
, n = !!e[0] && 9 === e[0].nodeType;
|
||||
return {
|
||||
element: e,
|
||||
isWindow: i,
|
||||
isDocument: n,
|
||||
offset: !i && !n ? x(t).offset() : {
|
||||
left: 0,
|
||||
top: 0
|
||||
},
|
||||
scrollLeft: e.scrollLeft(),
|
||||
scrollTop: e.scrollTop(),
|
||||
width: e.outerWidth(),
|
||||
height: e.outerHeight()
|
||||
}
|
||||
}
|
||||
},
|
||||
x.fn.position = function(f) {
|
||||
var c, d, p, g, m, v, y, w, b, _, t, e;
|
||||
return f && f.of ? (v = "string" == typeof (f = x.extend({}, f)).of ? x(document).find(f.of) : x(f.of),
|
||||
y = x.position.getWithinInfo(f.within),
|
||||
w = x.position.getScrollInfo(y),
|
||||
b = (f.collision || "flip").split(" "),
|
||||
_ = {},
|
||||
e = 9 === (e = (t = v)[0]).nodeType ? {
|
||||
width: t.width(),
|
||||
height: t.height(),
|
||||
offset: {
|
||||
top: 0,
|
||||
left: 0
|
||||
}
|
||||
} : N(e) ? {
|
||||
width: t.width(),
|
||||
height: t.height(),
|
||||
offset: {
|
||||
top: t.scrollTop(),
|
||||
left: t.scrollLeft()
|
||||
}
|
||||
} : e.preventDefault ? {
|
||||
width: 0,
|
||||
height: 0,
|
||||
offset: {
|
||||
top: e.pageY,
|
||||
left: e.pageX
|
||||
}
|
||||
} : {
|
||||
width: t.outerWidth(),
|
||||
height: t.outerHeight(),
|
||||
offset: t.offset()
|
||||
},
|
||||
v[0].preventDefault && (f.at = "left top"),
|
||||
d = e.width,
|
||||
p = e.height,
|
||||
m = x.extend({}, g = e.offset),
|
||||
x.each(["my", "at"], function() {
|
||||
var t, e, i = (f[this] || "").split(" ");
|
||||
(i = 1 === i.length ? o.test(i[0]) ? i.concat(["center"]) : s.test(i[0]) ? ["center"].concat(i) : ["center", "center"] : i)[0] = o.test(i[0]) ? i[0] : "center",
|
||||
i[1] = s.test(i[1]) ? i[1] : "center",
|
||||
t = r.exec(i[0]),
|
||||
e = r.exec(i[1]),
|
||||
_[this] = [t ? t[0] : 0, e ? e[0] : 0],
|
||||
f[this] = [l.exec(i[0])[0], l.exec(i[1])[0]]
|
||||
}),
|
||||
1 === b.length && (b[1] = b[0]),
|
||||
"right" === f.at[0] ? m.left += d : "center" === f.at[0] && (m.left += d / 2),
|
||||
"bottom" === f.at[1] ? m.top += p : "center" === f.at[1] && (m.top += p / 2),
|
||||
c = E(_.at, d, p),
|
||||
m.left += c[0],
|
||||
m.top += c[1],
|
||||
this.each(function() {
|
||||
var i, t, r = x(this), l = r.outerWidth(), a = r.outerHeight(), e = L(this, "marginLeft"), n = L(this, "marginTop"), o = l + e + L(this, "marginRight") + w.width, s = a + n + L(this, "marginBottom") + w.height, h = x.extend({}, m), u = E(_.my, r.outerWidth(), r.outerHeight());
|
||||
"right" === f.my[0] ? h.left -= l : "center" === f.my[0] && (h.left -= l / 2),
|
||||
"bottom" === f.my[1] ? h.top -= a : "center" === f.my[1] && (h.top -= a / 2),
|
||||
h.left += u[0],
|
||||
h.top += u[1],
|
||||
i = {
|
||||
marginLeft: e,
|
||||
marginTop: n
|
||||
},
|
||||
x.each(["left", "top"], function(t, e) {
|
||||
x.ui.position[b[t]] && x.ui.position[b[t]][e](h, {
|
||||
targetWidth: d,
|
||||
targetHeight: p,
|
||||
elemWidth: l,
|
||||
elemHeight: a,
|
||||
collisionPosition: i,
|
||||
collisionWidth: o,
|
||||
collisionHeight: s,
|
||||
offset: [c[0] + u[0], c[1] + u[1]],
|
||||
my: f.my,
|
||||
at: f.at,
|
||||
within: y,
|
||||
elem: r
|
||||
})
|
||||
}),
|
||||
f.using && (t = function(t) {
|
||||
var e = g.left - h.left
|
||||
, i = e + d - l
|
||||
, n = g.top - h.top
|
||||
, o = n + p - a
|
||||
, s = {
|
||||
target: {
|
||||
element: v,
|
||||
left: g.left,
|
||||
top: g.top,
|
||||
width: d,
|
||||
height: p
|
||||
},
|
||||
element: {
|
||||
element: r,
|
||||
left: h.left,
|
||||
top: h.top,
|
||||
width: l,
|
||||
height: a
|
||||
},
|
||||
horizontal: i < 0 ? "left" : 0 < e ? "right" : "center",
|
||||
vertical: o < 0 ? "top" : 0 < n ? "bottom" : "middle"
|
||||
};
|
||||
d < l && C(e + i) < d && (s.horizontal = "center"),
|
||||
p < a && C(n + o) < p && (s.vertical = "middle"),
|
||||
W(C(e), C(i)) > W(C(n), C(o)) ? s.important = "horizontal" : s.important = "vertical",
|
||||
f.using.call(this, t, s)
|
||||
}
|
||||
),
|
||||
r.offset(x.extend(h, {
|
||||
using: t
|
||||
}))
|
||||
})) : h.apply(this, arguments)
|
||||
}
|
||||
,
|
||||
x.ui.position = {
|
||||
fit: {
|
||||
left: function(t, e) {
|
||||
var i, n = e.within, o = n.isWindow ? n.scrollLeft : n.offset.left, n = n.width, s = t.left - e.collisionPosition.marginLeft, r = o - s, l = s + e.collisionWidth - n - o;
|
||||
n < e.collisionWidth ? 0 < r && l <= 0 ? (i = t.left + r + e.collisionWidth - n - o,
|
||||
t.left += r - i) : t.left = !(0 < l && r <= 0) && l < r ? o + n - e.collisionWidth : o : 0 < r ? t.left += r : 0 < l ? t.left -= l : t.left = W(t.left - s, t.left)
|
||||
},
|
||||
top: function(t, e) {
|
||||
var i, n = e.within, n = n.isWindow ? n.scrollTop : n.offset.top, o = e.within.height, s = t.top - e.collisionPosition.marginTop, r = n - s, l = s + e.collisionHeight - o - n;
|
||||
o < e.collisionHeight ? 0 < r && l <= 0 ? (i = t.top + r + e.collisionHeight - o - n,
|
||||
t.top += r - i) : t.top = !(0 < l && r <= 0) && l < r ? n + o - e.collisionHeight : n : 0 < r ? t.top += r : 0 < l ? t.top -= l : t.top = W(t.top - s, t.top)
|
||||
}
|
||||
},
|
||||
flip: {
|
||||
left: function(t, e) {
|
||||
var i = e.within
|
||||
, n = i.offset.left + i.scrollLeft
|
||||
, o = i.width
|
||||
, i = i.isWindow ? i.scrollLeft : i.offset.left
|
||||
, s = t.left - e.collisionPosition.marginLeft
|
||||
, r = s - i
|
||||
, s = s + e.collisionWidth - o - i
|
||||
, l = "left" === e.my[0] ? -e.elemWidth : "right" === e.my[0] ? e.elemWidth : 0
|
||||
, a = "left" === e.at[0] ? e.targetWidth : "right" === e.at[0] ? -e.targetWidth : 0
|
||||
, h = -2 * e.offset[0];
|
||||
r < 0 ? ((o = t.left + l + a + h + e.collisionWidth - o - n) < 0 || o < C(r)) && (t.left += l + a + h) : 0 < s && (0 < (n = t.left - e.collisionPosition.marginLeft + l + a + h - i) || C(n) < s) && (t.left += l + a + h)
|
||||
},
|
||||
top: function(t, e) {
|
||||
var i = e.within
|
||||
, n = i.offset.top + i.scrollTop
|
||||
, o = i.height
|
||||
, i = i.isWindow ? i.scrollTop : i.offset.top
|
||||
, s = t.top - e.collisionPosition.marginTop
|
||||
, r = s - i
|
||||
, s = s + e.collisionHeight - o - i
|
||||
, l = "top" === e.my[1] ? -e.elemHeight : "bottom" === e.my[1] ? e.elemHeight : 0
|
||||
, a = "top" === e.at[1] ? e.targetHeight : "bottom" === e.at[1] ? -e.targetHeight : 0
|
||||
, h = -2 * e.offset[1];
|
||||
r < 0 ? ((o = t.top + l + a + h + e.collisionHeight - o - n) < 0 || o < C(r)) && (t.top += l + a + h) : 0 < s && (0 < (n = t.top - e.collisionPosition.marginTop + l + a + h - i) || C(n) < s) && (t.top += l + a + h)
|
||||
}
|
||||
},
|
||||
flipfit: {
|
||||
left: function() {
|
||||
x.ui.position.flip.left.apply(this, arguments),
|
||||
x.ui.position.fit.left.apply(this, arguments)
|
||||
},
|
||||
top: function() {
|
||||
x.ui.position.flip.top.apply(this, arguments),
|
||||
x.ui.position.fit.top.apply(this, arguments)
|
||||
}
|
||||
}
|
||||
},
|
||||
x.ui.safeActiveElement = function(e) {
|
||||
var i;
|
||||
try {
|
||||
i = e.activeElement
|
||||
} catch (t) {
|
||||
i = e.body
|
||||
}
|
||||
return i = (i = i || e.body).nodeName ? i : e.body
|
||||
}
|
||||
,
|
||||
x.ui.safeBlur = function(t) {
|
||||
t && "body" !== t.nodeName.toLowerCase() && x(t).trigger("blur")
|
||||
}
|
||||
,
|
||||
/*!
|
||||
* jQuery UI Scroll Parent 1.13.3
|
||||
* https://jqueryui.com
|
||||
*
|
||||
* Copyright OpenJS Foundation and other contributors
|
||||
* Released under the MIT license.
|
||||
* https://jquery.org/license
|
||||
*/
|
||||
x.fn.scrollParent = function(t) {
|
||||
var e = this.css("position")
|
||||
, i = "absolute" === e
|
||||
, n = t ? /(auto|scroll|hidden)/ : /(auto|scroll)/
|
||||
, t = this.parents().filter(function() {
|
||||
var t = x(this);
|
||||
return (!i || "static" !== t.css("position")) && n.test(t.css("overflow") + t.css("overflow-y") + t.css("overflow-x"))
|
||||
}).eq(0);
|
||||
return "fixed" !== e && t.length ? t : x(this[0].ownerDocument || document)
|
||||
}
|
||||
,
|
||||
/*!
|
||||
* jQuery UI Tabbable 1.13.3
|
||||
* https://jqueryui.com
|
||||
*
|
||||
* Copyright OpenJS Foundation and other contributors
|
||||
* Released under the MIT license.
|
||||
* https://jquery.org/license
|
||||
*/
|
||||
x.extend(x.expr.pseudos, {
|
||||
tabbable: function(t) {
|
||||
var e = x.attr(t, "tabindex")
|
||||
, i = null != e;
|
||||
return (!i || 0 <= e) && x.ui.focusable(t, i)
|
||||
}
|
||||
}),
|
||||
/*!
|
||||
* jQuery UI Unique ID 1.13.3
|
||||
* https://jqueryui.com
|
||||
*
|
||||
* Copyright OpenJS Foundation and other contributors
|
||||
* Released under the MIT license.
|
||||
* https://jquery.org/license
|
||||
*/
|
||||
x.fn.extend({
|
||||
uniqueId: (u = 0,
|
||||
function() {
|
||||
return this.each(function() {
|
||||
this.id || (this.id = "ui-id-" + ++u)
|
||||
})
|
||||
}
|
||||
),
|
||||
removeUniqueId: function() {
|
||||
return this.each(function() {
|
||||
/^ui-id-\d+$/.test(this.id) && x(this).removeAttr("id")
|
||||
})
|
||||
}
|
||||
});
|
||||
/*!
|
||||
* jQuery UI Widget 1.13.3
|
||||
* https://jqueryui.com
|
||||
*
|
||||
* Copyright OpenJS Foundation and other contributors
|
||||
* Released under the MIT license.
|
||||
* https://jquery.org/license
|
||||
*/
|
||||
var f, c = 0, d = Array.prototype.hasOwnProperty, p = Array.prototype.slice;
|
||||
x.cleanData = (f = x.cleanData,
|
||||
function(t) {
|
||||
for (var e, i, n = 0; null != (i = t[n]); n++)
|
||||
(e = x._data(i, "events")) && e.remove && x(i).triggerHandler("remove");
|
||||
f(t)
|
||||
}
|
||||
),
|
||||
x.widget = function(t, i, e) {
|
||||
var n, o, s, r = {}, l = t.split(".")[0], a = l + "-" + (t = t.split(".")[1]);
|
||||
return e || (e = i,
|
||||
i = x.Widget),
|
||||
Array.isArray(e) && (e = x.extend.apply(null, [{}].concat(e))),
|
||||
x.expr.pseudos[a.toLowerCase()] = function(t) {
|
||||
return !!x.data(t, a)
|
||||
}
|
||||
,
|
||||
x[l] = x[l] || {},
|
||||
n = x[l][t],
|
||||
o = x[l][t] = function(t, e) {
|
||||
if (!this || !this._createWidget)
|
||||
return new o(t,e);
|
||||
arguments.length && this._createWidget(t, e)
|
||||
}
|
||||
,
|
||||
x.extend(o, n, {
|
||||
version: e.version,
|
||||
_proto: x.extend({}, e),
|
||||
_childConstructors: []
|
||||
}),
|
||||
(s = new i).options = x.widget.extend({}, s.options),
|
||||
x.each(e, function(e, n) {
|
||||
function o() {
|
||||
return i.prototype[e].apply(this, arguments)
|
||||
}
|
||||
function s(t) {
|
||||
return i.prototype[e].apply(this, t)
|
||||
}
|
||||
r[e] = "function" != typeof n ? n : function() {
|
||||
var t, e = this._super, i = this._superApply;
|
||||
return this._super = o,
|
||||
this._superApply = s,
|
||||
t = n.apply(this, arguments),
|
||||
this._super = e,
|
||||
this._superApply = i,
|
||||
t
|
||||
}
|
||||
}),
|
||||
o.prototype = x.widget.extend(s, {
|
||||
widgetEventPrefix: n && s.widgetEventPrefix || t
|
||||
}, r, {
|
||||
constructor: o,
|
||||
namespace: l,
|
||||
widgetName: t,
|
||||
widgetFullName: a
|
||||
}),
|
||||
n ? (x.each(n._childConstructors, function(t, e) {
|
||||
var i = e.prototype;
|
||||
x.widget(i.namespace + "." + i.widgetName, o, e._proto)
|
||||
}),
|
||||
delete n._childConstructors) : i._childConstructors.push(o),
|
||||
x.widget.bridge(t, o),
|
||||
o
|
||||
}
|
||||
,
|
||||
x.widget.extend = function(t) {
|
||||
for (var e, i, n = p.call(arguments, 1), o = 0, s = n.length; o < s; o++)
|
||||
for (e in n[o])
|
||||
i = n[o][e],
|
||||
d.call(n[o], e) && void 0 !== i && (x.isPlainObject(i) ? t[e] = x.isPlainObject(t[e]) ? x.widget.extend({}, t[e], i) : x.widget.extend({}, i) : t[e] = i);
|
||||
return t
|
||||
}
|
||||
,
|
||||
x.widget.bridge = function(s, e) {
|
||||
var r = e.prototype.widgetFullName || s;
|
||||
x.fn[s] = function(i) {
|
||||
var t = "string" == typeof i
|
||||
, n = p.call(arguments, 1)
|
||||
, o = this;
|
||||
return t ? this.length || "instance" !== i ? this.each(function() {
|
||||
var t, e = x.data(this, r);
|
||||
return "instance" === i ? (o = e,
|
||||
!1) : e ? "function" != typeof e[i] || "_" === i.charAt(0) ? x.error("no such method '" + i + "' for " + s + " widget instance") : (t = e[i].apply(e, n)) !== e && void 0 !== t ? (o = t && t.jquery ? o.pushStack(t.get()) : t,
|
||||
!1) : void 0 : x.error("cannot call methods on " + s + " prior to initialization; attempted to call method '" + i + "'")
|
||||
}) : o = void 0 : (n.length && (i = x.widget.extend.apply(null, [i].concat(n))),
|
||||
this.each(function() {
|
||||
var t = x.data(this, r);
|
||||
t ? (t.option(i || {}),
|
||||
t._init && t._init()) : x.data(this, r, new e(i,this))
|
||||
})),
|
||||
o
|
||||
}
|
||||
}
|
||||
,
|
||||
x.Widget = function() {}
|
||||
,
|
||||
x.Widget._childConstructors = [],
|
||||
x.Widget.prototype = {
|
||||
widgetName: "widget",
|
||||
widgetEventPrefix: "",
|
||||
defaultElement: "<div>",
|
||||
options: {
|
||||
classes: {},
|
||||
disabled: !1,
|
||||
create: null
|
||||
},
|
||||
_createWidget: function(t, e) {
|
||||
e = x(e || this.defaultElement || this)[0],
|
||||
this.element = x(e),
|
||||
this.uuid = c++,
|
||||
this.eventNamespace = "." + this.widgetName + this.uuid,
|
||||
this.bindings = x(),
|
||||
this.hoverable = x(),
|
||||
this.focusable = x(),
|
||||
this.classesElementLookup = {},
|
||||
e !== this && (x.data(e, this.widgetFullName, this),
|
||||
this._on(!0, this.element, {
|
||||
remove: function(t) {
|
||||
t.target === e && this.destroy()
|
||||
}
|
||||
}),
|
||||
this.document = x(e.style ? e.ownerDocument : e.document || e),
|
||||
this.window = x(this.document[0].defaultView || this.document[0].parentWindow)),
|
||||
this.options = x.widget.extend({}, this.options, this._getCreateOptions(), t),
|
||||
this._create(),
|
||||
this.options.disabled && this._setOptionDisabled(this.options.disabled),
|
||||
this._trigger("create", null, this._getCreateEventData()),
|
||||
this._init()
|
||||
},
|
||||
_getCreateOptions: function() {
|
||||
return {}
|
||||
},
|
||||
_getCreateEventData: x.noop,
|
||||
_create: x.noop,
|
||||
_init: x.noop,
|
||||
destroy: function() {
|
||||
var i = this;
|
||||
this._destroy(),
|
||||
x.each(this.classesElementLookup, function(t, e) {
|
||||
i._removeClass(e, t)
|
||||
}),
|
||||
this.element.off(this.eventNamespace).removeData(this.widgetFullName),
|
||||
this.widget().off(this.eventNamespace).removeAttr("aria-disabled"),
|
||||
this.bindings.off(this.eventNamespace)
|
||||
},
|
||||
_destroy: x.noop,
|
||||
widget: function() {
|
||||
return this.element
|
||||
},
|
||||
option: function(t, e) {
|
||||
var i, n, o, s = t;
|
||||
if (0 === arguments.length)
|
||||
return x.widget.extend({}, this.options);
|
||||
if ("string" == typeof t)
|
||||
if (s = {},
|
||||
t = (i = t.split(".")).shift(),
|
||||
i.length) {
|
||||
for (n = s[t] = x.widget.extend({}, this.options[t]),
|
||||
o = 0; o < i.length - 1; o++)
|
||||
n[i[o]] = n[i[o]] || {},
|
||||
n = n[i[o]];
|
||||
if (t = i.pop(),
|
||||
1 === arguments.length)
|
||||
return void 0 === n[t] ? null : n[t];
|
||||
n[t] = e
|
||||
} else {
|
||||
if (1 === arguments.length)
|
||||
return void 0 === this.options[t] ? null : this.options[t];
|
||||
s[t] = e
|
||||
}
|
||||
return this._setOptions(s),
|
||||
this
|
||||
},
|
||||
_setOptions: function(t) {
|
||||
for (var e in t)
|
||||
this._setOption(e, t[e]);
|
||||
return this
|
||||
},
|
||||
_setOption: function(t, e) {
|
||||
return "classes" === t && this._setOptionClasses(e),
|
||||
this.options[t] = e,
|
||||
"disabled" === t && this._setOptionDisabled(e),
|
||||
this
|
||||
},
|
||||
_setOptionClasses: function(t) {
|
||||
var e, i, n;
|
||||
for (e in t)
|
||||
n = this.classesElementLookup[e],
|
||||
t[e] !== this.options.classes[e] && n && n.length && (i = x(n.get()),
|
||||
this._removeClass(n, e),
|
||||
i.addClass(this._classes({
|
||||
element: i,
|
||||
keys: e,
|
||||
classes: t,
|
||||
add: !0
|
||||
})))
|
||||
},
|
||||
_setOptionDisabled: function(t) {
|
||||
this._toggleClass(this.widget(), this.widgetFullName + "-disabled", null, !!t),
|
||||
t && (this._removeClass(this.hoverable, null, "ui-state-hover"),
|
||||
this._removeClass(this.focusable, null, "ui-state-focus"))
|
||||
},
|
||||
enable: function() {
|
||||
return this._setOptions({
|
||||
disabled: !1
|
||||
})
|
||||
},
|
||||
disable: function() {
|
||||
return this._setOptions({
|
||||
disabled: !0
|
||||
})
|
||||
},
|
||||
_classes: function(o) {
|
||||
var s = []
|
||||
, r = this;
|
||||
function t(t, e) {
|
||||
for (var i, n = 0; n < t.length; n++)
|
||||
i = r.classesElementLookup[t[n]] || x(),
|
||||
i = o.add ? (function() {
|
||||
var i = [];
|
||||
o.element.each(function(t, e) {
|
||||
x.map(r.classesElementLookup, function(t) {
|
||||
return t
|
||||
}).some(function(t) {
|
||||
return t.is(e)
|
||||
}) || i.push(e)
|
||||
}),
|
||||
r._on(x(i), {
|
||||
remove: "_untrackClassesElement"
|
||||
})
|
||||
}(),
|
||||
x(x.uniqueSort(i.get().concat(o.element.get())))) : x(i.not(o.element).get()),
|
||||
r.classesElementLookup[t[n]] = i,
|
||||
s.push(t[n]),
|
||||
e && o.classes[t[n]] && s.push(o.classes[t[n]])
|
||||
}
|
||||
return (o = x.extend({
|
||||
element: this.element,
|
||||
classes: this.options.classes || {}
|
||||
}, o)).keys && t(o.keys.match(/\S+/g) || [], !0),
|
||||
o.extra && t(o.extra.match(/\S+/g) || []),
|
||||
s.join(" ")
|
||||
},
|
||||
_untrackClassesElement: function(i) {
|
||||
var n = this;
|
||||
x.each(n.classesElementLookup, function(t, e) {
|
||||
-1 !== x.inArray(i.target, e) && (n.classesElementLookup[t] = x(e.not(i.target).get()))
|
||||
}),
|
||||
this._off(x(i.target))
|
||||
},
|
||||
_removeClass: function(t, e, i) {
|
||||
return this._toggleClass(t, e, i, !1)
|
||||
},
|
||||
_addClass: function(t, e, i) {
|
||||
return this._toggleClass(t, e, i, !0)
|
||||
},
|
||||
_toggleClass: function(t, e, i, n) {
|
||||
var o = "string" == typeof t || null === t
|
||||
, e = {
|
||||
extra: o ? e : i,
|
||||
keys: o ? t : e,
|
||||
element: o ? this.element : t,
|
||||
add: n = "boolean" == typeof n ? n : i
|
||||
};
|
||||
return e.element.toggleClass(this._classes(e), n),
|
||||
this
|
||||
},
|
||||
_on: function(o, s, t) {
|
||||
var r, l = this;
|
||||
"boolean" != typeof o && (t = s,
|
||||
s = o,
|
||||
o = !1),
|
||||
t ? (s = r = x(s),
|
||||
this.bindings = this.bindings.add(s)) : (t = s,
|
||||
s = this.element,
|
||||
r = this.widget()),
|
||||
x.each(t, function(t, e) {
|
||||
function i() {
|
||||
if (o || !0 !== l.options.disabled && !x(this).hasClass("ui-state-disabled"))
|
||||
return ("string" == typeof e ? l[e] : e).apply(l, arguments)
|
||||
}
|
||||
"string" != typeof e && (i.guid = e.guid = e.guid || i.guid || x.guid++);
|
||||
var t = t.match(/^([\w:-]*)\s*(.*)$/)
|
||||
, n = t[1] + l.eventNamespace
|
||||
, t = t[2];
|
||||
t ? r.on(n, t, i) : s.on(n, i)
|
||||
})
|
||||
},
|
||||
_off: function(t, e) {
|
||||
e = (e || "").split(" ").join(this.eventNamespace + " ") + this.eventNamespace,
|
||||
t.off(e),
|
||||
this.bindings = x(this.bindings.not(t).get()),
|
||||
this.focusable = x(this.focusable.not(t).get()),
|
||||
this.hoverable = x(this.hoverable.not(t).get())
|
||||
},
|
||||
_delay: function(t, e) {
|
||||
var i = this;
|
||||
return setTimeout(function() {
|
||||
return ("string" == typeof t ? i[t] : t).apply(i, arguments)
|
||||
}, e || 0)
|
||||
},
|
||||
_hoverable: function(t) {
|
||||
this.hoverable = this.hoverable.add(t),
|
||||
this._on(t, {
|
||||
mouseenter: function(t) {
|
||||
this._addClass(x(t.currentTarget), null, "ui-state-hover")
|
||||
},
|
||||
mouseleave: function(t) {
|
||||
this._removeClass(x(t.currentTarget), null, "ui-state-hover")
|
||||
}
|
||||
})
|
||||
},
|
||||
_focusable: function(t) {
|
||||
this.focusable = this.focusable.add(t),
|
||||
this._on(t, {
|
||||
focusin: function(t) {
|
||||
this._addClass(x(t.currentTarget), null, "ui-state-focus")
|
||||
},
|
||||
focusout: function(t) {
|
||||
this._removeClass(x(t.currentTarget), null, "ui-state-focus")
|
||||
}
|
||||
})
|
||||
},
|
||||
_trigger: function(t, e, i) {
|
||||
var n, o, s = this.options[t];
|
||||
if (i = i || {},
|
||||
(e = x.Event(e)).type = (t === this.widgetEventPrefix ? t : this.widgetEventPrefix + t).toLowerCase(),
|
||||
e.target = this.element[0],
|
||||
o = e.originalEvent)
|
||||
for (n in o)
|
||||
n in e || (e[n] = o[n]);
|
||||
return this.element.trigger(e, i),
|
||||
!("function" == typeof s && !1 === s.apply(this.element[0], [e].concat(i)) || e.isDefaultPrevented())
|
||||
}
|
||||
},
|
||||
x.each({
|
||||
show: "fadeIn",
|
||||
hide: "fadeOut"
|
||||
}, function(s, r) {
|
||||
x.Widget.prototype["_" + s] = function(e, t, i) {
|
||||
var n, o = (t = "string" == typeof t ? {
|
||||
effect: t
|
||||
} : t) ? !0 !== t && "number" != typeof t && t.effect || r : s;
|
||||
"number" == typeof (t = t || {}) ? t = {
|
||||
duration: t
|
||||
} : !0 === t && (t = {}),
|
||||
n = !x.isEmptyObject(t),
|
||||
t.complete = i,
|
||||
t.delay && e.delay(t.delay),
|
||||
n && x.effects && x.effects.effect[o] ? e[s](t) : o !== s && e[o] ? e[o](t.duration, t.easing, i) : e.queue(function(t) {
|
||||
x(this)[s](),
|
||||
i && i.call(e[0]),
|
||||
t()
|
||||
})
|
||||
}
|
||||
})
|
||||
});
|
||||
0
assets/js/dialog.min.js
vendored
0
assets/js/dialog.min.js
vendored
@@ -1,246 +0,0 @@
|
||||
'use strict';
|
||||
function animate_heading($scope) {
|
||||
console.log('LOGICO HEADING ANIMATION V2 - RUNNING');
|
||||
if ($scope.data('settings') && $scope.data('settings')._animation && $scope.data('settings')._animation == 'logico_heading_animation') {
|
||||
const $title = $scope.find('.logico-title');
|
||||
if ($title.hasClass('animated-ready')) return;
|
||||
|
||||
$title.addClass('animated-ready');
|
||||
|
||||
const text = $title.text().trim();
|
||||
if (!text) return;
|
||||
|
||||
$title.empty();
|
||||
|
||||
let count = 0;
|
||||
const words = text.split(/\s+/);
|
||||
words.forEach(function(word) {
|
||||
const $word = jQuery('<span class="word"></span>');
|
||||
for (let i = 0; i < word.length; i++) {
|
||||
const $letter = jQuery('<span class="letter"></span>').text(word[i]);
|
||||
$letter.css('animation-delay', (count / 50) + 's');
|
||||
$word.append($letter);
|
||||
count++;
|
||||
}
|
||||
$title.append($word).append(' ');
|
||||
});
|
||||
$scope.removeClass('elementor-invisible');
|
||||
}
|
||||
}
|
||||
function sticky_element_activate(obj) {
|
||||
if (obj.hasClass('sticky-container-on')) {
|
||||
// Initialize once
|
||||
if (!obj.data('sticky-initialized')) {
|
||||
const el_offset = obj.offset().top;
|
||||
const el_height = Math.round(obj.outerHeight());
|
||||
obj.data('initial-offset', el_offset);
|
||||
obj.data('initial-height', el_height);
|
||||
obj.data('sticky-initialized', true);
|
||||
|
||||
if ((obj.css('position') === 'static' || obj.css('position') === 'relative') && obj.prev('.sticky-container-placeholder').length <= 0) {
|
||||
obj.before('<div class="sticky-container-placeholder"></div>');
|
||||
}
|
||||
|
||||
jQuery(window).on('scroll.sticky_container', function() {
|
||||
const st = Math.round(jQuery(window).scrollTop());
|
||||
const current_offset = obj.data('initial-offset');
|
||||
const current_height = obj.data('initial-height');
|
||||
const el_ready = current_offset + current_height + 200; // Trigger after passing the element
|
||||
const el_start = current_offset + current_height + 800; // Trigger after hero
|
||||
|
||||
if (st <= el_ready) {
|
||||
obj.removeClass('sticky-container-ready');
|
||||
obj.prev('.sticky-container-placeholder').removeAttr('style');
|
||||
} else {
|
||||
obj.addClass('sticky-container-ready');
|
||||
obj.prev('.sticky-container-placeholder').height(current_height);
|
||||
}
|
||||
|
||||
if (st <= el_start) {
|
||||
obj.removeClass('sticky-container-active');
|
||||
} else {
|
||||
obj.addClass('sticky-container-active');
|
||||
}
|
||||
});
|
||||
}
|
||||
}
|
||||
}
|
||||
jQuery(window).on('elementor/frontend/init', function() {
|
||||
elementorFrontend.hooks.addAction('frontend/element_ready/logico_blog_listing.default', function() {
|
||||
if (jQuery('body').hasClass('elementor-editor-active')) {
|
||||
setTimeout(elements_slider_init, 300);
|
||||
setTimeout(fix_responsive_iframe, 600);
|
||||
if (jQuery(window.wp.mediaelement).length > 0) {
|
||||
jQuery(window.wp.mediaelement.initialize)
|
||||
}
|
||||
}
|
||||
});
|
||||
elementorFrontend.hooks.addAction('frontend/element_ready/logico_portfolio_listing.default', function() {
|
||||
if (jQuery('body').hasClass('elementor-editor-active')) {
|
||||
setTimeout(elements_slider_init, 500);
|
||||
setTimeout(isotope_init, 2500)
|
||||
}
|
||||
});
|
||||
elementorFrontend.hooks.addAction('frontend/element_ready/logico_testimonial_carousel.default', function() {
|
||||
if (jQuery('body').hasClass('elementor-editor-active')) {
|
||||
setTimeout(elements_slider_init, 500)
|
||||
}
|
||||
});
|
||||
elementorFrontend.hooks.addAction('frontend/element_ready/logico_awards.default', function() {
|
||||
if (jQuery('body').hasClass('elementor-editor-active')) {
|
||||
setTimeout(elements_slider_init, 500)
|
||||
}
|
||||
});
|
||||
elementorFrontend.hooks.addAction('frontend/element_ready/logico_timeline.default', function() {
|
||||
if (jQuery('body').hasClass('elementor-editor-active')) {
|
||||
setTimeout(elements_slider_init, 500)
|
||||
}
|
||||
});
|
||||
elementorFrontend.hooks.addAction('frontend/element_ready/logico_steps.default', function() {
|
||||
if (jQuery('body').hasClass('elementor-editor-active')) {
|
||||
setTimeout(elements_slider_init, 500)
|
||||
}
|
||||
});
|
||||
elementorFrontend.hooks.addAction('frontend/element_ready/logico_content_slider.default', function() {
|
||||
if (jQuery('body').hasClass('elementor-editor-active')) {
|
||||
setTimeout(elements_slider_init, 500)
|
||||
}
|
||||
});
|
||||
elementorFrontend.hooks.addAction('frontend/element_ready/logico_image_carousel.default', function() {
|
||||
if (jQuery('body').hasClass('elementor-editor-active')) {
|
||||
setTimeout(elements_slider_init, 500)
|
||||
}
|
||||
});
|
||||
elementorFrontend.hooks.addAction('frontend/element_ready/logico_decorative_block.default', function() {
|
||||
if (jQuery('body').hasClass('elementor-editor-active')) {
|
||||
decorative_block_animate()
|
||||
}
|
||||
});
|
||||
elementorFrontend.hooks.addAction('frontend/element_ready/logico_wpforms.default', function($scope) {
|
||||
if (jQuery('body').hasClass('elementor-editor-active')) {
|
||||
wrap_multycolumns_wpform_fields($scope);
|
||||
jQuery('.logico-form-field input, .logico-form-field textarea, .logico-form-field select, .woocommerce-input-wrapper .input-text').each(function() {
|
||||
check_custom_field(jQuery(this))
|
||||
})
|
||||
}
|
||||
});
|
||||
elementorFrontend.hooks.addAction('frontend/element_ready/section', function($scope) {
|
||||
if (jQuery('body').hasClass('elementor-editor-active')) {
|
||||
background_image_parallax(jQuery('[data-parallax="scroll"]'), 0.7)
|
||||
}
|
||||
sticky_element_activate($scope);
|
||||
jQuery(window).on('resize', function() {
|
||||
sticky_element_activate($scope)
|
||||
})
|
||||
});
|
||||
elementorFrontend.hooks.addAction('frontend/element_ready/container', function($scope) {
|
||||
if (jQuery('body').hasClass('elementor-editor-active')) {
|
||||
background_image_parallax(jQuery('[data-parallax="scroll"]'), 0.7)
|
||||
}
|
||||
sticky_element_activate($scope);
|
||||
jQuery(window).on('resize', function() {
|
||||
sticky_element_activate($scope)
|
||||
})
|
||||
});
|
||||
elementorFrontend.hooks.addAction('frontend/element_ready/logico_page_title.default', function($scope) {
|
||||
if (jQuery('body').hasClass('elementor-editor-active')) {
|
||||
if ($scope.innerWidth() > 1020) {
|
||||
jQuery('.page-title-decoration.animation-enable', $scope).addClass('animated')
|
||||
}
|
||||
}
|
||||
});
|
||||
elementorFrontend.hooks.addAction('frontend/element_ready/logico_search.default', function($scope) {
|
||||
jQuery('.site-search', $scope).detach().prependTo('body');
|
||||
if (jQuery('body').hasClass('elementor-editor-active')) {
|
||||
search_panel_open();
|
||||
overlay_close_all()
|
||||
}
|
||||
});
|
||||
elementorFrontend.hooks.addAction('frontend/element_ready/logico_slide_sidebar.default', function($scope) {
|
||||
jQuery('.slide-sidebar-wrapper', $scope).detach().prependTo('body');
|
||||
if (jQuery('body').hasClass('elementor-editor-active')) {
|
||||
side_panel_open();
|
||||
overlay_close_all()
|
||||
}
|
||||
});
|
||||
elementorFrontend.hooks.addAction('frontend/element_ready/logico_tracking.default', function($scope) {
|
||||
if (jQuery('body').hasClass('elementor-editor-active')) {
|
||||
tracking_popup_open()
|
||||
}
|
||||
});
|
||||
elementorFrontend.hooks.addAction('frontend/element_ready/logico_heading.default', function($scope) {
|
||||
animate_heading($scope)
|
||||
});
|
||||
elementorFrontend.hooks.addAction('frontend/element_ready/logico_navigation_menu.default', function($scope) {
|
||||
jQuery('.mobile-header-menu-container', $scope).detach().prependTo('body');
|
||||
if (jQuery('body').hasClass('elementor-editor-active')) {
|
||||
mobile_menu_open();
|
||||
overlay_close_all()
|
||||
}
|
||||
});
|
||||
elementorFrontend.hooks.addAction('frontend/element_ready/image.default', function($scope) {
|
||||
if (jQuery(window).width() >= 1021) {
|
||||
const $wrapper = $scope;
|
||||
const cursor = jQuery('.hovered-text', $scope);
|
||||
function showCustomCursor(event) {
|
||||
if (jQuery('body').hasClass('rtl')) {
|
||||
cursor.css('left', event.clientX - 20).css('top', event.clientY)
|
||||
} else {
|
||||
cursor.css('left', event.clientX + 20).css('top', event.clientY)
|
||||
}
|
||||
}
|
||||
if (cursor.length > 0) {
|
||||
$wrapper.mousemove(showCustomCursor);
|
||||
$wrapper.mouseleave(function(e) {
|
||||
if (!jQuery('body').hasClass('elementor-editor-active')) {
|
||||
cursor.removeClass('active')
|
||||
}
|
||||
});
|
||||
$wrapper.mouseenter(function(e) {
|
||||
if (!jQuery('body').hasClass('elementor-editor-active')) {
|
||||
cursor.addClass('active')
|
||||
}
|
||||
})
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
elementorFrontend.hooks.addAction('frontend/element_ready/accordion.default', function($scope) {
|
||||
if (!jQuery('body').hasClass('elementor-editor-active')) {
|
||||
$scope.find('.elementor-tab-title').each(function() {
|
||||
var $title = jQuery(this);
|
||||
var $item = $title.closest('.elementor-accordion-item');
|
||||
var $content = $item.find('.elementor-tab-content');
|
||||
var $accordion = $scope.find('.elementor-accordion');
|
||||
|
||||
// Remove native click and apply custom logic
|
||||
// Timeout ensures we run after elementor natively binds its own events
|
||||
setTimeout(function() {
|
||||
$title.off('click').on('click', function(e) {
|
||||
e.preventDefault();
|
||||
e.stopImmediatePropagation();
|
||||
|
||||
if ($title.hasClass('elementor-active')) {
|
||||
return; // Do not collapse if already open
|
||||
}
|
||||
|
||||
// Close others
|
||||
$accordion.find('.elementor-tab-title').removeClass('elementor-active active');
|
||||
$accordion.find('.elementor-accordion-item').removeClass('active');
|
||||
$accordion.find('.elementor-tab-content').slideUp(400).removeClass('elementor-active active');
|
||||
|
||||
// Open this one
|
||||
$title.addClass('elementor-active active');
|
||||
$item.addClass('active');
|
||||
$content.hide().addClass('elementor-active active').slideDown(400);
|
||||
});
|
||||
}, 100);
|
||||
|
||||
// Keep everything collapsed on init (as requested in earlier session)
|
||||
$title.removeClass('elementor-active active');
|
||||
$item.removeClass('active');
|
||||
$content.hide().removeClass('elementor-active active');
|
||||
});
|
||||
}
|
||||
});
|
||||
});
|
||||
3320
assets/js/frontend-modules.min.js
vendored
3320
assets/js/frontend-modules.min.js
vendored
File diff suppressed because it is too large
Load Diff
1649
assets/js/frontend.min.js
vendored
1649
assets/js/frontend.min.js
vendored
File diff suppressed because it is too large
Load Diff
255
assets/js/imagesloaded.min.js
vendored
255
assets/js/imagesloaded.min.js
vendored
@@ -1,255 +0,0 @@
|
||||
/*! This file is auto-generated */
|
||||
/*!
|
||||
* imagesLoaded PACKAGED v5.0.0
|
||||
* JavaScript is all like "You images are done yet or what?"
|
||||
* MIT License
|
||||
*/
|
||||
!function(t, e) {
|
||||
"object" == typeof module && module.exports ? module.exports = e() : t.EvEmitter = e()
|
||||
}("undefined" != typeof window ? window : this, (function() {
|
||||
function t() {}
|
||||
let e = t.prototype;
|
||||
return e.on = function(t, e) {
|
||||
if (!t || !e)
|
||||
return this;
|
||||
let i = this._events = this._events || {}
|
||||
, s = i[t] = i[t] || [];
|
||||
return s.includes(e) || s.push(e),
|
||||
this
|
||||
}
|
||||
,
|
||||
e.once = function(t, e) {
|
||||
if (!t || !e)
|
||||
return this;
|
||||
this.on(t, e);
|
||||
let i = this._onceEvents = this._onceEvents || {};
|
||||
return (i[t] = i[t] || {})[e] = !0,
|
||||
this
|
||||
}
|
||||
,
|
||||
e.off = function(t, e) {
|
||||
let i = this._events && this._events[t];
|
||||
if (!i || !i.length)
|
||||
return this;
|
||||
let s = i.indexOf(e);
|
||||
return -1 != s && i.splice(s, 1),
|
||||
this
|
||||
}
|
||||
,
|
||||
e.emitEvent = function(t, e) {
|
||||
let i = this._events && this._events[t];
|
||||
if (!i || !i.length)
|
||||
return this;
|
||||
i = i.slice(0),
|
||||
e = e || [];
|
||||
let s = this._onceEvents && this._onceEvents[t];
|
||||
for (let n of i) {
|
||||
s && s[n] && (this.off(t, n),
|
||||
delete s[n]),
|
||||
n.apply(this, e)
|
||||
}
|
||||
return this
|
||||
}
|
||||
,
|
||||
e.allOff = function() {
|
||||
return delete this._events,
|
||||
delete this._onceEvents,
|
||||
this
|
||||
}
|
||||
,
|
||||
t
|
||||
}
|
||||
)),
|
||||
/*!
|
||||
* imagesLoaded v5.0.0
|
||||
* JavaScript is all like "You images are done yet or what?"
|
||||
* MIT License
|
||||
*/
|
||||
function(t, e) {
|
||||
"object" == typeof module && module.exports ? module.exports = e(t, require("ev-emitter")) : t.imagesLoaded = e(t, t.EvEmitter)
|
||||
}("undefined" != typeof window ? window : this, (function(t, e) {
|
||||
let i = t.jQuery
|
||||
, s = t.console;
|
||||
function n(t, e, o) {
|
||||
if (!(this instanceof n))
|
||||
return new n(t,e,o);
|
||||
let r = t;
|
||||
var h;
|
||||
("string" == typeof t && (r = document.querySelectorAll(t)),
|
||||
r) ? (this.elements = (h = r,
|
||||
Array.isArray(h) ? h : "object" == typeof h && "number" == typeof h.length ? [...h] : [h]),
|
||||
this.options = {},
|
||||
"function" == typeof e ? o = e : Object.assign(this.options, e),
|
||||
o && this.on("always", o),
|
||||
this.getImages(),
|
||||
i && (this.jqDeferred = new i.Deferred),
|
||||
setTimeout(this.check.bind(this))) : s.error(`Bad element for imagesLoaded ${r || t}`)
|
||||
}
|
||||
n.prototype = Object.create(e.prototype),
|
||||
n.prototype.getImages = function() {
|
||||
this.images = [],
|
||||
this.elements.forEach(this.addElementImages, this)
|
||||
}
|
||||
;
|
||||
const o = [1, 9, 11];
|
||||
n.prototype.addElementImages = function(t) {
|
||||
"IMG" === t.nodeName && this.addImage(t),
|
||||
!0 === this.options.background && this.addElementBackgroundImages(t);
|
||||
let {nodeType: e} = t;
|
||||
if (!e || !o.includes(e))
|
||||
return;
|
||||
let i = t.querySelectorAll("img");
|
||||
for (let t of i)
|
||||
this.addImage(t);
|
||||
if ("string" == typeof this.options.background) {
|
||||
let e = t.querySelectorAll(this.options.background);
|
||||
for (let t of e)
|
||||
this.addElementBackgroundImages(t)
|
||||
}
|
||||
}
|
||||
;
|
||||
const r = /url\((['"])?(.*?)\1\)/gi;
|
||||
function h(t) {
|
||||
this.img = t
|
||||
}
|
||||
function d(t, e) {
|
||||
this.url = t,
|
||||
this.element = e,
|
||||
this.img = new Image
|
||||
}
|
||||
return n.prototype.addElementBackgroundImages = function(t) {
|
||||
let e = getComputedStyle(t);
|
||||
if (!e)
|
||||
return;
|
||||
let i = r.exec(e.backgroundImage);
|
||||
for (; null !== i; ) {
|
||||
let s = i && i[2];
|
||||
s && this.addBackground(s, t),
|
||||
i = r.exec(e.backgroundImage)
|
||||
}
|
||||
}
|
||||
,
|
||||
n.prototype.addImage = function(t) {
|
||||
let e = new h(t);
|
||||
this.images.push(e)
|
||||
}
|
||||
,
|
||||
n.prototype.addBackground = function(t, e) {
|
||||
let i = new d(t,e);
|
||||
this.images.push(i)
|
||||
}
|
||||
,
|
||||
n.prototype.check = function() {
|
||||
if (this.progressedCount = 0,
|
||||
this.hasAnyBroken = !1,
|
||||
!this.images.length)
|
||||
return void this.complete();
|
||||
let t = (t, e, i) => {
|
||||
setTimeout(( () => {
|
||||
this.progress(t, e, i)
|
||||
}
|
||||
))
|
||||
}
|
||||
;
|
||||
this.images.forEach((function(e) {
|
||||
e.once("progress", t),
|
||||
e.check()
|
||||
}
|
||||
))
|
||||
}
|
||||
,
|
||||
n.prototype.progress = function(t, e, i) {
|
||||
this.progressedCount++,
|
||||
this.hasAnyBroken = this.hasAnyBroken || !t.isLoaded,
|
||||
this.emitEvent("progress", [this, t, e]),
|
||||
this.jqDeferred && this.jqDeferred.notify && this.jqDeferred.notify(this, t),
|
||||
this.progressedCount === this.images.length && this.complete(),
|
||||
this.options.debug && s && s.log(`progress: ${i}`, t, e)
|
||||
}
|
||||
,
|
||||
n.prototype.complete = function() {
|
||||
let t = this.hasAnyBroken ? "fail" : "done";
|
||||
if (this.isComplete = !0,
|
||||
this.emitEvent(t, [this]),
|
||||
this.emitEvent("always", [this]),
|
||||
this.jqDeferred) {
|
||||
let t = this.hasAnyBroken ? "reject" : "resolve";
|
||||
this.jqDeferred[t](this)
|
||||
}
|
||||
}
|
||||
,
|
||||
h.prototype = Object.create(e.prototype),
|
||||
h.prototype.check = function() {
|
||||
this.getIsImageComplete() ? this.confirm(0 !== this.img.naturalWidth, "naturalWidth") : (this.proxyImage = new Image,
|
||||
this.img.crossOrigin && (this.proxyImage.crossOrigin = this.img.crossOrigin),
|
||||
this.proxyImage.addEventListener("load", this),
|
||||
this.proxyImage.addEventListener("error", this),
|
||||
this.img.addEventListener("load", this),
|
||||
this.img.addEventListener("error", this),
|
||||
this.proxyImage.src = this.img.currentSrc || this.img.src)
|
||||
}
|
||||
,
|
||||
h.prototype.getIsImageComplete = function() {
|
||||
return this.img.complete && this.img.naturalWidth
|
||||
}
|
||||
,
|
||||
h.prototype.confirm = function(t, e) {
|
||||
this.isLoaded = t;
|
||||
let {parentNode: i} = this.img
|
||||
, s = "PICTURE" === i.nodeName ? i : this.img;
|
||||
this.emitEvent("progress", [this, s, e])
|
||||
}
|
||||
,
|
||||
h.prototype.handleEvent = function(t) {
|
||||
let e = "on" + t.type;
|
||||
this[e] && this[e](t)
|
||||
}
|
||||
,
|
||||
h.prototype.onload = function() {
|
||||
this.confirm(!0, "onload"),
|
||||
this.unbindEvents()
|
||||
}
|
||||
,
|
||||
h.prototype.onerror = function() {
|
||||
this.confirm(!1, "onerror"),
|
||||
this.unbindEvents()
|
||||
}
|
||||
,
|
||||
h.prototype.unbindEvents = function() {
|
||||
this.proxyImage.removeEventListener("load", this),
|
||||
this.proxyImage.removeEventListener("error", this),
|
||||
this.img.removeEventListener("load", this),
|
||||
this.img.removeEventListener("error", this)
|
||||
}
|
||||
,
|
||||
d.prototype = Object.create(h.prototype),
|
||||
d.prototype.check = function() {
|
||||
this.img.addEventListener("load", this),
|
||||
this.img.addEventListener("error", this),
|
||||
this.img.src = this.url,
|
||||
this.getIsImageComplete() && (this.confirm(0 !== this.img.naturalWidth, "naturalWidth"),
|
||||
this.unbindEvents())
|
||||
}
|
||||
,
|
||||
d.prototype.unbindEvents = function() {
|
||||
this.img.removeEventListener("load", this),
|
||||
this.img.removeEventListener("error", this)
|
||||
}
|
||||
,
|
||||
d.prototype.confirm = function(t, e) {
|
||||
this.isLoaded = t,
|
||||
this.emitEvent("progress", [this, this.element, e])
|
||||
}
|
||||
,
|
||||
n.makeJQueryPlugin = function(e) {
|
||||
(e = e || t.jQuery) && (i = e,
|
||||
i.fn.imagesLoaded = function(t, e) {
|
||||
return new n(this,t,e).jqDeferred.promise(i(this))
|
||||
}
|
||||
)
|
||||
}
|
||||
,
|
||||
n.makeJQueryPlugin(),
|
||||
n
|
||||
}
|
||||
));
|
||||
1820
assets/js/isotope.pkgd.min.js
vendored
1820
assets/js/isotope.pkgd.min.js
vendored
File diff suppressed because it is too large
Load Diff
420
assets/js/jquery-migrate.min.js
vendored
420
assets/js/jquery-migrate.min.js
vendored
@@ -1,420 +0,0 @@
|
||||
/*! jQuery Migrate v3.4.1 | (c) OpenJS Foundation and other contributors | jquery.org/license */
|
||||
"undefined" == typeof jQuery.migrateMute && (jQuery.migrateMute = !0),
|
||||
function(t) {
|
||||
"use strict";
|
||||
"function" == typeof define && define.amd ? define(["jquery"], function(e) {
|
||||
return t(e, window)
|
||||
}) : "object" == typeof module && module.exports ? module.exports = t(require("jquery"), window) : t(jQuery, window)
|
||||
}(function(s, n) {
|
||||
"use strict";
|
||||
function e(e) {
|
||||
return 0 <= function(e, t) {
|
||||
for (var r = /^(\d+)\.(\d+)\.(\d+)/, n = r.exec(e) || [], o = r.exec(t) || [], a = 1; a <= 3; a++) {
|
||||
if (+o[a] < +n[a])
|
||||
return 1;
|
||||
if (+n[a] < +o[a])
|
||||
return -1
|
||||
}
|
||||
return 0
|
||||
}(s.fn.jquery, e)
|
||||
}
|
||||
s.migrateVersion = "3.4.1";
|
||||
var t = Object.create(null);
|
||||
s.migrateDisablePatches = function() {
|
||||
for (var e = 0; e < arguments.length; e++)
|
||||
t[arguments[e]] = !0
|
||||
}
|
||||
,
|
||||
s.migrateEnablePatches = function() {
|
||||
for (var e = 0; e < arguments.length; e++)
|
||||
delete t[arguments[e]]
|
||||
}
|
||||
,
|
||||
s.migrateIsPatchEnabled = function(e) {
|
||||
return !t[e]
|
||||
}
|
||||
,
|
||||
n.console && n.console.log && (s && e("3.0.0") && !e("5.0.0") || n.console.log("JQMIGRATE: jQuery 3.x-4.x REQUIRED"),
|
||||
s.migrateWarnings && n.console.log("JQMIGRATE: Migrate plugin loaded multiple times"),
|
||||
n.console.log("JQMIGRATE: Migrate is installed" + (s.migrateMute ? "" : " with logging active") + ", version " + s.migrateVersion));
|
||||
var o = {};
|
||||
function u(e, t) {
|
||||
var r = n.console;
|
||||
!s.migrateIsPatchEnabled(e) || s.migrateDeduplicateWarnings && o[t] || (o[t] = !0,
|
||||
s.migrateWarnings.push(t + " [" + e + "]"),
|
||||
r && r.warn && !s.migrateMute && (r.warn("JQMIGRATE: " + t),
|
||||
s.migrateTrace && r.trace && r.trace()))
|
||||
}
|
||||
function r(e, t, r, n, o) {
|
||||
Object.defineProperty(e, t, {
|
||||
configurable: !0,
|
||||
enumerable: !0,
|
||||
get: function() {
|
||||
return u(n, o),
|
||||
r
|
||||
},
|
||||
set: function(e) {
|
||||
u(n, o),
|
||||
r = e
|
||||
}
|
||||
})
|
||||
}
|
||||
function a(e, t, r, n, o) {
|
||||
var a = e[t];
|
||||
e[t] = function() {
|
||||
return o && u(n, o),
|
||||
(s.migrateIsPatchEnabled(n) ? r : a || s.noop).apply(this, arguments)
|
||||
}
|
||||
}
|
||||
function c(e, t, r, n, o) {
|
||||
if (!o)
|
||||
throw new Error("No warning message provided");
|
||||
return a(e, t, r, n, o),
|
||||
0
|
||||
}
|
||||
function i(e, t, r, n) {
|
||||
return a(e, t, r, n),
|
||||
0
|
||||
}
|
||||
s.migrateDeduplicateWarnings = !0,
|
||||
s.migrateWarnings = [],
|
||||
void 0 === s.migrateTrace && (s.migrateTrace = !0),
|
||||
s.migrateReset = function() {
|
||||
o = {},
|
||||
s.migrateWarnings.length = 0
|
||||
}
|
||||
,
|
||||
"BackCompat" === n.document.compatMode && u("quirks", "jQuery is not compatible with Quirks Mode");
|
||||
var d, l, p, f = {}, m = s.fn.init, y = s.find, h = /\[(\s*[-\w]+\s*)([~|^$*]?=)\s*([-\w#]*?#[-\w#]*)\s*\]/, g = /\[(\s*[-\w]+\s*)([~|^$*]?=)\s*([-\w#]*?#[-\w#]*)\s*\]/g, v = /^[\s\uFEFF\xA0]+|([^\s\uFEFF\xA0])[\s\uFEFF\xA0]+$/g;
|
||||
for (d in i(s.fn, "init", function(e) {
|
||||
var t = Array.prototype.slice.call(arguments);
|
||||
return s.migrateIsPatchEnabled("selector-empty-id") && "string" == typeof e && "#" === e && (u("selector-empty-id", "jQuery( '#' ) is not a valid selector"),
|
||||
t[0] = []),
|
||||
m.apply(this, t)
|
||||
}, "selector-empty-id"),
|
||||
s.fn.init.prototype = s.fn,
|
||||
i(s, "find", function(t) {
|
||||
var r = Array.prototype.slice.call(arguments);
|
||||
if ("string" == typeof t && h.test(t))
|
||||
try {
|
||||
n.document.querySelector(t)
|
||||
} catch (e) {
|
||||
t = t.replace(g, function(e, t, r, n) {
|
||||
return "[" + t + r + '"' + n + '"]'
|
||||
});
|
||||
try {
|
||||
n.document.querySelector(t),
|
||||
u("selector-hash", "Attribute selector with '#' must be quoted: " + r[0]),
|
||||
r[0] = t
|
||||
} catch (e) {
|
||||
u("selector-hash", "Attribute selector with '#' was not fixed: " + r[0])
|
||||
}
|
||||
}
|
||||
return y.apply(this, r)
|
||||
}, "selector-hash"),
|
||||
y)
|
||||
Object.prototype.hasOwnProperty.call(y, d) && (s.find[d] = y[d]);
|
||||
c(s.fn, "size", function() {
|
||||
return this.length
|
||||
}, "size", "jQuery.fn.size() is deprecated and removed; use the .length property"),
|
||||
c(s, "parseJSON", function() {
|
||||
return JSON.parse.apply(null, arguments)
|
||||
}, "parseJSON", "jQuery.parseJSON is deprecated; use JSON.parse"),
|
||||
c(s, "holdReady", s.holdReady, "holdReady", "jQuery.holdReady is deprecated"),
|
||||
c(s, "unique", s.uniqueSort, "unique", "jQuery.unique is deprecated; use jQuery.uniqueSort"),
|
||||
r(s.expr, "filters", s.expr.pseudos, "expr-pre-pseudos", "jQuery.expr.filters is deprecated; use jQuery.expr.pseudos"),
|
||||
r(s.expr, ":", s.expr.pseudos, "expr-pre-pseudos", "jQuery.expr[':'] is deprecated; use jQuery.expr.pseudos"),
|
||||
e("3.1.1") && c(s, "trim", function(e) {
|
||||
return null == e ? "" : (e + "").replace(v, "$1")
|
||||
}, "trim", "jQuery.trim is deprecated; use String.prototype.trim"),
|
||||
e("3.2.0") && (c(s, "nodeName", function(e, t) {
|
||||
return e.nodeName && e.nodeName.toLowerCase() === t.toLowerCase()
|
||||
}, "nodeName", "jQuery.nodeName is deprecated"),
|
||||
c(s, "isArray", Array.isArray, "isArray", "jQuery.isArray is deprecated; use Array.isArray")),
|
||||
e("3.3.0") && (c(s, "isNumeric", function(e) {
|
||||
var t = typeof e;
|
||||
return ("number" == t || "string" == t) && !isNaN(e - parseFloat(e))
|
||||
}, "isNumeric", "jQuery.isNumeric() is deprecated"),
|
||||
s.each("Boolean Number String Function Array Date RegExp Object Error Symbol".split(" "), function(e, t) {
|
||||
f["[object " + t + "]"] = t.toLowerCase()
|
||||
}),
|
||||
c(s, "type", function(e) {
|
||||
return null == e ? e + "" : "object" == typeof e || "function" == typeof e ? f[Object.prototype.toString.call(e)] || "object" : typeof e
|
||||
}, "type", "jQuery.type is deprecated"),
|
||||
c(s, "isFunction", function(e) {
|
||||
return "function" == typeof e
|
||||
}, "isFunction", "jQuery.isFunction() is deprecated"),
|
||||
c(s, "isWindow", function(e) {
|
||||
return null != e && e === e.window
|
||||
}, "isWindow", "jQuery.isWindow() is deprecated")),
|
||||
s.ajax && (l = s.ajax,
|
||||
p = /(=)\?(?=&|$)|\?\?/,
|
||||
i(s, "ajax", function() {
|
||||
var e = l.apply(this, arguments);
|
||||
return e.promise && (c(e, "success", e.done, "jqXHR-methods", "jQXHR.success is deprecated and removed"),
|
||||
c(e, "error", e.fail, "jqXHR-methods", "jQXHR.error is deprecated and removed"),
|
||||
c(e, "complete", e.always, "jqXHR-methods", "jQXHR.complete is deprecated and removed")),
|
||||
e
|
||||
}, "jqXHR-methods"),
|
||||
e("4.0.0") || s.ajaxPrefilter("+json", function(e) {
|
||||
!1 !== e.jsonp && (p.test(e.url) || "string" == typeof e.data && 0 === (e.contentType || "").indexOf("application/x-www-form-urlencoded") && p.test(e.data)) && u("jsonp-promotion", "JSON-to-JSONP auto-promotion is deprecated")
|
||||
}));
|
||||
var j = s.fn.removeAttr
|
||||
, b = s.fn.toggleClass
|
||||
, w = /\S+/g;
|
||||
function x(e) {
|
||||
return e.replace(/-([a-z])/g, function(e, t) {
|
||||
return t.toUpperCase()
|
||||
})
|
||||
}
|
||||
i(s.fn, "removeAttr", function(e) {
|
||||
var r = this
|
||||
, n = !1;
|
||||
return s.each(e.match(w), function(e, t) {
|
||||
s.expr.match.bool.test(t) && r.each(function() {
|
||||
if (!1 !== s(this).prop(t))
|
||||
return !(n = !0)
|
||||
}),
|
||||
n && (u("removeAttr-bool", "jQuery.fn.removeAttr no longer sets boolean properties: " + t),
|
||||
r.prop(t, !1))
|
||||
}),
|
||||
j.apply(this, arguments)
|
||||
}, "removeAttr-bool"),
|
||||
i(s.fn, "toggleClass", function(t) {
|
||||
return void 0 !== t && "boolean" != typeof t ? b.apply(this, arguments) : (u("toggleClass-bool", "jQuery.fn.toggleClass( boolean ) is deprecated"),
|
||||
this.each(function() {
|
||||
var e = this.getAttribute && this.getAttribute("class") || "";
|
||||
e && s.data(this, "__className__", e),
|
||||
this.setAttribute && this.setAttribute("class", !e && !1 !== t && s.data(this, "__className__") || "")
|
||||
}))
|
||||
}, "toggleClass-bool");
|
||||
var Q, A, R = !1, C = /^[a-z]/, N = /^(?:Border(?:Top|Right|Bottom|Left)?(?:Width|)|(?:Margin|Padding)?(?:Top|Right|Bottom|Left)?|(?:Min|Max)?(?:Width|Height))$/;
|
||||
s.swap && s.each(["height", "width", "reliableMarginRight"], function(e, t) {
|
||||
var r = s.cssHooks[t] && s.cssHooks[t].get;
|
||||
r && (s.cssHooks[t].get = function() {
|
||||
var e;
|
||||
return R = !0,
|
||||
e = r.apply(this, arguments),
|
||||
R = !1,
|
||||
e
|
||||
}
|
||||
)
|
||||
}),
|
||||
i(s, "swap", function(e, t, r, n) {
|
||||
var o, a, i = {};
|
||||
for (a in R || u("swap", "jQuery.swap() is undocumented and deprecated"),
|
||||
t)
|
||||
i[a] = e.style[a],
|
||||
e.style[a] = t[a];
|
||||
for (a in o = r.apply(e, n || []),
|
||||
t)
|
||||
e.style[a] = i[a];
|
||||
return o
|
||||
}, "swap"),
|
||||
e("3.4.0") && "undefined" != typeof Proxy && (s.cssProps = new Proxy(s.cssProps || {},{
|
||||
set: function() {
|
||||
return u("cssProps", "jQuery.cssProps is deprecated"),
|
||||
Reflect.set.apply(this, arguments)
|
||||
}
|
||||
})),
|
||||
e("4.0.0") ? (A = {
|
||||
animationIterationCount: !0,
|
||||
columnCount: !0,
|
||||
fillOpacity: !0,
|
||||
flexGrow: !0,
|
||||
flexShrink: !0,
|
||||
fontWeight: !0,
|
||||
gridArea: !0,
|
||||
gridColumn: !0,
|
||||
gridColumnEnd: !0,
|
||||
gridColumnStart: !0,
|
||||
gridRow: !0,
|
||||
gridRowEnd: !0,
|
||||
gridRowStart: !0,
|
||||
lineHeight: !0,
|
||||
opacity: !0,
|
||||
order: !0,
|
||||
orphans: !0,
|
||||
widows: !0,
|
||||
zIndex: !0,
|
||||
zoom: !0
|
||||
},
|
||||
"undefined" != typeof Proxy ? s.cssNumber = new Proxy(A,{
|
||||
get: function() {
|
||||
return u("css-number", "jQuery.cssNumber is deprecated"),
|
||||
Reflect.get.apply(this, arguments)
|
||||
},
|
||||
set: function() {
|
||||
return u("css-number", "jQuery.cssNumber is deprecated"),
|
||||
Reflect.set.apply(this, arguments)
|
||||
}
|
||||
}) : s.cssNumber = A) : A = s.cssNumber,
|
||||
Q = s.fn.css,
|
||||
i(s.fn, "css", function(e, t) {
|
||||
var r, n, o = this;
|
||||
return e && "object" == typeof e && !Array.isArray(e) ? (s.each(e, function(e, t) {
|
||||
s.fn.css.call(o, e, t)
|
||||
}),
|
||||
this) : ("number" == typeof t && (r = x(e),
|
||||
n = r,
|
||||
C.test(n) && N.test(n[0].toUpperCase() + n.slice(1)) || A[r] || u("css-number", 'Number-typed values are deprecated for jQuery.fn.css( "' + e + '", value )')),
|
||||
Q.apply(this, arguments))
|
||||
}, "css-number");
|
||||
var S, P, k, H, E = s.data;
|
||||
i(s, "data", function(e, t, r) {
|
||||
var n, o, a;
|
||||
if (t && "object" == typeof t && 2 === arguments.length) {
|
||||
for (a in n = s.hasData(e) && E.call(this, e),
|
||||
o = {},
|
||||
t)
|
||||
a !== x(a) ? (u("data-camelCase", "jQuery.data() always sets/gets camelCased names: " + a),
|
||||
n[a] = t[a]) : o[a] = t[a];
|
||||
return E.call(this, e, o),
|
||||
t
|
||||
}
|
||||
return t && "string" == typeof t && t !== x(t) && (n = s.hasData(e) && E.call(this, e)) && t in n ? (u("data-camelCase", "jQuery.data() always sets/gets camelCased names: " + t),
|
||||
2 < arguments.length && (n[t] = r),
|
||||
n[t]) : E.apply(this, arguments)
|
||||
}, "data-camelCase"),
|
||||
s.fx && (k = s.Tween.prototype.run,
|
||||
H = function(e) {
|
||||
return e
|
||||
}
|
||||
,
|
||||
i(s.Tween.prototype, "run", function() {
|
||||
1 < s.easing[this.easing].length && (u("easing-one-arg", "'jQuery.easing." + this.easing.toString() + "' should use only one argument"),
|
||||
s.easing[this.easing] = H),
|
||||
k.apply(this, arguments)
|
||||
}, "easing-one-arg"),
|
||||
S = s.fx.interval,
|
||||
P = "jQuery.fx.interval is deprecated",
|
||||
n.requestAnimationFrame && Object.defineProperty(s.fx, "interval", {
|
||||
configurable: !0,
|
||||
enumerable: !0,
|
||||
get: function() {
|
||||
return n.document.hidden || u("fx-interval", P),
|
||||
s.migrateIsPatchEnabled("fx-interval") && void 0 === S ? 13 : S
|
||||
},
|
||||
set: function(e) {
|
||||
u("fx-interval", P),
|
||||
S = e
|
||||
}
|
||||
}));
|
||||
var M = s.fn.load
|
||||
, q = s.event.add
|
||||
, O = s.event.fix;
|
||||
s.event.props = [],
|
||||
s.event.fixHooks = {},
|
||||
r(s.event.props, "concat", s.event.props.concat, "event-old-patch", "jQuery.event.props.concat() is deprecated and removed"),
|
||||
i(s.event, "fix", function(e) {
|
||||
var t, r = e.type, n = this.fixHooks[r], o = s.event.props;
|
||||
if (o.length) {
|
||||
u("event-old-patch", "jQuery.event.props are deprecated and removed: " + o.join());
|
||||
while (o.length)
|
||||
s.event.addProp(o.pop())
|
||||
}
|
||||
if (n && !n._migrated_ && (n._migrated_ = !0,
|
||||
u("event-old-patch", "jQuery.event.fixHooks are deprecated and removed: " + r),
|
||||
(o = n.props) && o.length))
|
||||
while (o.length)
|
||||
s.event.addProp(o.pop());
|
||||
return t = O.call(this, e),
|
||||
n && n.filter ? n.filter(t, e) : t
|
||||
}, "event-old-patch"),
|
||||
i(s.event, "add", function(e, t) {
|
||||
return e === n && "load" === t && "complete" === n.document.readyState && u("load-after-event", "jQuery(window).on('load'...) called after load event occurred"),
|
||||
q.apply(this, arguments)
|
||||
}, "load-after-event"),
|
||||
s.each(["load", "unload", "error"], function(e, t) {
|
||||
i(s.fn, t, function() {
|
||||
var e = Array.prototype.slice.call(arguments, 0);
|
||||
return "load" === t && "string" == typeof e[0] ? M.apply(this, e) : (u("shorthand-removed-v3", "jQuery.fn." + t + "() is deprecated"),
|
||||
e.splice(0, 0, t),
|
||||
arguments.length ? this.on.apply(this, e) : (this.triggerHandler.apply(this, e),
|
||||
this))
|
||||
}, "shorthand-removed-v3")
|
||||
}),
|
||||
s.each("blur focus focusin focusout resize scroll click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select submit keydown keypress keyup contextmenu".split(" "), function(e, r) {
|
||||
c(s.fn, r, function(e, t) {
|
||||
return 0 < arguments.length ? this.on(r, null, e, t) : this.trigger(r)
|
||||
}, "shorthand-deprecated-v3", "jQuery.fn." + r + "() event shorthand is deprecated")
|
||||
}),
|
||||
s(function() {
|
||||
s(n.document).triggerHandler("ready")
|
||||
}),
|
||||
s.event.special.ready = {
|
||||
setup: function() {
|
||||
this === n.document && u("ready-event", "'ready' event is deprecated")
|
||||
}
|
||||
},
|
||||
c(s.fn, "bind", function(e, t, r) {
|
||||
return this.on(e, null, t, r)
|
||||
}, "pre-on-methods", "jQuery.fn.bind() is deprecated"),
|
||||
c(s.fn, "unbind", function(e, t) {
|
||||
return this.off(e, null, t)
|
||||
}, "pre-on-methods", "jQuery.fn.unbind() is deprecated"),
|
||||
c(s.fn, "delegate", function(e, t, r, n) {
|
||||
return this.on(t, e, r, n)
|
||||
}, "pre-on-methods", "jQuery.fn.delegate() is deprecated"),
|
||||
c(s.fn, "undelegate", function(e, t, r) {
|
||||
return 1 === arguments.length ? this.off(e, "**") : this.off(t, e || "**", r)
|
||||
}, "pre-on-methods", "jQuery.fn.undelegate() is deprecated"),
|
||||
c(s.fn, "hover", function(e, t) {
|
||||
return this.on("mouseenter", e).on("mouseleave", t || e)
|
||||
}, "pre-on-methods", "jQuery.fn.hover() is deprecated");
|
||||
function T(e) {
|
||||
var t = n.document.implementation.createHTMLDocument("");
|
||||
return t.body.innerHTML = e,
|
||||
t.body && t.body.innerHTML
|
||||
}
|
||||
var F = /<(?!area|br|col|embed|hr|img|input|link|meta|param)(([a-z][^\/\0>\x20\t\r\n\f]*)[^>]*)\/>/gi;
|
||||
s.UNSAFE_restoreLegacyHtmlPrefilter = function() {
|
||||
s.migrateEnablePatches("self-closed-tags")
|
||||
}
|
||||
,
|
||||
i(s, "htmlPrefilter", function(e) {
|
||||
var t, r;
|
||||
return (r = (t = e).replace(F, "<$1></$2>")) !== t && T(t) !== T(r) && u("self-closed-tags", "HTML tags must be properly nested and closed: " + t),
|
||||
e.replace(F, "<$1></$2>")
|
||||
}, "self-closed-tags"),
|
||||
s.migrateDisablePatches("self-closed-tags");
|
||||
var D, W, _, I = s.fn.offset;
|
||||
return i(s.fn, "offset", function() {
|
||||
var e = this[0];
|
||||
return !e || e.nodeType && e.getBoundingClientRect ? I.apply(this, arguments) : (u("offset-valid-elem", "jQuery.fn.offset() requires a valid DOM element"),
|
||||
arguments.length ? this : void 0)
|
||||
}, "offset-valid-elem"),
|
||||
s.ajax && (D = s.param,
|
||||
i(s, "param", function(e, t) {
|
||||
var r = s.ajaxSettings && s.ajaxSettings.traditional;
|
||||
return void 0 === t && r && (u("param-ajax-traditional", "jQuery.param() no longer uses jQuery.ajaxSettings.traditional"),
|
||||
t = r),
|
||||
D.call(this, e, t)
|
||||
}, "param-ajax-traditional")),
|
||||
c(s.fn, "andSelf", s.fn.addBack, "andSelf", "jQuery.fn.andSelf() is deprecated and removed, use jQuery.fn.addBack()"),
|
||||
s.Deferred && (W = s.Deferred,
|
||||
_ = [["resolve", "done", s.Callbacks("once memory"), s.Callbacks("once memory"), "resolved"], ["reject", "fail", s.Callbacks("once memory"), s.Callbacks("once memory"), "rejected"], ["notify", "progress", s.Callbacks("memory"), s.Callbacks("memory")]],
|
||||
i(s, "Deferred", function(e) {
|
||||
var a = W()
|
||||
, i = a.promise();
|
||||
function t() {
|
||||
var o = arguments;
|
||||
return s.Deferred(function(n) {
|
||||
s.each(_, function(e, t) {
|
||||
var r = "function" == typeof o[e] && o[e];
|
||||
a[t[1]](function() {
|
||||
var e = r && r.apply(this, arguments);
|
||||
e && "function" == typeof e.promise ? e.promise().done(n.resolve).fail(n.reject).progress(n.notify) : n[t[0] + "With"](this === i ? n.promise() : this, r ? [e] : arguments)
|
||||
})
|
||||
}),
|
||||
o = null
|
||||
}).promise()
|
||||
}
|
||||
return c(a, "pipe", t, "deferred-pipe", "deferred.pipe() is deprecated"),
|
||||
c(i, "pipe", t, "deferred-pipe", "deferred.pipe() is deprecated"),
|
||||
e && e.call(a, a),
|
||||
a
|
||||
}, "deferred-pipe"),
|
||||
s.Deferred.exceptionHook = W.exceptionHook),
|
||||
s
|
||||
});
|
||||
334
assets/js/jquery.blockUI.min.js
vendored
334
assets/js/jquery.blockUI.min.js
vendored
@@ -1,334 +0,0 @@
|
||||
/*!
|
||||
* jQuery blockUI plugin
|
||||
* Version 2.70.0-2014.11.23
|
||||
* Requires jQuery v1.7 or later
|
||||
*
|
||||
* Examples at: http://malsup.com/jquery/block/
|
||||
* Copyright (c) 2007-2013 M. Alsup
|
||||
* Dual licensed under the MIT and GPL licenses:
|
||||
* http://www.opensource.org/licenses/mit-license.php
|
||||
* http://www.gnu.org/licenses/gpl.html
|
||||
*
|
||||
* Thanks to Amir-Hossein Sobhi for some excellent contributions!
|
||||
*/
|
||||
!function() {
|
||||
"use strict";
|
||||
function e(e) {
|
||||
e.fn._fadeIn = e.fn.fadeIn;
|
||||
var t = e.noop || function() {}
|
||||
, o = /MSIE/.test(navigator.userAgent)
|
||||
, n = /MSIE 6.0/.test(navigator.userAgent) && !/MSIE 8.0/.test(navigator.userAgent)
|
||||
, i = (document.documentMode,
|
||||
"function" == typeof document.createElement("div").style.setExpression && document.createElement("div").style.setExpression);
|
||||
e.blockUI = function(e) {
|
||||
d(window, e)
|
||||
}
|
||||
,
|
||||
e.unblockUI = function(e) {
|
||||
a(window, e)
|
||||
}
|
||||
,
|
||||
e.growlUI = function(t, o, n, i) {
|
||||
var s = e('<div class="growlUI"></div>');
|
||||
t && s.append("<h1>" + t + "</h1>"),
|
||||
o && s.append("<h2>" + o + "</h2>"),
|
||||
n === undefined && (n = 3e3);
|
||||
var l = function(t) {
|
||||
t = t || {},
|
||||
e.blockUI({
|
||||
message: s,
|
||||
fadeIn: "undefined" != typeof t.fadeIn ? t.fadeIn : 700,
|
||||
fadeOut: "undefined" != typeof t.fadeOut ? t.fadeOut : 1e3,
|
||||
timeout: "undefined" != typeof t.timeout ? t.timeout : n,
|
||||
centerY: !1,
|
||||
showOverlay: !1,
|
||||
onUnblock: i,
|
||||
css: e.blockUI.defaults.growlCSS
|
||||
})
|
||||
};
|
||||
l();
|
||||
s.css("opacity");
|
||||
s.on("mouseover", function() {
|
||||
l({
|
||||
fadeIn: 0,
|
||||
timeout: 3e4
|
||||
});
|
||||
var t = e(".blockMsg");
|
||||
t.stop(),
|
||||
t.fadeTo(300, 1)
|
||||
}).on("mouseout", function() {
|
||||
e(".blockMsg").fadeOut(1e3)
|
||||
})
|
||||
}
|
||||
,
|
||||
e.fn.block = function(t) {
|
||||
if (this[0] === window)
|
||||
return e.blockUI(t),
|
||||
this;
|
||||
var o = e.extend({}, e.blockUI.defaults, t || {});
|
||||
return this.each(function() {
|
||||
var t = e(this);
|
||||
o.ignoreIfBlocked && t.data("blockUI.isBlocked") || t.unblock({
|
||||
fadeOut: 0
|
||||
})
|
||||
}),
|
||||
this.each(function() {
|
||||
"static" == e.css(this, "position") && (this.style.position = "relative",
|
||||
e(this).data("blockUI.static", !0)),
|
||||
this.style.zoom = 1,
|
||||
d(this, t)
|
||||
})
|
||||
}
|
||||
,
|
||||
e.fn.unblock = function(t) {
|
||||
return this[0] === window ? (e.unblockUI(t),
|
||||
this) : this.each(function() {
|
||||
a(this, t)
|
||||
})
|
||||
}
|
||||
,
|
||||
e.blockUI.version = 2.7,
|
||||
e.blockUI.defaults = {
|
||||
message: "<h1>Please wait...</h1>",
|
||||
title: null,
|
||||
draggable: !0,
|
||||
theme: !1,
|
||||
css: {
|
||||
padding: 0,
|
||||
margin: 0,
|
||||
width: "30%",
|
||||
top: "40%",
|
||||
left: "35%",
|
||||
textAlign: "center",
|
||||
color: "#000",
|
||||
border: "3px solid #aaa",
|
||||
backgroundColor: "#fff",
|
||||
cursor: "wait"
|
||||
},
|
||||
themedCSS: {
|
||||
width: "30%",
|
||||
top: "40%",
|
||||
left: "35%"
|
||||
},
|
||||
overlayCSS: {
|
||||
backgroundColor: "#000",
|
||||
opacity: .6,
|
||||
cursor: "wait"
|
||||
},
|
||||
cursorReset: "default",
|
||||
growlCSS: {
|
||||
width: "350px",
|
||||
top: "10px",
|
||||
left: "",
|
||||
right: "10px",
|
||||
border: "none",
|
||||
padding: "5px",
|
||||
opacity: .6,
|
||||
cursor: "default",
|
||||
color: "#fff",
|
||||
backgroundColor: "#000",
|
||||
"-webkit-border-radius": "10px",
|
||||
"-moz-border-radius": "10px",
|
||||
"border-radius": "10px"
|
||||
},
|
||||
iframeSrc: /^https/i.test(window.location.href || "") ? "javascript:false" : "about:blank",
|
||||
forceIframe: !1,
|
||||
baseZ: 1e3,
|
||||
centerX: !0,
|
||||
centerY: !0,
|
||||
allowBodyStretch: !0,
|
||||
bindEvents: !0,
|
||||
constrainTabKey: !0,
|
||||
fadeIn: 200,
|
||||
fadeOut: 400,
|
||||
timeout: 0,
|
||||
showOverlay: !0,
|
||||
focusInput: !0,
|
||||
focusableElements: ":input:enabled:visible",
|
||||
onBlock: null,
|
||||
onUnblock: null,
|
||||
onOverlayClick: null,
|
||||
quirksmodeOffsetHack: 4,
|
||||
blockMsgClass: "blockMsg",
|
||||
ignoreIfBlocked: !1
|
||||
};
|
||||
var s = null
|
||||
, l = [];
|
||||
function d(d, c) {
|
||||
var u, b, h = d == window, k = c && c.message !== undefined ? c.message : undefined;
|
||||
if (!(c = e.extend({}, e.blockUI.defaults, c || {})).ignoreIfBlocked || !e(d).data("blockUI.isBlocked")) {
|
||||
if (c.overlayCSS = e.extend({}, e.blockUI.defaults.overlayCSS, c.overlayCSS || {}),
|
||||
u = e.extend({}, e.blockUI.defaults.css, c.css || {}),
|
||||
c.onOverlayClick && (c.overlayCSS.cursor = "pointer"),
|
||||
b = e.extend({}, e.blockUI.defaults.themedCSS, c.themedCSS || {}),
|
||||
k = k === undefined ? c.message : k,
|
||||
h && s && a(window, {
|
||||
fadeOut: 0
|
||||
}),
|
||||
k && "string" != typeof k && (k.parentNode || k.jquery)) {
|
||||
var y = k.jquery ? k[0] : k
|
||||
, m = {};
|
||||
e(d).data("blockUI.history", m),
|
||||
m.el = y,
|
||||
m.parent = y.parentNode,
|
||||
m.display = y.style.display,
|
||||
m.position = y.style.position,
|
||||
m.parent && m.parent.removeChild(y)
|
||||
}
|
||||
e(d).data("blockUI.onUnblock", c.onUnblock);
|
||||
var g, v, I, w, U = c.baseZ;
|
||||
g = o || c.forceIframe ? e('<iframe class="blockUI" style="z-index:' + U++ + ';display:none;border:none;margin:0;padding:0;position:absolute;width:100%;height:100%;top:0;left:0" src="' + c.iframeSrc + '"></iframe>') : e('<div class="blockUI" style="display:none"></div>'),
|
||||
v = c.theme ? e('<div class="blockUI blockOverlay ui-widget-overlay" style="z-index:' + U++ + ';display:none"></div>') : e('<div class="blockUI blockOverlay" style="z-index:' + U++ + ';display:none;border:none;margin:0;padding:0;width:100%;height:100%;top:0;left:0"></div>'),
|
||||
c.theme && h ? (w = '<div class="blockUI ' + c.blockMsgClass + ' blockPage ui-dialog ui-widget ui-corner-all" style="z-index:' + (U + 10) + ';display:none;position:fixed">',
|
||||
c.title && (w += '<div class="ui-widget-header ui-dialog-titlebar ui-corner-all blockTitle">' + (c.title || " ") + "</div>"),
|
||||
w += '<div class="ui-widget-content ui-dialog-content"></div>',
|
||||
w += "</div>") : c.theme ? (w = '<div class="blockUI ' + c.blockMsgClass + ' blockElement ui-dialog ui-widget ui-corner-all" style="z-index:' + (U + 10) + ';display:none;position:absolute">',
|
||||
c.title && (w += '<div class="ui-widget-header ui-dialog-titlebar ui-corner-all blockTitle">' + (c.title || " ") + "</div>"),
|
||||
w += '<div class="ui-widget-content ui-dialog-content"></div>',
|
||||
w += "</div>") : w = h ? '<div class="blockUI ' + c.blockMsgClass + ' blockPage" style="z-index:' + (U + 10) + ';display:none;position:fixed"></div>' : '<div class="blockUI ' + c.blockMsgClass + ' blockElement" style="z-index:' + (U + 10) + ';display:none;position:absolute"></div>',
|
||||
I = e(w),
|
||||
k && (c.theme ? (I.css(b),
|
||||
I.addClass("ui-widget-content")) : I.css(u)),
|
||||
c.theme || v.css(c.overlayCSS),
|
||||
v.css("position", h ? "fixed" : "absolute"),
|
||||
(o || c.forceIframe) && g.css("opacity", 0);
|
||||
var x = [g, v, I]
|
||||
, C = e(h ? "body" : d);
|
||||
e.each(x, function() {
|
||||
this.appendTo(C)
|
||||
}),
|
||||
c.theme && c.draggable && e.fn.draggable && I.draggable({
|
||||
handle: ".ui-dialog-titlebar",
|
||||
cancel: "li"
|
||||
});
|
||||
var S = i && (!e.support.boxModel || e("object,embed", h ? null : d).length > 0);
|
||||
if (n || S) {
|
||||
if (h && c.allowBodyStretch && e.support.boxModel && e("html,body").css("height", "100%"),
|
||||
(n || !e.support.boxModel) && !h)
|
||||
var E = p(d, "borderTopWidth")
|
||||
, O = p(d, "borderLeftWidth")
|
||||
, T = E ? "(0 - " + E + ")" : 0
|
||||
, M = O ? "(0 - " + O + ")" : 0;
|
||||
e.each(x, function(e, t) {
|
||||
var o = t[0].style;
|
||||
if (o.position = "absolute",
|
||||
e < 2)
|
||||
h ? o.setExpression("height", "Math.max(document.body.scrollHeight, document.body.offsetHeight) - (jQuery.support.boxModel?0:" + c.quirksmodeOffsetHack + ') + "px"') : o.setExpression("height", 'this.parentNode.offsetHeight + "px"'),
|
||||
h ? o.setExpression("width", 'jQuery.support.boxModel && document.documentElement.clientWidth || document.body.clientWidth + "px"') : o.setExpression("width", 'this.parentNode.offsetWidth + "px"'),
|
||||
M && o.setExpression("left", M),
|
||||
T && o.setExpression("top", T);
|
||||
else if (c.centerY)
|
||||
h && o.setExpression("top", '(document.documentElement.clientHeight || document.body.clientHeight) / 2 - (this.offsetHeight / 2) + (blah = document.documentElement.scrollTop ? document.documentElement.scrollTop : document.body.scrollTop) + "px"'),
|
||||
o.marginTop = 0;
|
||||
else if (!c.centerY && h) {
|
||||
var n = "((document.documentElement.scrollTop ? document.documentElement.scrollTop : document.body.scrollTop) + " + (c.css && c.css.top ? parseInt(c.css.top, 10) : 0) + ') + "px"';
|
||||
o.setExpression("top", n)
|
||||
}
|
||||
})
|
||||
}
|
||||
if (k && (c.theme ? I.find(".ui-widget-content").append(k) : I.append(k),
|
||||
(k.jquery || k.nodeType) && e(k).show()),
|
||||
(o || c.forceIframe) && c.showOverlay && g.show(),
|
||||
c.fadeIn) {
|
||||
var B = c.onBlock ? c.onBlock : t
|
||||
, j = c.showOverlay && !k ? B : t
|
||||
, H = k ? B : t;
|
||||
c.showOverlay && v._fadeIn(c.fadeIn, j),
|
||||
k && I._fadeIn(c.fadeIn, H)
|
||||
} else
|
||||
c.showOverlay && v.show(),
|
||||
k && I.show(),
|
||||
c.onBlock && c.onBlock.bind(I)();
|
||||
if (r(1, d, c),
|
||||
h ? (s = I[0],
|
||||
l = e(c.focusableElements, s),
|
||||
c.focusInput && setTimeout(f, 20)) : function(e, t, o) {
|
||||
var n = e.parentNode
|
||||
, i = e.style
|
||||
, s = (n.offsetWidth - e.offsetWidth) / 2 - p(n, "borderLeftWidth")
|
||||
, l = (n.offsetHeight - e.offsetHeight) / 2 - p(n, "borderTopWidth");
|
||||
t && (i.left = s > 0 ? s + "px" : "0");
|
||||
o && (i.top = l > 0 ? l + "px" : "0")
|
||||
}(I[0], c.centerX, c.centerY),
|
||||
c.timeout) {
|
||||
var z = setTimeout(function() {
|
||||
h ? e.unblockUI(c) : e(d).unblock(c)
|
||||
}, c.timeout);
|
||||
e(d).data("blockUI.timeout", z)
|
||||
}
|
||||
}
|
||||
}
|
||||
function a(t, o) {
|
||||
var n, i, d = t == window, a = e(t), u = a.data("blockUI.history"), f = a.data("blockUI.timeout");
|
||||
f && (clearTimeout(f),
|
||||
a.removeData("blockUI.timeout")),
|
||||
o = e.extend({}, e.blockUI.defaults, o || {}),
|
||||
r(0, t, o),
|
||||
null === o.onUnblock && (o.onUnblock = a.data("blockUI.onUnblock"),
|
||||
a.removeData("blockUI.onUnblock")),
|
||||
i = d ? e(document.body).children().filter(".blockUI").add("body > .blockUI") : a.find(">.blockUI"),
|
||||
o.cursorReset && (i.length > 1 && (i[1].style.cursor = o.cursorReset),
|
||||
i.length > 2 && (i[2].style.cursor = o.cursorReset)),
|
||||
d && (s = l = null),
|
||||
o.fadeOut ? (n = i.length,
|
||||
i.stop().fadeOut(o.fadeOut, function() {
|
||||
0 == --n && c(i, u, o, t)
|
||||
})) : c(i, u, o, t)
|
||||
}
|
||||
function c(t, o, n, i) {
|
||||
var s = e(i);
|
||||
if (!s.data("blockUI.isBlocked")) {
|
||||
t.each(function(e, t) {
|
||||
this.parentNode && this.parentNode.removeChild(this)
|
||||
}),
|
||||
o && o.el && (o.el.style.display = o.display,
|
||||
o.el.style.position = o.position,
|
||||
o.el.style.cursor = "default",
|
||||
o.parent && o.parent.appendChild(o.el),
|
||||
s.removeData("blockUI.history")),
|
||||
s.data("blockUI.static") && s.css("position", "static"),
|
||||
"function" == typeof n.onUnblock && n.onUnblock(i, n);
|
||||
var l = e(document.body)
|
||||
, d = l.width()
|
||||
, a = l[0].style.width;
|
||||
l.width(d - 1).width(d),
|
||||
l[0].style.width = a
|
||||
}
|
||||
}
|
||||
function r(t, o, n) {
|
||||
var i = o == window
|
||||
, l = e(o);
|
||||
if ((t || (!i || s) && (i || l.data("blockUI.isBlocked"))) && (l.data("blockUI.isBlocked", t),
|
||||
i && n.bindEvents && (!t || n.showOverlay))) {
|
||||
var d = "mousedown mouseup keydown keypress keyup touchstart touchend touchmove";
|
||||
t ? e(document).on(d, n, u) : e(document).off(d, u)
|
||||
}
|
||||
}
|
||||
function u(t) {
|
||||
if ("keydown" === t.type && t.keyCode && 9 == t.keyCode && s && t.data.constrainTabKey) {
|
||||
var o = l
|
||||
, n = !t.shiftKey && t.target === o[o.length - 1]
|
||||
, i = t.shiftKey && t.target === o[0];
|
||||
if (n || i)
|
||||
return setTimeout(function() {
|
||||
f(i)
|
||||
}, 10),
|
||||
!1
|
||||
}
|
||||
var d = t.data
|
||||
, a = e(t.target);
|
||||
return a.hasClass("blockOverlay") && d.onOverlayClick && d.onOverlayClick(t),
|
||||
a.parents("div." + d.blockMsgClass).length > 0 || 0 === a.parents().children().filter("div.blockUI").length
|
||||
}
|
||||
function f(e) {
|
||||
if (l) {
|
||||
var t = l[!0 === e ? l.length - 1 : 0];
|
||||
t && t.trigger("focus")
|
||||
}
|
||||
}
|
||||
function p(t, o) {
|
||||
return parseInt(e.css(t, o), 10) || 0
|
||||
}
|
||||
}
|
||||
"function" == typeof define && define.amd && define.amd.jQuery ? define(["jquery"], e) : e(jQuery)
|
||||
}();
|
||||
57
assets/js/jquery.cookie.min.js
vendored
57
assets/js/jquery.cookie.min.js
vendored
@@ -1,57 +0,0 @@
|
||||
/*!
|
||||
* jQuery Cookie Plugin v1.4.1
|
||||
* https://github.com/carhartl/jquery-cookie
|
||||
*
|
||||
* Copyright 2013 Klaus Hartl
|
||||
* Released under the MIT license
|
||||
*/
|
||||
!function(e) {
|
||||
"function" == typeof define && define.amd ? define(["jquery"], e) : "object" == typeof exports ? e(require("jquery")) : e(jQuery)
|
||||
}(function(e) {
|
||||
var n = /\+/g;
|
||||
function o(e) {
|
||||
return r.raw ? e : encodeURIComponent(e)
|
||||
}
|
||||
function i(e, o) {
|
||||
var i = r.raw ? e : function(e) {
|
||||
0 === e.indexOf('"') && (e = e.slice(1, -1).replace(/\\"/g, '"').replace(/\\\\/g, "\\"));
|
||||
try {
|
||||
return e = decodeURIComponent(e.replace(n, " ")),
|
||||
r.json ? JSON.parse(e) : e
|
||||
} catch (o) {}
|
||||
}(e);
|
||||
return "function" == typeof o ? o(i) : i
|
||||
}
|
||||
var r = e.cookie = function(n, t, u) {
|
||||
if (t !== undefined && "function" != typeof t) {
|
||||
if ("number" == typeof (u = e.extend({}, r.defaults, u)).expires) {
|
||||
var c = u.expires
|
||||
, f = u.expires = new Date;
|
||||
f.setTime(+f + 864e5 * c)
|
||||
}
|
||||
return document.cookie = [o(n), "=", function(e) {
|
||||
return o(r.json ? JSON.stringify(e) : String(e))
|
||||
}(t), u.expires ? "; expires=" + u.expires.toUTCString() : "", u.path ? "; path=" + u.path : "", u.domain ? "; domain=" + u.domain : "", u.secure ? "; secure" : ""].join("")
|
||||
}
|
||||
for (var d, a = n ? undefined : {}, p = document.cookie ? document.cookie.split("; ") : [], s = 0, m = p.length; s < m; s++) {
|
||||
var x = p[s].split("=")
|
||||
, y = (d = x.shift(),
|
||||
r.raw ? d : decodeURIComponent(d))
|
||||
, k = x.join("=");
|
||||
if (n && n === y) {
|
||||
a = i(k, t);
|
||||
break
|
||||
}
|
||||
n || (k = i(k)) === undefined || (a[y] = k)
|
||||
}
|
||||
return a
|
||||
}
|
||||
;
|
||||
r.defaults = {},
|
||||
e.removeCookie = function(n, o) {
|
||||
return e.cookie(n) !== undefined && (e.cookie(n, "", e.extend({}, o, {
|
||||
expires: -1
|
||||
})),
|
||||
!e.cookie(n))
|
||||
}
|
||||
});
|
||||
201
assets/js/jquery.marquee.min.js
vendored
201
assets/js/jquery.marquee.min.js
vendored
@@ -1,201 +0,0 @@
|
||||
/**
|
||||
* jQuery.marquee - scrolling text like old marquee element
|
||||
* @author Aamir Afridi - aamirafridi(at)gmail(dot)com / http://aamirafridi.com/jquery/jquery-marquee-plugin
|
||||
*/
|
||||
(function(f) {
|
||||
f.fn.marquee = function(x) {
|
||||
return this.each(function() {
|
||||
var a = f.extend({}, f.fn.marquee.defaults, x), b = f(this), c, t, e = 3, y = "animation-play-state", p = !1, E = function(a, b, c) {
|
||||
for (var e = ["webkit", "moz", "MS", "o", ""], d = 0; d < e.length; d++)
|
||||
e[d] || (b = b.toLowerCase()),
|
||||
a.addEventListener(e[d] + b, c, !1)
|
||||
}, F = function(a) {
|
||||
var b = [], c;
|
||||
for (c in a)
|
||||
a.hasOwnProperty(c) && b.push(c + ":" + a[c]);
|
||||
b.push();
|
||||
return "{" + b.join(",") + "}"
|
||||
}, l = {
|
||||
pause: function() {
|
||||
p && a.allowCss3Support ? c.css(y, "paused") : f.fn.pause && c.pause();
|
||||
b.data("runningStatus", "paused");
|
||||
b.trigger("paused")
|
||||
},
|
||||
resume: function() {
|
||||
p && a.allowCss3Support ? c.css(y, "running") : f.fn.resume && c.resume();
|
||||
b.data("runningStatus", "resumed");
|
||||
b.trigger("resumed")
|
||||
},
|
||||
toggle: function() {
|
||||
l["resumed" == b.data("runningStatus") ? "pause" : "resume"]()
|
||||
},
|
||||
destroy: function() {
|
||||
clearTimeout(b.timer);
|
||||
b.find("*").addBack().unbind();
|
||||
b.html(b.find(".js-marquee:first").html())
|
||||
}
|
||||
};
|
||||
if ("string" === typeof x)
|
||||
f.isFunction(l[x]) && (c || (c = b.find(".js-marquee-wrapper")),
|
||||
!0 === b.data("css3AnimationIsSupported") && (p = !0),
|
||||
l[x]());
|
||||
else {
|
||||
var u;
|
||||
f.each(a, function(c, d) {
|
||||
u = b.attr("data-" + c);
|
||||
if ("undefined" !== typeof u) {
|
||||
switch (u) {
|
||||
case "true":
|
||||
u = !0;
|
||||
break;
|
||||
case "false":
|
||||
u = !1
|
||||
}
|
||||
a[c] = u
|
||||
}
|
||||
});
|
||||
a.speed && (a.duration = parseInt(b.width(), 10) / a.speed * 1E3);
|
||||
var v = "up" == a.direction || "down" == a.direction;
|
||||
a.gap = a.duplicated ? parseInt(a.gap) : 0;
|
||||
b.wrapInner('<div class="js-marquee"></div>');
|
||||
var h = b.find(".js-marquee").css({
|
||||
"margin-right": a.gap,
|
||||
"float": "left"
|
||||
});
|
||||
a.duplicated && h.clone(!0).appendTo(b);
|
||||
b.wrapInner('<div style="width:100000px" class="js-marquee-wrapper"></div>');
|
||||
c = b.find(".js-marquee-wrapper");
|
||||
if (v) {
|
||||
var k = b.height();
|
||||
c.removeAttr("style");
|
||||
b.height(k);
|
||||
b.find(".js-marquee").css({
|
||||
"float": "none",
|
||||
"margin-bottom": a.gap,
|
||||
"margin-right": 0
|
||||
});
|
||||
a.duplicated && b.find(".js-marquee:last").css({
|
||||
"margin-bottom": 0
|
||||
});
|
||||
var q = b.find(".js-marquee:first").height() + a.gap;
|
||||
a.startVisible && !a.duplicated ? (a._completeDuration = (parseInt(q, 10) + parseInt(k, 10)) / parseInt(k, 10) * a.duration,
|
||||
a.duration *= parseInt(q, 10) / parseInt(k, 10)) : a.duration *= (parseInt(q, 10) + parseInt(k, 10)) / parseInt(k, 10)
|
||||
} else {
|
||||
var m = b.find(".js-marquee:first").width() + a.gap;
|
||||
var n = b.width();
|
||||
a.startVisible && !a.duplicated ? (a._completeDuration = (parseInt(m, 10) + parseInt(n, 10)) / parseInt(n, 10) * a.duration,
|
||||
a.duration *= parseInt(m, 10) / parseInt(n, 10)) : a.duration *= (parseInt(m, 10) + parseInt(n, 10)) / parseInt(n, 10)
|
||||
}
|
||||
a.duplicated && (a.duration /= 2);
|
||||
if (a.allowCss3Support) {
|
||||
h = document.body || document.createElement("div");
|
||||
var g = "marqueeAnimation-" + Math.floor(1E7 * Math.random())
|
||||
, A = ["Webkit", "Moz", "O", "ms", "Khtml"]
|
||||
, B = "animation"
|
||||
, d = ""
|
||||
, r = "";
|
||||
h.style.animation && (r = "@keyframes " + g + " ",
|
||||
p = !0);
|
||||
if (!1 === p)
|
||||
for (var z = 0; z < A.length; z++)
|
||||
if (void 0 !== h.style[A[z] + "AnimationName"]) {
|
||||
h = "-" + A[z].toLowerCase() + "-";
|
||||
B = h + B;
|
||||
y = h + y;
|
||||
r = "@" + h + "keyframes " + g + " ";
|
||||
p = !0;
|
||||
break
|
||||
}
|
||||
p && (d = g + " " + a.duration / 1E3 + "s " + a.delayBeforeStart / 1E3 + "s infinite " + a.css3easing,
|
||||
b.data("css3AnimationIsSupported", !0))
|
||||
}
|
||||
var C = function() {
|
||||
c.css("transform", "translateY(" + ("up" == a.direction ? k + "px" : "-" + q + "px") + ")")
|
||||
}
|
||||
, D = function() {
|
||||
c.css("transform", "translateX(" + ("left" == a.direction ? n + "px" : "-" + m + "px") + ")")
|
||||
};
|
||||
a.duplicated ? (v ? a.startVisible ? c.css("transform", "translateY(0)") : c.css("transform", "translateY(" + ("up" == a.direction ? k + "px" : "-" + (2 * q - a.gap) + "px") + ")") : a.startVisible ? c.css("transform", "translateX(0)") : c.css("transform", "translateX(" + ("left" == a.direction ? n + "px" : "-" + (2 * m - a.gap) + "px") + ")"),
|
||||
a.startVisible || (e = 1)) : a.startVisible ? e = 2 : v ? C() : D();
|
||||
var w = function() {
|
||||
a.duplicated && (1 === e ? (a._originalDuration = a.duration,
|
||||
a.duration = v ? "up" == a.direction ? a.duration + k / (q / a.duration) : 2 * a.duration : "left" == a.direction ? a.duration + n / (m / a.duration) : 2 * a.duration,
|
||||
d && (d = g + " " + a.duration / 1E3 + "s " + a.delayBeforeStart / 1E3 + "s " + a.css3easing),
|
||||
e++) : 2 === e && (a.duration = a._originalDuration,
|
||||
d && (g += "0",
|
||||
r = f.trim(r) + "0 ",
|
||||
d = g + " " + a.duration / 1E3 + "s 0s infinite " + a.css3easing),
|
||||
e++));
|
||||
v ? a.duplicated ? (2 < e && c.css("transform", "translateY(" + ("up" == a.direction ? 0 : "-" + q + "px") + ")"),
|
||||
t = {
|
||||
transform: "translateY(" + ("up" == a.direction ? "-" + q + "px" : 0) + ")"
|
||||
}) : a.startVisible ? 2 === e ? (d && (d = g + " " + a.duration / 1E3 + "s " + a.delayBeforeStart / 1E3 + "s " + a.css3easing),
|
||||
t = {
|
||||
transform: "translateY(" + ("up" == a.direction ? "-" + q + "px" : k + "px") + ")"
|
||||
},
|
||||
e++) : 3 === e && (a.duration = a._completeDuration,
|
||||
d && (g += "0",
|
||||
r = f.trim(r) + "0 ",
|
||||
d = g + " " + a.duration / 1E3 + "s 0s infinite " + a.css3easing),
|
||||
C()) : (C(),
|
||||
t = {
|
||||
transform: "translateY(" + ("up" == a.direction ? "-" + c.height() + "px" : k + "px") + ")"
|
||||
}) : a.duplicated ? (2 < e && c.css("transform", "translateX(" + ("left" == a.direction ? 0 : "-" + m + "px") + ")"),
|
||||
t = {
|
||||
transform: "translateX(" + ("left" == a.direction ? "-" + m + "px" : 0) + ")"
|
||||
}) : a.startVisible ? 2 === e ? (d && (d = g + " " + a.duration / 1E3 + "s " + a.delayBeforeStart / 1E3 + "s " + a.css3easing),
|
||||
t = {
|
||||
transform: "translateX(" + ("left" == a.direction ? "-" + m + "px" : n + "px") + ")"
|
||||
},
|
||||
e++) : 3 === e && (a.duration = a._completeDuration,
|
||||
d && (g += "0",
|
||||
r = f.trim(r) + "0 ",
|
||||
d = g + " " + a.duration / 1E3 + "s 0s infinite " + a.css3easing),
|
||||
D()) : (D(),
|
||||
t = {
|
||||
transform: "translateX(" + ("left" == a.direction ? "-" + m + "px" : n + "px") + ")"
|
||||
});
|
||||
b.trigger("beforeStarting");
|
||||
if (p) {
|
||||
c.css(B, d);
|
||||
var h = r + " { 100% " + F(t) + "}"
|
||||
, l = c.find("style");
|
||||
0 !== l.length ? l.filter(":last").html(h) : f("head").append("<style>" + h + "</style>");
|
||||
E(c[0], "AnimationIteration", function() {
|
||||
b.trigger("finished")
|
||||
});
|
||||
E(c[0], "AnimationEnd", function() {
|
||||
w();
|
||||
b.trigger("finished")
|
||||
})
|
||||
} else
|
||||
c.animate(t, a.duration, a.easing, function() {
|
||||
b.trigger("finished");
|
||||
a.pauseOnCycle ? b.timer = setTimeout(w, a.delayBeforeStart) : w()
|
||||
});
|
||||
b.data("runningStatus", "resumed")
|
||||
};
|
||||
b.bind("pause", l.pause);
|
||||
b.bind("resume", l.resume);
|
||||
a.pauseOnHover && (b.bind("mouseenter", l.pause),
|
||||
b.bind("mouseleave", l.resume));
|
||||
p && a.allowCss3Support ? w() : b.timer = setTimeout(w, a.delayBeforeStart)
|
||||
}
|
||||
})
|
||||
}
|
||||
;
|
||||
f.fn.marquee.defaults = {
|
||||
allowCss3Support: !0,
|
||||
css3easing: "linear",
|
||||
easing: "linear",
|
||||
delayBeforeStart: 1E3,
|
||||
direction: "left",
|
||||
duplicated: !1,
|
||||
duration: 5E3,
|
||||
gap: 20,
|
||||
pauseOnCycle: !1,
|
||||
pauseOnHover: !1,
|
||||
startVisible: !1
|
||||
}
|
||||
}
|
||||
)(jQuery);
|
||||
4147
assets/js/jquery.min.js
vendored
4147
assets/js/jquery.min.js
vendored
File diff suppressed because it is too large
Load Diff
842
assets/js/jquery.validate.min.js
vendored
842
assets/js/jquery.validate.min.js
vendored
@@ -1,842 +0,0 @@
|
||||
/*! jQuery Validation Plugin - v1.21.0 - 7/17/2024
|
||||
* https://jqueryvalidation.org/
|
||||
* Copyright (c) 2024 Jörn Zaefferer; Licensed MIT */
|
||||
!function(a) {
|
||||
"function" == typeof define && define.amd ? define(["jquery"], a) : "object" == typeof module && module.exports ? module.exports = a(require("jquery")) : a(jQuery)
|
||||
}(function(a) {
|
||||
a.extend(a.fn, {
|
||||
validate: function(b) {
|
||||
if (!this.length)
|
||||
return void (b && b.debug && window.console && console.warn("Nothing selected, can't validate, returning nothing."));
|
||||
var c = a.data(this[0], "validator");
|
||||
return c ? c : (this.attr("novalidate", "novalidate"),
|
||||
c = new a.validator(b,this[0]),
|
||||
a.data(this[0], "validator", c),
|
||||
c.settings.onsubmit && (this.on("click.validate", ":submit", function(b) {
|
||||
c.submitButton = b.currentTarget,
|
||||
a(this).hasClass("cancel") && (c.cancelSubmit = !0),
|
||||
void 0 !== a(this).attr("formnovalidate") && (c.cancelSubmit = !0)
|
||||
}),
|
||||
this.on("submit.validate", function(b) {
|
||||
function d() {
|
||||
var d, e;
|
||||
return c.submitButton && (c.settings.submitHandler || c.formSubmitted) && (d = a("<input type='hidden'/>").attr("name", c.submitButton.name).val(a(c.submitButton).val()).appendTo(c.currentForm)),
|
||||
!(c.settings.submitHandler && !c.settings.debug) || (e = c.settings.submitHandler.call(c, c.currentForm, b),
|
||||
d && d.remove(),
|
||||
void 0 !== e && e)
|
||||
}
|
||||
return c.settings.debug && b.preventDefault(),
|
||||
c.cancelSubmit ? (c.cancelSubmit = !1,
|
||||
d()) : c.form() ? c.pendingRequest ? (c.formSubmitted = !0,
|
||||
!1) : d() : (c.focusInvalid(),
|
||||
!1)
|
||||
})),
|
||||
c)
|
||||
},
|
||||
valid: function() {
|
||||
var b, c, d;
|
||||
return a(this[0]).is("form") ? b = this.validate().form() : (d = [],
|
||||
b = !0,
|
||||
c = a(this[0].form).validate(),
|
||||
this.each(function() {
|
||||
b = c.element(this) && b,
|
||||
b || (d = d.concat(c.errorList))
|
||||
}),
|
||||
c.errorList = d),
|
||||
b
|
||||
},
|
||||
rules: function(b, c) {
|
||||
var d, e, f, g, h, i, j = this[0], k = "undefined" != typeof this.attr("contenteditable") && "false" !== this.attr("contenteditable");
|
||||
if (null != j && (!j.form && k && (j.form = this.closest("form")[0],
|
||||
j.name = this.attr("name")),
|
||||
null != j.form)) {
|
||||
if (b)
|
||||
switch (d = a.data(j.form, "validator").settings,
|
||||
e = d.rules,
|
||||
f = a.validator.staticRules(j),
|
||||
b) {
|
||||
case "add":
|
||||
a.extend(f, a.validator.normalizeRule(c)),
|
||||
delete f.messages,
|
||||
e[j.name] = f,
|
||||
c.messages && (d.messages[j.name] = a.extend(d.messages[j.name], c.messages));
|
||||
break;
|
||||
case "remove":
|
||||
return c ? (i = {},
|
||||
a.each(c.split(/\s/), function(a, b) {
|
||||
i[b] = f[b],
|
||||
delete f[b]
|
||||
}),
|
||||
i) : (delete e[j.name],
|
||||
f)
|
||||
}
|
||||
return g = a.validator.normalizeRules(a.extend({}, a.validator.classRules(j), a.validator.attributeRules(j), a.validator.dataRules(j), a.validator.staticRules(j)), j),
|
||||
g.required && (h = g.required,
|
||||
delete g.required,
|
||||
g = a.extend({
|
||||
required: h
|
||||
}, g)),
|
||||
g.remote && (h = g.remote,
|
||||
delete g.remote,
|
||||
g = a.extend(g, {
|
||||
remote: h
|
||||
})),
|
||||
g
|
||||
}
|
||||
}
|
||||
});
|
||||
var b = function(a) {
|
||||
return a.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g, "")
|
||||
};
|
||||
a.extend(a.expr.pseudos || a.expr[":"], {
|
||||
blank: function(c) {
|
||||
return !b("" + a(c).val())
|
||||
},
|
||||
filled: function(c) {
|
||||
var d = a(c).val();
|
||||
return null !== d && !!b("" + d)
|
||||
},
|
||||
unchecked: function(b) {
|
||||
return !a(b).prop("checked")
|
||||
}
|
||||
}),
|
||||
a.validator = function(b, c) {
|
||||
this.settings = a.extend(!0, {}, a.validator.defaults, b),
|
||||
this.currentForm = c,
|
||||
this.init()
|
||||
}
|
||||
,
|
||||
a.validator.format = function(b, c) {
|
||||
return 1 === arguments.length ? function() {
|
||||
var c = a.makeArray(arguments);
|
||||
return c.unshift(b),
|
||||
a.validator.format.apply(this, c)
|
||||
}
|
||||
: void 0 === c ? b : (arguments.length > 2 && c.constructor !== Array && (c = a.makeArray(arguments).slice(1)),
|
||||
c.constructor !== Array && (c = [c]),
|
||||
a.each(c, function(a, c) {
|
||||
b = b.replace(new RegExp("\\{" + a + "\\}","g"), function() {
|
||||
return c
|
||||
})
|
||||
}),
|
||||
b)
|
||||
}
|
||||
,
|
||||
a.extend(a.validator, {
|
||||
defaults: {
|
||||
messages: {},
|
||||
groups: {},
|
||||
rules: {},
|
||||
errorClass: "error",
|
||||
pendingClass: "pending",
|
||||
validClass: "valid",
|
||||
errorElement: "label",
|
||||
focusCleanup: !1,
|
||||
focusInvalid: !0,
|
||||
errorContainer: a([]),
|
||||
errorLabelContainer: a([]),
|
||||
onsubmit: !0,
|
||||
ignore: ":hidden",
|
||||
ignoreTitle: !1,
|
||||
customElements: [],
|
||||
onfocusin: function(a) {
|
||||
this.lastActive = a,
|
||||
this.settings.focusCleanup && (this.settings.unhighlight && this.settings.unhighlight.call(this, a, this.settings.errorClass, this.settings.validClass),
|
||||
this.hideThese(this.errorsFor(a)))
|
||||
},
|
||||
onfocusout: function(a) {
|
||||
this.checkable(a) || !(a.name in this.submitted) && this.optional(a) || this.element(a)
|
||||
},
|
||||
onkeyup: function(b, c) {
|
||||
var d = [16, 17, 18, 20, 35, 36, 37, 38, 39, 40, 45, 144, 225];
|
||||
9 === c.which && "" === this.elementValue(b) || a.inArray(c.keyCode, d) !== -1 || (b.name in this.submitted || b.name in this.invalid) && this.element(b)
|
||||
},
|
||||
onclick: function(a) {
|
||||
a.name in this.submitted ? this.element(a) : a.parentNode.name in this.submitted && this.element(a.parentNode)
|
||||
},
|
||||
highlight: function(b, c, d) {
|
||||
"radio" === b.type ? this.findByName(b.name).addClass(c).removeClass(d) : a(b).addClass(c).removeClass(d)
|
||||
},
|
||||
unhighlight: function(b, c, d) {
|
||||
"radio" === b.type ? this.findByName(b.name).removeClass(c).addClass(d) : a(b).removeClass(c).addClass(d)
|
||||
}
|
||||
},
|
||||
setDefaults: function(b) {
|
||||
a.extend(a.validator.defaults, b)
|
||||
},
|
||||
messages: {
|
||||
required: "This field is required.",
|
||||
remote: "Please fix this field.",
|
||||
email: "Please enter a valid email address.",
|
||||
url: "Please enter a valid URL.",
|
||||
date: "Please enter a valid date.",
|
||||
dateISO: "Please enter a valid date (ISO).",
|
||||
number: "Please enter a valid number.",
|
||||
digits: "Please enter only digits.",
|
||||
equalTo: "Please enter the same value again.",
|
||||
maxlength: a.validator.format("Please enter no more than {0} characters."),
|
||||
minlength: a.validator.format("Please enter at least {0} characters."),
|
||||
rangelength: a.validator.format("Please enter a value between {0} and {1} characters long."),
|
||||
range: a.validator.format("Please enter a value between {0} and {1}."),
|
||||
max: a.validator.format("Please enter a value less than or equal to {0}."),
|
||||
min: a.validator.format("Please enter a value greater than or equal to {0}."),
|
||||
step: a.validator.format("Please enter a multiple of {0}.")
|
||||
},
|
||||
autoCreateRanges: !1,
|
||||
prototype: {
|
||||
init: function() {
|
||||
function b(b) {
|
||||
var c = "undefined" != typeof a(this).attr("contenteditable") && "false" !== a(this).attr("contenteditable");
|
||||
if (!this.form && c && (this.form = a(this).closest("form")[0],
|
||||
this.name = a(this).attr("name")),
|
||||
d === this.form) {
|
||||
var e = a.data(this.form, "validator")
|
||||
, f = "on" + b.type.replace(/^validate/, "")
|
||||
, g = e.settings;
|
||||
g[f] && !a(this).is(g.ignore) && g[f].call(e, this, b)
|
||||
}
|
||||
}
|
||||
this.labelContainer = a(this.settings.errorLabelContainer),
|
||||
this.errorContext = this.labelContainer.length && this.labelContainer || a(this.currentForm),
|
||||
this.containers = a(this.settings.errorContainer).add(this.settings.errorLabelContainer),
|
||||
this.submitted = {},
|
||||
this.valueCache = {},
|
||||
this.pendingRequest = 0,
|
||||
this.pending = {},
|
||||
this.invalid = {},
|
||||
this.reset();
|
||||
var c, d = this.currentForm, e = this.groups = {};
|
||||
a.each(this.settings.groups, function(b, c) {
|
||||
"string" == typeof c && (c = c.split(/\s/)),
|
||||
a.each(c, function(a, c) {
|
||||
e[c] = b
|
||||
})
|
||||
}),
|
||||
c = this.settings.rules,
|
||||
a.each(c, function(b, d) {
|
||||
c[b] = a.validator.normalizeRule(d)
|
||||
});
|
||||
var f = [":text", "[type='password']", "[type='file']", "select", "textarea", "[type='number']", "[type='search']", "[type='tel']", "[type='url']", "[type='email']", "[type='datetime']", "[type='date']", "[type='month']", "[type='week']", "[type='time']", "[type='datetime-local']", "[type='range']", "[type='color']", "[type='radio']", "[type='checkbox']", "[contenteditable]", "[type='button']"]
|
||||
, g = ["select", "option", "[type='radio']", "[type='checkbox']"];
|
||||
a(this.currentForm).on("focusin.validate focusout.validate keyup.validate", f.concat(this.settings.customElements).join(", "), b).on("click.validate", g.concat(this.settings.customElements).join(", "), b),
|
||||
this.settings.invalidHandler && a(this.currentForm).on("invalid-form.validate", this.settings.invalidHandler)
|
||||
},
|
||||
form: function() {
|
||||
return this.checkForm(),
|
||||
a.extend(this.submitted, this.errorMap),
|
||||
this.invalid = a.extend({}, this.errorMap),
|
||||
this.valid() || a(this.currentForm).triggerHandler("invalid-form", [this]),
|
||||
this.showErrors(),
|
||||
this.valid()
|
||||
},
|
||||
checkForm: function() {
|
||||
this.prepareForm();
|
||||
for (var a = 0, b = this.currentElements = this.elements(); b[a]; a++)
|
||||
this.check(b[a]);
|
||||
return this.valid()
|
||||
},
|
||||
element: function(b) {
|
||||
var c, d, e = this.clean(b), f = this.validationTargetFor(e), g = this, h = !0;
|
||||
return void 0 === f ? delete this.invalid[e.name] : (this.prepareElement(f),
|
||||
this.currentElements = a(f),
|
||||
d = this.groups[f.name],
|
||||
d && a.each(this.groups, function(a, b) {
|
||||
b === d && a !== f.name && (e = g.validationTargetFor(g.clean(g.findByName(a))),
|
||||
e && e.name in g.invalid && (g.currentElements.push(e),
|
||||
h = g.check(e) && h))
|
||||
}),
|
||||
c = this.check(f) !== !1,
|
||||
h = h && c,
|
||||
c ? this.invalid[f.name] = !1 : this.invalid[f.name] = !0,
|
||||
this.numberOfInvalids() || (this.toHide = this.toHide.add(this.containers)),
|
||||
this.showErrors(),
|
||||
a(b).attr("aria-invalid", !c)),
|
||||
h
|
||||
},
|
||||
showErrors: function(b) {
|
||||
if (b) {
|
||||
var c = this;
|
||||
a.extend(this.errorMap, b),
|
||||
this.errorList = a.map(this.errorMap, function(a, b) {
|
||||
return {
|
||||
message: a,
|
||||
element: c.findByName(b)[0]
|
||||
}
|
||||
}),
|
||||
this.successList = a.grep(this.successList, function(a) {
|
||||
return !(a.name in b)
|
||||
})
|
||||
}
|
||||
this.settings.showErrors ? this.settings.showErrors.call(this, this.errorMap, this.errorList) : this.defaultShowErrors()
|
||||
},
|
||||
resetForm: function() {
|
||||
a.fn.resetForm && a(this.currentForm).resetForm(),
|
||||
this.invalid = {},
|
||||
this.submitted = {},
|
||||
this.prepareForm(),
|
||||
this.hideErrors();
|
||||
var b = this.elements().removeData("previousValue").removeAttr("aria-invalid");
|
||||
this.resetElements(b)
|
||||
},
|
||||
resetElements: function(a) {
|
||||
var b;
|
||||
if (this.settings.unhighlight)
|
||||
for (b = 0; a[b]; b++)
|
||||
this.settings.unhighlight.call(this, a[b], this.settings.errorClass, ""),
|
||||
this.findByName(a[b].name).removeClass(this.settings.validClass);
|
||||
else
|
||||
a.removeClass(this.settings.errorClass).removeClass(this.settings.validClass)
|
||||
},
|
||||
numberOfInvalids: function() {
|
||||
return this.objectLength(this.invalid)
|
||||
},
|
||||
objectLength: function(a) {
|
||||
var b, c = 0;
|
||||
for (b in a)
|
||||
void 0 !== a[b] && null !== a[b] && a[b] !== !1 && c++;
|
||||
return c
|
||||
},
|
||||
hideErrors: function() {
|
||||
this.hideThese(this.toHide)
|
||||
},
|
||||
hideThese: function(a) {
|
||||
a.not(this.containers).text(""),
|
||||
this.addWrapper(a).hide()
|
||||
},
|
||||
valid: function() {
|
||||
return 0 === this.size()
|
||||
},
|
||||
size: function() {
|
||||
return this.errorList.length
|
||||
},
|
||||
focusInvalid: function() {
|
||||
if (this.settings.focusInvalid)
|
||||
try {
|
||||
a(this.findLastActive() || this.errorList.length && this.errorList[0].element || []).filter(":visible").trigger("focus").trigger("focusin")
|
||||
} catch (b) {}
|
||||
},
|
||||
findLastActive: function() {
|
||||
var b = this.lastActive;
|
||||
return b && 1 === a.grep(this.errorList, function(a) {
|
||||
return a.element.name === b.name
|
||||
}).length && b
|
||||
},
|
||||
elements: function() {
|
||||
var b = this
|
||||
, c = {}
|
||||
, d = ["input", "select", "textarea", "[contenteditable]"];
|
||||
return a(this.currentForm).find(d.concat(this.settings.customElements).join(", ")).not(":submit, :reset, :image, :disabled").not(this.settings.ignore).filter(function() {
|
||||
var d = this.name || a(this).attr("name")
|
||||
, e = "undefined" != typeof a(this).attr("contenteditable") && "false" !== a(this).attr("contenteditable");
|
||||
return !d && b.settings.debug && window.console && console.error("%o has no name assigned", this),
|
||||
e && (this.form = a(this).closest("form")[0],
|
||||
this.name = d),
|
||||
this.form === b.currentForm && (!(d in c || !b.objectLength(a(this).rules())) && (c[d] = !0,
|
||||
!0))
|
||||
})
|
||||
},
|
||||
clean: function(b) {
|
||||
return a(b)[0]
|
||||
},
|
||||
errors: function() {
|
||||
var b = this.settings.errorClass.split(" ").join(".");
|
||||
return a(this.settings.errorElement + "." + b, this.errorContext)
|
||||
},
|
||||
resetInternals: function() {
|
||||
this.successList = [],
|
||||
this.errorList = [],
|
||||
this.errorMap = {},
|
||||
this.toShow = a([]),
|
||||
this.toHide = a([])
|
||||
},
|
||||
reset: function() {
|
||||
this.resetInternals(),
|
||||
this.currentElements = a([])
|
||||
},
|
||||
prepareForm: function() {
|
||||
this.reset(),
|
||||
this.toHide = this.errors().add(this.containers)
|
||||
},
|
||||
prepareElement: function(a) {
|
||||
this.reset(),
|
||||
this.toHide = this.errorsFor(a)
|
||||
},
|
||||
elementValue: function(b) {
|
||||
var c, d, e = a(b), f = b.type, g = "undefined" != typeof e.attr("contenteditable") && "false" !== e.attr("contenteditable");
|
||||
return "radio" === f || "checkbox" === f ? this.findByName(b.name).filter(":checked").val() : "number" === f && "undefined" != typeof b.validity ? b.validity.badInput ? "NaN" : e.val() : (c = g ? e.text() : e.val(),
|
||||
"file" === f ? "C:\\fakepath\\" === c.substr(0, 12) ? c.substr(12) : (d = c.lastIndexOf("/"),
|
||||
d >= 0 ? c.substr(d + 1) : (d = c.lastIndexOf("\\"),
|
||||
d >= 0 ? c.substr(d + 1) : c)) : "string" == typeof c ? c.replace(/\r/g, "") : c)
|
||||
},
|
||||
check: function(b) {
|
||||
b = this.validationTargetFor(this.clean(b));
|
||||
var c, d, e, f, g = a(b).rules(), h = a.map(g, function(a, b) {
|
||||
return b
|
||||
}).length, i = !1, j = this.elementValue(b);
|
||||
this.abortRequest(b),
|
||||
"function" == typeof g.normalizer ? f = g.normalizer : "function" == typeof this.settings.normalizer && (f = this.settings.normalizer),
|
||||
f && (j = f.call(b, j),
|
||||
delete g.normalizer);
|
||||
for (d in g) {
|
||||
e = {
|
||||
method: d,
|
||||
parameters: g[d]
|
||||
};
|
||||
try {
|
||||
if (c = a.validator.methods[d].call(this, j, b, e.parameters),
|
||||
"dependency-mismatch" === c && 1 === h) {
|
||||
i = !0;
|
||||
continue
|
||||
}
|
||||
if (i = !1,
|
||||
"pending" === c)
|
||||
return void (this.toHide = this.toHide.not(this.errorsFor(b)));
|
||||
if (!c)
|
||||
return this.formatAndAdd(b, e),
|
||||
!1
|
||||
} catch (k) {
|
||||
throw this.settings.debug && window.console && console.log("Exception occurred when checking element " + b.id + ", check the '" + e.method + "' method.", k),
|
||||
k instanceof TypeError && (k.message += ". Exception occurred when checking element " + b.id + ", check the '" + e.method + "' method."),
|
||||
k
|
||||
}
|
||||
}
|
||||
if (!i)
|
||||
return this.objectLength(g) && this.successList.push(b),
|
||||
!0
|
||||
},
|
||||
customDataMessage: function(b, c) {
|
||||
return a(b).data("msg" + c.charAt(0).toUpperCase() + c.substring(1).toLowerCase()) || a(b).data("msg")
|
||||
},
|
||||
customMessage: function(a, b) {
|
||||
var c = this.settings.messages[a];
|
||||
return c && (c.constructor === String ? c : c[b])
|
||||
},
|
||||
findDefined: function() {
|
||||
for (var a = 0; a < arguments.length; a++)
|
||||
if (void 0 !== arguments[a])
|
||||
return arguments[a]
|
||||
},
|
||||
defaultMessage: function(b, c) {
|
||||
"string" == typeof c && (c = {
|
||||
method: c
|
||||
});
|
||||
var d = this.findDefined(this.customMessage(b.name, c.method), this.customDataMessage(b, c.method), !this.settings.ignoreTitle && b.title || void 0, a.validator.messages[c.method], "<strong>Warning: No message defined for " + b.name + "</strong>")
|
||||
, e = /\$?\{(\d+)\}/g;
|
||||
return "function" == typeof d ? d = d.call(this, c.parameters, b) : e.test(d) && (d = a.validator.format(d.replace(e, "{$1}"), c.parameters)),
|
||||
d
|
||||
},
|
||||
formatAndAdd: function(a, b) {
|
||||
var c = this.defaultMessage(a, b);
|
||||
this.errorList.push({
|
||||
message: c,
|
||||
element: a,
|
||||
method: b.method
|
||||
}),
|
||||
this.errorMap[a.name] = c,
|
||||
this.submitted[a.name] = c
|
||||
},
|
||||
addWrapper: function(a) {
|
||||
return this.settings.wrapper && (a = a.add(a.parent(this.settings.wrapper))),
|
||||
a
|
||||
},
|
||||
defaultShowErrors: function() {
|
||||
var a, b, c;
|
||||
for (a = 0; this.errorList[a]; a++)
|
||||
c = this.errorList[a],
|
||||
this.settings.highlight && this.settings.highlight.call(this, c.element, this.settings.errorClass, this.settings.validClass),
|
||||
this.showLabel(c.element, c.message);
|
||||
if (this.errorList.length && (this.toShow = this.toShow.add(this.containers)),
|
||||
this.settings.success)
|
||||
for (a = 0; this.successList[a]; a++)
|
||||
this.showLabel(this.successList[a]);
|
||||
if (this.settings.unhighlight)
|
||||
for (a = 0,
|
||||
b = this.validElements(); b[a]; a++)
|
||||
this.settings.unhighlight.call(this, b[a], this.settings.errorClass, this.settings.validClass);
|
||||
this.toHide = this.toHide.not(this.toShow),
|
||||
this.hideErrors(),
|
||||
this.addWrapper(this.toShow).show()
|
||||
},
|
||||
validElements: function() {
|
||||
return this.currentElements.not(this.invalidElements())
|
||||
},
|
||||
invalidElements: function() {
|
||||
return a(this.errorList).map(function() {
|
||||
return this.element
|
||||
})
|
||||
},
|
||||
showLabel: function(b, c) {
|
||||
var d, e, f, g, h = this.errorsFor(b), i = this.idOrName(b), j = a(b).attr("aria-describedby");
|
||||
h.length ? (h.removeClass(this.settings.validClass).addClass(this.settings.errorClass),
|
||||
this.settings && this.settings.escapeHtml ? h.text(c || "") : h.html(c || "")) : (h = a("<" + this.settings.errorElement + ">").attr("id", i + "-error").addClass(this.settings.errorClass),
|
||||
this.settings && this.settings.escapeHtml ? h.text(c || "") : h.html(c || ""),
|
||||
d = h,
|
||||
this.settings.wrapper && (d = h.hide().show().wrap("<" + this.settings.wrapper + "/>").parent()),
|
||||
this.labelContainer.length ? this.labelContainer.append(d) : this.settings.errorPlacement ? this.settings.errorPlacement.call(this, d, a(b)) : d.insertAfter(b),
|
||||
h.is("label") ? h.attr("for", i) : 0 === h.parents("label[for='" + this.escapeCssMeta(i) + "']").length && (f = h.attr("id"),
|
||||
j ? j.match(new RegExp("\\b" + this.escapeCssMeta(f) + "\\b")) || (j += " " + f) : j = f,
|
||||
a(b).attr("aria-describedby", j),
|
||||
e = this.groups[b.name],
|
||||
e && (g = this,
|
||||
a.each(g.groups, function(b, c) {
|
||||
c === e && a("[name='" + g.escapeCssMeta(b) + "']", g.currentForm).attr("aria-describedby", h.attr("id"))
|
||||
})))),
|
||||
!c && this.settings.success && (h.text(""),
|
||||
"string" == typeof this.settings.success ? h.addClass(this.settings.success) : this.settings.success(h, b)),
|
||||
this.toShow = this.toShow.add(h)
|
||||
},
|
||||
errorsFor: function(b) {
|
||||
var c = this.escapeCssMeta(this.idOrName(b))
|
||||
, d = a(b).attr("aria-describedby")
|
||||
, e = "label[for='" + c + "'], label[for='" + c + "'] *";
|
||||
return d && (e = e + ", #" + this.escapeCssMeta(d).replace(/\s+/g, ", #")),
|
||||
this.errors().filter(e)
|
||||
},
|
||||
escapeCssMeta: function(a) {
|
||||
return void 0 === a ? "" : a.replace(/([\\!"#$%&'()*+,./:;<=>?@\[\]^`{|}~])/g, "\\$1")
|
||||
},
|
||||
idOrName: function(a) {
|
||||
return this.groups[a.name] || (this.checkable(a) ? a.name : a.id || a.name)
|
||||
},
|
||||
validationTargetFor: function(b) {
|
||||
return this.checkable(b) && (b = this.findByName(b.name)),
|
||||
a(b).not(this.settings.ignore)[0]
|
||||
},
|
||||
checkable: function(a) {
|
||||
return /radio|checkbox/i.test(a.type)
|
||||
},
|
||||
findByName: function(b) {
|
||||
return a(this.currentForm).find("[name='" + this.escapeCssMeta(b) + "']")
|
||||
},
|
||||
getLength: function(b, c) {
|
||||
switch (c.nodeName.toLowerCase()) {
|
||||
case "select":
|
||||
return a("option:selected", c).length;
|
||||
case "input":
|
||||
if (this.checkable(c))
|
||||
return this.findByName(c.name).filter(":checked").length
|
||||
}
|
||||
return b.length
|
||||
},
|
||||
depend: function(a, b) {
|
||||
return !this.dependTypes[typeof a] || this.dependTypes[typeof a](a, b)
|
||||
},
|
||||
dependTypes: {
|
||||
"boolean": function(a) {
|
||||
return a
|
||||
},
|
||||
string: function(b, c) {
|
||||
return !!a(b, c.form).length
|
||||
},
|
||||
"function": function(a, b) {
|
||||
return a(b)
|
||||
}
|
||||
},
|
||||
optional: function(b) {
|
||||
var c = this.elementValue(b);
|
||||
return !a.validator.methods.required.call(this, c, b) && "dependency-mismatch"
|
||||
},
|
||||
elementAjaxPort: function(a) {
|
||||
return "validate" + a.name
|
||||
},
|
||||
startRequest: function(b) {
|
||||
this.pending[b.name] || (this.pendingRequest++,
|
||||
a(b).addClass(this.settings.pendingClass),
|
||||
this.pending[b.name] = !0)
|
||||
},
|
||||
stopRequest: function(b, c) {
|
||||
this.pendingRequest--,
|
||||
this.pendingRequest < 0 && (this.pendingRequest = 0),
|
||||
delete this.pending[b.name],
|
||||
a(b).removeClass(this.settings.pendingClass),
|
||||
c && 0 === this.pendingRequest && this.formSubmitted && this.form() && 0 === this.pendingRequest ? (a(this.currentForm).trigger("submit"),
|
||||
this.submitButton && a("input:hidden[name='" + this.submitButton.name + "']", this.currentForm).remove(),
|
||||
this.formSubmitted = !1) : !c && 0 === this.pendingRequest && this.formSubmitted && (a(this.currentForm).triggerHandler("invalid-form", [this]),
|
||||
this.formSubmitted = !1)
|
||||
},
|
||||
abortRequest: function(b) {
|
||||
var c;
|
||||
this.pending[b.name] && (c = this.elementAjaxPort(b),
|
||||
a.ajaxAbort(c),
|
||||
this.pendingRequest--,
|
||||
this.pendingRequest < 0 && (this.pendingRequest = 0),
|
||||
delete this.pending[b.name],
|
||||
a(b).removeClass(this.settings.pendingClass))
|
||||
},
|
||||
previousValue: function(b, c) {
|
||||
return c = "string" == typeof c && c || "remote",
|
||||
a.data(b, "previousValue") || a.data(b, "previousValue", {
|
||||
old: null,
|
||||
valid: !0,
|
||||
message: this.defaultMessage(b, {
|
||||
method: c
|
||||
})
|
||||
})
|
||||
},
|
||||
destroy: function() {
|
||||
this.resetForm(),
|
||||
a(this.currentForm).off(".validate").removeData("validator").find(".validate-equalTo-blur").off(".validate-equalTo").removeClass("validate-equalTo-blur").find(".validate-lessThan-blur").off(".validate-lessThan").removeClass("validate-lessThan-blur").find(".validate-lessThanEqual-blur").off(".validate-lessThanEqual").removeClass("validate-lessThanEqual-blur").find(".validate-greaterThanEqual-blur").off(".validate-greaterThanEqual").removeClass("validate-greaterThanEqual-blur").find(".validate-greaterThan-blur").off(".validate-greaterThan").removeClass("validate-greaterThan-blur")
|
||||
}
|
||||
},
|
||||
classRuleSettings: {
|
||||
required: {
|
||||
required: !0
|
||||
},
|
||||
email: {
|
||||
email: !0
|
||||
},
|
||||
url: {
|
||||
url: !0
|
||||
},
|
||||
date: {
|
||||
date: !0
|
||||
},
|
||||
dateISO: {
|
||||
dateISO: !0
|
||||
},
|
||||
number: {
|
||||
number: !0
|
||||
},
|
||||
digits: {
|
||||
digits: !0
|
||||
},
|
||||
creditcard: {
|
||||
creditcard: !0
|
||||
}
|
||||
},
|
||||
addClassRules: function(b, c) {
|
||||
b.constructor === String ? this.classRuleSettings[b] = c : a.extend(this.classRuleSettings, b)
|
||||
},
|
||||
classRules: function(b) {
|
||||
var c = {}
|
||||
, d = a(b).attr("class");
|
||||
return d && a.each(d.split(" "), function() {
|
||||
this in a.validator.classRuleSettings && a.extend(c, a.validator.classRuleSettings[this])
|
||||
}),
|
||||
c
|
||||
},
|
||||
normalizeAttributeRule: function(a, b, c, d) {
|
||||
/min|max|step/.test(c) && (null === b || /number|range|text/.test(b)) && (d = Number(d),
|
||||
isNaN(d) && (d = void 0)),
|
||||
d || 0 === d ? a[c] = d : b === c && "range" !== b && (a["date" === b ? "dateISO" : c] = !0)
|
||||
},
|
||||
attributeRules: function(b) {
|
||||
var c, d, e = {}, f = a(b), g = b.getAttribute("type");
|
||||
for (c in a.validator.methods)
|
||||
"required" === c ? (d = b.getAttribute(c),
|
||||
"" === d && (d = !0),
|
||||
d = !!d) : d = f.attr(c),
|
||||
this.normalizeAttributeRule(e, g, c, d);
|
||||
return e.maxlength && /-1|2147483647|524288/.test(e.maxlength) && delete e.maxlength,
|
||||
e
|
||||
},
|
||||
dataRules: function(b) {
|
||||
var c, d, e = {}, f = a(b), g = b.getAttribute("type");
|
||||
for (c in a.validator.methods)
|
||||
d = f.data("rule" + c.charAt(0).toUpperCase() + c.substring(1).toLowerCase()),
|
||||
"" === d && (d = !0),
|
||||
this.normalizeAttributeRule(e, g, c, d);
|
||||
return e
|
||||
},
|
||||
staticRules: function(b) {
|
||||
var c = {}
|
||||
, d = a.data(b.form, "validator");
|
||||
return d.settings.rules && (c = a.validator.normalizeRule(d.settings.rules[b.name]) || {}),
|
||||
c
|
||||
},
|
||||
normalizeRules: function(b, c) {
|
||||
return a.each(b, function(d, e) {
|
||||
if (e === !1)
|
||||
return void delete b[d];
|
||||
if (e.param || e.depends) {
|
||||
var f = !0;
|
||||
switch (typeof e.depends) {
|
||||
case "string":
|
||||
f = !!a(e.depends, c.form).length;
|
||||
break;
|
||||
case "function":
|
||||
f = e.depends.call(c, c)
|
||||
}
|
||||
f ? b[d] = void 0 === e.param || e.param : (a.data(c.form, "validator").resetElements(a(c)),
|
||||
delete b[d])
|
||||
}
|
||||
}),
|
||||
a.each(b, function(a, d) {
|
||||
b[a] = "function" == typeof d && "normalizer" !== a ? d(c) : d
|
||||
}),
|
||||
a.each(["minlength", "maxlength"], function() {
|
||||
b[this] && (b[this] = Number(b[this]))
|
||||
}),
|
||||
a.each(["rangelength", "range"], function() {
|
||||
var a;
|
||||
b[this] && (Array.isArray(b[this]) ? b[this] = [Number(b[this][0]), Number(b[this][1])] : "string" == typeof b[this] && (a = b[this].replace(/[\[\]]/g, "").split(/[\s,]+/),
|
||||
b[this] = [Number(a[0]), Number(a[1])]))
|
||||
}),
|
||||
a.validator.autoCreateRanges && (null != b.min && null != b.max && (b.range = [b.min, b.max],
|
||||
delete b.min,
|
||||
delete b.max),
|
||||
null != b.minlength && null != b.maxlength && (b.rangelength = [b.minlength, b.maxlength],
|
||||
delete b.minlength,
|
||||
delete b.maxlength)),
|
||||
b
|
||||
},
|
||||
normalizeRule: function(b) {
|
||||
if ("string" == typeof b) {
|
||||
var c = {};
|
||||
a.each(b.split(/\s/), function() {
|
||||
c[this] = !0
|
||||
}),
|
||||
b = c
|
||||
}
|
||||
return b
|
||||
},
|
||||
addMethod: function(b, c, d) {
|
||||
a.validator.methods[b] = c,
|
||||
a.validator.messages[b] = void 0 !== d ? d : a.validator.messages[b],
|
||||
c.length < 3 && a.validator.addClassRules(b, a.validator.normalizeRule(b))
|
||||
},
|
||||
methods: {
|
||||
required: function(b, c, d) {
|
||||
if (!this.depend(d, c))
|
||||
return "dependency-mismatch";
|
||||
if ("select" === c.nodeName.toLowerCase()) {
|
||||
var e = a(c).val();
|
||||
return e && e.length > 0
|
||||
}
|
||||
return this.checkable(c) ? this.getLength(b, c) > 0 : void 0 !== b && null !== b && b.length > 0
|
||||
},
|
||||
email: function(a, b) {
|
||||
return this.optional(b) || /^[a-zA-Z0-9.!#$%&'*+\/=?^_`{|}~-]+@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*$/.test(a)
|
||||
},
|
||||
url: function(a, b) {
|
||||
return this.optional(b) || /^(?:(?:(?:https?|ftp):)?\/\/)(?:(?:[^\]\[?\/<~#`!@$^&*()+=}|:";',>{ ]|%[0-9A-Fa-f]{2})+(?::(?:[^\]\[?\/<~#`!@$^&*()+=}|:";',>{ ]|%[0-9A-Fa-f]{2})*)?@)?(?:(?!(?:10|127)(?:\.\d{1,3}){3})(?!(?:169\.254|192\.168)(?:\.\d{1,3}){2})(?!172\.(?:1[6-9]|2\d|3[0-1])(?:\.\d{1,3}){2})(?:[1-9]\d?|1\d\d|2[01]\d|22[0-3])(?:\.(?:1?\d{1,2}|2[0-4]\d|25[0-5])){2}(?:\.(?:[1-9]\d?|1\d\d|2[0-4]\d|25[0-4]))|(?:(?:[a-z0-9\u00a1-\uffff][a-z0-9\u00a1-\uffff_-]{0,62})?[a-z0-9\u00a1-\uffff]\.)+(?:[a-z\u00a1-\uffff]{2,}\.?))(?::\d{2,5})?(?:[/?#]\S*)?$/i.test(a)
|
||||
},
|
||||
date: function() {
|
||||
var a = !1;
|
||||
return function(b, c) {
|
||||
return a || (a = !0,
|
||||
this.settings.debug && window.console && console.warn("The `date` method is deprecated and will be removed in version '2.0.0'.\nPlease don't use it, since it relies on the Date constructor, which\nbehaves very differently across browsers and locales. Use `dateISO`\ninstead or one of the locale specific methods in `localizations/`\nand `additional-methods.js`.")),
|
||||
this.optional(c) || !/Invalid|NaN/.test(new Date(b).toString())
|
||||
}
|
||||
}(),
|
||||
dateISO: function(a, b) {
|
||||
return this.optional(b) || /^\d{4}[\/\-](0?[1-9]|1[012])[\/\-](0?[1-9]|[12][0-9]|3[01])$/.test(a)
|
||||
},
|
||||
number: function(a, b) {
|
||||
return this.optional(b) || /^(?:-?\d+|-?\d{1,3}(?:,\d{3})+)?(?:-?\.\d+)?$/.test(a)
|
||||
},
|
||||
digits: function(a, b) {
|
||||
return this.optional(b) || /^\d+$/.test(a)
|
||||
},
|
||||
minlength: function(a, b, c) {
|
||||
var d = Array.isArray(a) ? a.length : this.getLength(a, b);
|
||||
return this.optional(b) || d >= c
|
||||
},
|
||||
maxlength: function(a, b, c) {
|
||||
var d = Array.isArray(a) ? a.length : this.getLength(a, b);
|
||||
return this.optional(b) || d <= c
|
||||
},
|
||||
rangelength: function(a, b, c) {
|
||||
var d = Array.isArray(a) ? a.length : this.getLength(a, b);
|
||||
return this.optional(b) || d >= c[0] && d <= c[1]
|
||||
},
|
||||
min: function(a, b, c) {
|
||||
return this.optional(b) || a >= c
|
||||
},
|
||||
max: function(a, b, c) {
|
||||
return this.optional(b) || a <= c
|
||||
},
|
||||
range: function(a, b, c) {
|
||||
return this.optional(b) || a >= c[0] && a <= c[1]
|
||||
},
|
||||
step: function(b, c, d) {
|
||||
var e, f = a(c).attr("type"), g = "Step attribute on input type " + f + " is not supported.", h = ["text", "number", "range"], i = new RegExp("\\b" + f + "\\b"), j = f && !i.test(h.join()), k = function(a) {
|
||||
var b = ("" + a).match(/(?:\.(\d+))?$/);
|
||||
return b && b[1] ? b[1].length : 0
|
||||
}, l = function(a) {
|
||||
return Math.round(a * Math.pow(10, e))
|
||||
}, m = !0;
|
||||
if (j)
|
||||
throw new Error(g);
|
||||
return e = k(d),
|
||||
(k(b) > e || l(b) % l(d) !== 0) && (m = !1),
|
||||
this.optional(c) || m
|
||||
},
|
||||
equalTo: function(b, c, d) {
|
||||
var e = a(d);
|
||||
return this.settings.onfocusout && e.not(".validate-equalTo-blur").length && e.addClass("validate-equalTo-blur").on("blur.validate-equalTo", function() {
|
||||
a(c).valid()
|
||||
}),
|
||||
b === e.val()
|
||||
},
|
||||
remote: function(b, c, d, e) {
|
||||
if (this.optional(c))
|
||||
return "dependency-mismatch";
|
||||
e = "string" == typeof e && e || "remote";
|
||||
var f, g, h, i = this.previousValue(c, e);
|
||||
return this.settings.messages[c.name] || (this.settings.messages[c.name] = {}),
|
||||
i.originalMessage = i.originalMessage || this.settings.messages[c.name][e],
|
||||
this.settings.messages[c.name][e] = i.message,
|
||||
d = "string" == typeof d && {
|
||||
url: d
|
||||
} || d,
|
||||
h = a.param(a.extend({
|
||||
data: b
|
||||
}, d.data)),
|
||||
null !== i.valid && i.old === h ? i.valid : (i.old = h,
|
||||
i.valid = null,
|
||||
f = this,
|
||||
this.startRequest(c),
|
||||
g = {},
|
||||
g[c.name] = b,
|
||||
a.ajax(a.extend(!0, {
|
||||
mode: "abort",
|
||||
port: this.elementAjaxPort(c),
|
||||
dataType: "json",
|
||||
data: g,
|
||||
context: f.currentForm,
|
||||
success: function(a) {
|
||||
var d, g, h, j = a === !0 || "true" === a;
|
||||
f.settings.messages[c.name][e] = i.originalMessage,
|
||||
j ? (h = f.formSubmitted,
|
||||
f.toHide = f.errorsFor(c),
|
||||
f.formSubmitted = h,
|
||||
f.successList.push(c),
|
||||
f.invalid[c.name] = !1,
|
||||
f.showErrors()) : (d = {},
|
||||
g = a || f.defaultMessage(c, {
|
||||
method: e,
|
||||
parameters: b
|
||||
}),
|
||||
d[c.name] = i.message = g,
|
||||
f.invalid[c.name] = !0,
|
||||
f.showErrors(d)),
|
||||
i.valid = j,
|
||||
f.stopRequest(c, j)
|
||||
}
|
||||
}, d)),
|
||||
"pending")
|
||||
}
|
||||
}
|
||||
});
|
||||
var c, d = {};
|
||||
return a.ajaxPrefilter ? a.ajaxPrefilter(function(b, c, e) {
|
||||
var f = b.port;
|
||||
"abort" === b.mode && (a.ajaxAbort(f),
|
||||
d[f] = e)
|
||||
}) : (c = a.ajax,
|
||||
a.ajax = function(b) {
|
||||
var e = ("mode"in b ? b : a.ajaxSettings).mode
|
||||
, f = ("port"in b ? b : a.ajaxSettings).port;
|
||||
return "abort" === e ? (a.ajaxAbort(f),
|
||||
d[f] = c.apply(this, arguments),
|
||||
d[f]) : c.apply(this, arguments)
|
||||
}
|
||||
),
|
||||
a.ajaxAbort = function(a) {
|
||||
d[a] && (d[a].abort(),
|
||||
delete d[a])
|
||||
}
|
||||
,
|
||||
a
|
||||
});
|
||||
82
assets/js/js.cookie.min.js
vendored
82
assets/js/js.cookie.min.js
vendored
@@ -1,82 +0,0 @@
|
||||
/*! js-cookie v3.0.5 | MIT */
|
||||
!function(e, t) {
|
||||
"object" == typeof exports && "undefined" != typeof module ? module.exports = t() : "function" == typeof define && define.amd ? define(t) : (e = "undefined" != typeof globalThis ? globalThis : e || self,
|
||||
function() {
|
||||
var n = e.Cookies
|
||||
, o = e.Cookies = t();
|
||||
o.noConflict = function() {
|
||||
return e.Cookies = n,
|
||||
o
|
||||
}
|
||||
}())
|
||||
}(this, function() {
|
||||
"use strict";
|
||||
function e(e) {
|
||||
for (var t = 1; t < arguments.length; t++) {
|
||||
var n = arguments[t];
|
||||
for (var o in n)
|
||||
e[o] = n[o]
|
||||
}
|
||||
return e
|
||||
}
|
||||
return function t(n, o) {
|
||||
function r(t, r, i) {
|
||||
if ("undefined" != typeof document) {
|
||||
"number" == typeof (i = e({}, o, i)).expires && (i.expires = new Date(Date.now() + 864e5 * i.expires)),
|
||||
i.expires && (i.expires = i.expires.toUTCString()),
|
||||
t = encodeURIComponent(t).replace(/%(2[346B]|5E|60|7C)/g, decodeURIComponent).replace(/[()]/g, escape);
|
||||
var c = "";
|
||||
for (var u in i)
|
||||
i[u] && (c += "; " + u,
|
||||
!0 !== i[u] && (c += "=" + i[u].split(";")[0]));
|
||||
return document.cookie = t + "=" + n.write(r, t) + c
|
||||
}
|
||||
}
|
||||
return Object.create({
|
||||
set: r,
|
||||
get: function(e) {
|
||||
if ("undefined" != typeof document && (!arguments.length || e)) {
|
||||
for (var t = document.cookie ? document.cookie.split("; ") : [], o = {}, r = 0; r < t.length; r++) {
|
||||
var i = t[r].split("=")
|
||||
, c = i.slice(1).join("=");
|
||||
try {
|
||||
var u = decodeURIComponent(i[0]);
|
||||
if (o[u] = n.read(c, u),
|
||||
e === u)
|
||||
break
|
||||
} catch (f) {}
|
||||
}
|
||||
return e ? o[e] : o
|
||||
}
|
||||
},
|
||||
remove: function(t, n) {
|
||||
r(t, "", e({}, n, {
|
||||
expires: -1
|
||||
}))
|
||||
},
|
||||
withAttributes: function(n) {
|
||||
return t(this.converter, e({}, this.attributes, n))
|
||||
},
|
||||
withConverter: function(n) {
|
||||
return t(e({}, this.converter, n), this.attributes)
|
||||
}
|
||||
}, {
|
||||
attributes: {
|
||||
value: Object.freeze(o)
|
||||
},
|
||||
converter: {
|
||||
value: Object.freeze(n)
|
||||
}
|
||||
})
|
||||
}({
|
||||
read: function(e) {
|
||||
return '"' === e[0] && (e = e.slice(1, -1)),
|
||||
e.replace(/(%[\dA-F]{2})+/gi, decodeURIComponent)
|
||||
},
|
||||
write: function(e) {
|
||||
return encodeURIComponent(e).replace(/%(2[346BF]|3[AC-F]|40|5[BDE]|60|7[BCD])/g, decodeURIComponent)
|
||||
}
|
||||
}, {
|
||||
path: "/"
|
||||
})
|
||||
});
|
||||
457
assets/js/lazyload.min.js
vendored
457
assets/js/lazyload.min.js
vendored
@@ -1,457 +0,0 @@
|
||||
! function(n, t) {
|
||||
"object" == typeof exports && "undefined" != typeof module ? module.exports = t() : "function" == typeof define && define.amd ? define(t) : (n = "undefined" != typeof globalThis ? globalThis : n || self).LazyLoad = t()
|
||||
}(this, (function() {
|
||||
"use strict";
|
||||
|
||||
function n() {
|
||||
return n = Object.assign || function(n) {
|
||||
for (var t = 1; t < arguments.length; t++) {
|
||||
var e = arguments[t];
|
||||
for (var i in e) Object.prototype.hasOwnProperty.call(e, i) && (n[i] = e[i])
|
||||
}
|
||||
return n
|
||||
}, n.apply(this, arguments)
|
||||
}
|
||||
var t = "undefined" != typeof window,
|
||||
e = t && !("onscroll" in window) || "undefined" != typeof navigator && /(gle|ing|ro)bot|crawl|spider/i.test(navigator.userAgent),
|
||||
i = t && "IntersectionObserver" in window,
|
||||
o = t && "classList" in document.createElement("p"),
|
||||
a = t && window.devicePixelRatio > 1,
|
||||
r = {
|
||||
elements_selector: ".lazy",
|
||||
container: e || t ? document : null,
|
||||
threshold: 300,
|
||||
thresholds: null,
|
||||
data_src: "src",
|
||||
data_srcset: "srcset",
|
||||
data_sizes: "sizes",
|
||||
data_bg: "bg",
|
||||
data_bg_hidpi: "bg-hidpi",
|
||||
data_bg_multi: "bg-multi",
|
||||
data_bg_multi_hidpi: "bg-multi-hidpi",
|
||||
data_bg_set: "bg-set",
|
||||
data_poster: "poster",
|
||||
class_applied: "applied",
|
||||
class_loading: "loading",
|
||||
class_loaded: "loaded",
|
||||
class_error: "error",
|
||||
class_entered: "entered",
|
||||
class_exited: "exited",
|
||||
unobserve_completed: !0,
|
||||
unobserve_entered: !1,
|
||||
cancel_on_exit: !0,
|
||||
callback_enter: null,
|
||||
callback_exit: null,
|
||||
callback_applied: null,
|
||||
callback_loading: null,
|
||||
callback_loaded: null,
|
||||
callback_error: null,
|
||||
callback_finish: null,
|
||||
callback_cancel: null,
|
||||
use_native: !1,
|
||||
restore_on_error: !1
|
||||
},
|
||||
c = function(t) {
|
||||
return n({}, r, t)
|
||||
},
|
||||
l = function(n, t) {
|
||||
var e, i = "LazyLoad::Initialized",
|
||||
o = new n(t);
|
||||
try {
|
||||
e = new CustomEvent(i, {
|
||||
detail: {
|
||||
instance: o
|
||||
}
|
||||
})
|
||||
} catch (n) {
|
||||
(e = document.createEvent("CustomEvent")).initCustomEvent(i, !1, !1, {
|
||||
instance: o
|
||||
})
|
||||
}
|
||||
window.dispatchEvent(e)
|
||||
},
|
||||
u = "src",
|
||||
s = "srcset",
|
||||
d = "sizes",
|
||||
f = "poster",
|
||||
_ = "llOriginalAttrs",
|
||||
g = "data",
|
||||
v = "loading",
|
||||
b = "loaded",
|
||||
m = "applied",
|
||||
p = "error",
|
||||
h = "native",
|
||||
E = "data-",
|
||||
I = "ll-status",
|
||||
y = function(n, t) {
|
||||
return n.getAttribute(E + t)
|
||||
},
|
||||
k = function(n) {
|
||||
return y(n, I)
|
||||
},
|
||||
w = function(n, t) {
|
||||
return function(n, t, e) {
|
||||
var i = "data-ll-status";
|
||||
null !== e ? n.setAttribute(i, e) : n.removeAttribute(i)
|
||||
}(n, 0, t)
|
||||
},
|
||||
A = function(n) {
|
||||
return w(n, null)
|
||||
},
|
||||
L = function(n) {
|
||||
return null === k(n)
|
||||
},
|
||||
O = function(n) {
|
||||
return k(n) === h
|
||||
},
|
||||
x = [v, b, m, p],
|
||||
C = function(n, t, e, i) {
|
||||
n && (void 0 === i ? void 0 === e ? n(t) : n(t, e) : n(t, e, i))
|
||||
},
|
||||
N = function(n, t) {
|
||||
o ? n.classList.add(t) : n.className += (n.className ? " " : "") + t
|
||||
},
|
||||
M = function(n, t) {
|
||||
o ? n.classList.remove(t) : n.className = n.className.replace(new RegExp("(^|\\s+)" + t + "(\\s+|$)"), " ").replace(/^\s+/, "").replace(/\s+$/, "")
|
||||
},
|
||||
z = function(n) {
|
||||
return n.llTempImage
|
||||
},
|
||||
T = function(n, t) {
|
||||
if (t) {
|
||||
var e = t._observer;
|
||||
e && e.unobserve(n)
|
||||
}
|
||||
},
|
||||
R = function(n, t) {
|
||||
n && (n.loadingCount += t)
|
||||
},
|
||||
G = function(n, t) {
|
||||
n && (n.toLoadCount = t)
|
||||
},
|
||||
j = function(n) {
|
||||
for (var t, e = [], i = 0; t = n.children[i]; i += 1) "SOURCE" === t.tagName && e.push(t);
|
||||
return e
|
||||
},
|
||||
D = function(n, t) {
|
||||
var e = n.parentNode;
|
||||
e && "PICTURE" === e.tagName && j(e).forEach(t)
|
||||
},
|
||||
H = function(n, t) {
|
||||
j(n).forEach(t)
|
||||
},
|
||||
V = [u],
|
||||
F = [u, f],
|
||||
B = [u, s, d],
|
||||
J = [g],
|
||||
P = function(n) {
|
||||
return !!n[_]
|
||||
},
|
||||
S = function(n) {
|
||||
return n[_]
|
||||
},
|
||||
U = function(n) {
|
||||
return delete n[_]
|
||||
},
|
||||
$ = function(n, t) {
|
||||
if (!P(n)) {
|
||||
var e = {};
|
||||
t.forEach((function(t) {
|
||||
e[t] = n.getAttribute(t)
|
||||
})), n[_] = e
|
||||
}
|
||||
},
|
||||
q = function(n, t) {
|
||||
if (P(n)) {
|
||||
var e = S(n);
|
||||
t.forEach((function(t) {
|
||||
! function(n, t, e) {
|
||||
e ? n.setAttribute(t, e) : n.removeAttribute(t)
|
||||
}(n, t, e[t])
|
||||
}))
|
||||
}
|
||||
},
|
||||
K = function(n, t, e) {
|
||||
N(n, t.class_applied), w(n, m), e && (t.unobserve_completed && T(n, t), C(t.callback_applied, n, e))
|
||||
},
|
||||
Q = function(n, t, e) {
|
||||
N(n, t.class_loading), w(n, v), e && (R(e, 1), C(t.callback_loading, n, e))
|
||||
},
|
||||
W = function(n, t, e) {
|
||||
e && n.setAttribute(t, e)
|
||||
},
|
||||
X = function(n, t) {
|
||||
W(n, d, y(n, t.data_sizes)), W(n, s, y(n, t.data_srcset)), W(n, u, y(n, t.data_src))
|
||||
},
|
||||
Y = {
|
||||
IMG: function(n, t) {
|
||||
D(n, (function(n) {
|
||||
$(n, B), X(n, t)
|
||||
})), $(n, B), X(n, t)
|
||||
},
|
||||
IFRAME: function(n, t) {
|
||||
$(n, V), W(n, u, y(n, t.data_src))
|
||||
},
|
||||
VIDEO: function(n, t) {
|
||||
H(n, (function(n) {
|
||||
$(n, V), W(n, u, y(n, t.data_src))
|
||||
})), $(n, F), W(n, f, y(n, t.data_poster)), W(n, u, y(n, t.data_src)), n.load()
|
||||
},
|
||||
OBJECT: function(n, t) {
|
||||
$(n, J), W(n, g, y(n, t.data_src))
|
||||
}
|
||||
},
|
||||
Z = ["IMG", "IFRAME", "VIDEO", "OBJECT"],
|
||||
nn = function(n, t) {
|
||||
!t || function(n) {
|
||||
return n.loadingCount > 0
|
||||
}(t) || function(n) {
|
||||
return n.toLoadCount > 0
|
||||
}(t) || C(n.callback_finish, t)
|
||||
},
|
||||
tn = function(n, t, e) {
|
||||
n.addEventListener(t, e), n.llEvLisnrs[t] = e
|
||||
},
|
||||
en = function(n, t, e) {
|
||||
n.removeEventListener(t, e)
|
||||
},
|
||||
on = function(n) {
|
||||
return !!n.llEvLisnrs
|
||||
},
|
||||
an = function(n) {
|
||||
if (on(n)) {
|
||||
var t = n.llEvLisnrs;
|
||||
for (var e in t) {
|
||||
var i = t[e];
|
||||
en(n, e, i)
|
||||
}
|
||||
delete n.llEvLisnrs
|
||||
}
|
||||
},
|
||||
rn = function(n, t, e) {
|
||||
! function(n) {
|
||||
delete n.llTempImage
|
||||
}(n), R(e, -1),
|
||||
function(n) {
|
||||
n && (n.toLoadCount -= 1)
|
||||
}(e), M(n, t.class_loading), t.unobserve_completed && T(n, e)
|
||||
},
|
||||
cn = function(n, t, e) {
|
||||
var i = z(n) || n;
|
||||
on(i) || function(n, t, e) {
|
||||
on(n) || (n.llEvLisnrs = {});
|
||||
var i = "VIDEO" === n.tagName ? "loadeddata" : "load";
|
||||
tn(n, i, t), tn(n, "error", e)
|
||||
}(i, (function(o) {
|
||||
! function(n, t, e, i) {
|
||||
var o = O(t);
|
||||
rn(t, e, i), N(t, e.class_loaded), w(t, b), C(e.callback_loaded, t, i), o || nn(e, i)
|
||||
}(0, n, t, e), an(i)
|
||||
}), (function(o) {
|
||||
! function(n, t, e, i) {
|
||||
var o = O(t);
|
||||
rn(t, e, i), N(t, e.class_error), w(t, p), C(e.callback_error, t, i), e.restore_on_error && q(t, B), o || nn(e, i)
|
||||
}(0, n, t, e), an(i)
|
||||
}))
|
||||
},
|
||||
ln = function(n, t, e) {
|
||||
! function(n) {
|
||||
return Z.indexOf(n.tagName) > -1
|
||||
}(n) ? function(n, t, e) {
|
||||
! function(n) {
|
||||
n.llTempImage = document.createElement("IMG")
|
||||
}(n), cn(n, t, e),
|
||||
function(n) {
|
||||
P(n) || (n[_] = {
|
||||
backgroundImage: n.style.backgroundImage
|
||||
})
|
||||
}(n),
|
||||
function(n, t, e) {
|
||||
var i = y(n, t.data_bg),
|
||||
o = y(n, t.data_bg_hidpi),
|
||||
r = a && o ? o : i;
|
||||
r && (n.style.backgroundImage = 'url("'.concat(r, '")'), z(n).setAttribute(u, r), Q(n, t, e))
|
||||
}(n, t, e),
|
||||
function(n, t, e) {
|
||||
var i = y(n, t.data_bg_multi),
|
||||
o = y(n, t.data_bg_multi_hidpi),
|
||||
r = a && o ? o : i;
|
||||
r && (n.style.backgroundImage = r, K(n, t, e))
|
||||
}(n, t, e),
|
||||
function(n, t, e) {
|
||||
var i = y(n, t.data_bg_set);
|
||||
if (i) {
|
||||
var o = i.split("|"),
|
||||
a = o.map((function(n) {
|
||||
return "image-set(".concat(n, ")")
|
||||
}));
|
||||
n.style.backgroundImage = a.join(), "" === n.style.backgroundImage && (a = o.map((function(n) {
|
||||
return "-webkit-image-set(".concat(n, ")")
|
||||
})), n.style.backgroundImage = a.join()), K(n, t, e)
|
||||
}
|
||||
}(n, t, e)
|
||||
}(n, t, e) : function(n, t, e) {
|
||||
cn(n, t, e),
|
||||
function(n, t, e) {
|
||||
var i = Y[n.tagName];
|
||||
i && (i(n, t), Q(n, t, e))
|
||||
}(n, t, e)
|
||||
}(n, t, e)
|
||||
},
|
||||
un = function(n) {
|
||||
n.removeAttribute(u), n.removeAttribute(s), n.removeAttribute(d)
|
||||
},
|
||||
sn = function(n) {
|
||||
D(n, (function(n) {
|
||||
q(n, B)
|
||||
})), q(n, B)
|
||||
},
|
||||
dn = {
|
||||
IMG: sn,
|
||||
IFRAME: function(n) {
|
||||
q(n, V)
|
||||
},
|
||||
VIDEO: function(n) {
|
||||
H(n, (function(n) {
|
||||
q(n, V)
|
||||
})), q(n, F), n.load()
|
||||
},
|
||||
OBJECT: function(n) {
|
||||
q(n, J)
|
||||
}
|
||||
},
|
||||
fn = function(n, t) {
|
||||
(function(n) {
|
||||
var t = dn[n.tagName];
|
||||
t ? t(n) : function(n) {
|
||||
if (P(n)) {
|
||||
var t = S(n);
|
||||
n.style.backgroundImage = t.backgroundImage
|
||||
}
|
||||
}(n)
|
||||
})(n),
|
||||
function(n, t) {
|
||||
L(n) || O(n) || (M(n, t.class_entered), M(n, t.class_exited), M(n, t.class_applied), M(n, t.class_loading), M(n, t.class_loaded), M(n, t.class_error))
|
||||
}(n, t), A(n), U(n)
|
||||
},
|
||||
_n = ["IMG", "IFRAME", "VIDEO"],
|
||||
gn = function(n) {
|
||||
return n.use_native && "loading" in HTMLImageElement.prototype
|
||||
},
|
||||
vn = function(n, t, e) {
|
||||
n.forEach((function(n) {
|
||||
return function(n) {
|
||||
return n.isIntersecting || n.intersectionRatio > 0
|
||||
}(n) ? function(n, t, e, i) {
|
||||
var o = function(n) {
|
||||
return x.indexOf(k(n)) >= 0
|
||||
}(n);
|
||||
w(n, "entered"), N(n, e.class_entered), M(n, e.class_exited),
|
||||
function(n, t, e) {
|
||||
t.unobserve_entered && T(n, e)
|
||||
}(n, e, i), C(e.callback_enter, n, t, i), o || ln(n, e, i)
|
||||
}(n.target, n, t, e) : function(n, t, e, i) {
|
||||
L(n) || (N(n, e.class_exited), function(n, t, e, i) {
|
||||
e.cancel_on_exit && function(n) {
|
||||
return k(n) === v
|
||||
}(n) && "IMG" === n.tagName && (an(n), function(n) {
|
||||
D(n, (function(n) {
|
||||
un(n)
|
||||
})), un(n)
|
||||
}(n), sn(n), M(n, e.class_loading), R(i, -1), A(n), C(e.callback_cancel, n, t, i))
|
||||
}(n, t, e, i), C(e.callback_exit, n, t, i))
|
||||
}(n.target, n, t, e)
|
||||
}))
|
||||
},
|
||||
bn = function(n) {
|
||||
return Array.prototype.slice.call(n)
|
||||
},
|
||||
mn = function(n) {
|
||||
return n.container.querySelectorAll(n.elements_selector)
|
||||
},
|
||||
pn = function(n) {
|
||||
return function(n) {
|
||||
return k(n) === p
|
||||
}(n)
|
||||
},
|
||||
hn = function(n, t) {
|
||||
return function(n) {
|
||||
return bn(n).filter(L)
|
||||
}(n || mn(t))
|
||||
},
|
||||
En = function(n, e) {
|
||||
var o = c(n);
|
||||
this._settings = o, this.loadingCount = 0,
|
||||
function(n, t) {
|
||||
i && !gn(n) && (t._observer = new IntersectionObserver((function(e) {
|
||||
vn(e, n, t)
|
||||
}), function(n) {
|
||||
return {
|
||||
root: n.container === document ? null : n.container,
|
||||
rootMargin: n.thresholds || n.threshold + "px"
|
||||
}
|
||||
}(n)))
|
||||
}(o, this),
|
||||
function(n, e) {
|
||||
t && (e._onlineHandler = function() {
|
||||
! function(n, t) {
|
||||
var e;
|
||||
(e = mn(n), bn(e).filter(pn)).forEach((function(t) {
|
||||
M(t, n.class_error), A(t)
|
||||
})), t.update()
|
||||
}(n, e)
|
||||
}, window.addEventListener("online", e._onlineHandler))
|
||||
}(o, this), this.update(e)
|
||||
};
|
||||
return En.prototype = {
|
||||
update: function(n) {
|
||||
var t, o, a = this._settings,
|
||||
r = hn(n, a);
|
||||
G(this, r.length), !e && i ? gn(a) ? function(n, t, e) {
|
||||
n.forEach((function(n) {
|
||||
-1 !== _n.indexOf(n.tagName) && function(n, t, e) {
|
||||
n.setAttribute("loading", "lazy"), cn(n, t, e),
|
||||
function(n, t) {
|
||||
var e = Y[n.tagName];
|
||||
e && e(n, t)
|
||||
}(n, t), w(n, h)
|
||||
}(n, t, e)
|
||||
})), G(e, 0)
|
||||
}(r, a, this) : (o = r, function(n) {
|
||||
n.disconnect()
|
||||
}(t = this._observer), function(n, t) {
|
||||
t.forEach((function(t) {
|
||||
n.observe(t)
|
||||
}))
|
||||
}(t, o)) : this.loadAll(r)
|
||||
},
|
||||
destroy: function() {
|
||||
this._observer && this._observer.disconnect(), t && window.removeEventListener("online", this._onlineHandler), mn(this._settings).forEach((function(n) {
|
||||
U(n)
|
||||
})), delete this._observer, delete this._settings, delete this._onlineHandler, delete this.loadingCount, delete this.toLoadCount
|
||||
},
|
||||
loadAll: function(n) {
|
||||
var t = this,
|
||||
e = this._settings;
|
||||
hn(n, e).forEach((function(n) {
|
||||
T(n, t), ln(n, e, t)
|
||||
}))
|
||||
},
|
||||
restoreAll: function() {
|
||||
var n = this._settings;
|
||||
mn(n).forEach((function(t) {
|
||||
fn(t, n)
|
||||
}))
|
||||
}
|
||||
}, En.load = function(n, t) {
|
||||
var e = c(t);
|
||||
ln(n, e)
|
||||
}, En.resetStatus = function(n) {
|
||||
A(n)
|
||||
}, t && function(n, t) {
|
||||
if (t)
|
||||
if (t.length)
|
||||
for (var e, i = 0; e = t[i]; i += 1) l(n, e);
|
||||
else l(n, t)
|
||||
}(En, window.lazyLoadOptions), En
|
||||
}));
|
||||
173
assets/js/mailcheck.min.js
vendored
173
assets/js/mailcheck.min.js
vendored
@@ -1,173 +0,0 @@
|
||||
/*! mailcheck v1.1.2 @licence MIT */
|
||||
var Mailcheck = {
|
||||
domainThreshold: 2,
|
||||
secondLevelThreshold: 2,
|
||||
topLevelThreshold: 2,
|
||||
defaultDomains: ["msn.com", "bellsouth.net", "telus.net", "comcast.net", "optusnet.com.au", "earthlink.net", "qq.com", "sky.com", "icloud.com", "mac.com", "sympatico.ca", "googlemail.com", "att.net", "xtra.co.nz", "web.de", "cox.net", "gmail.com", "ymail.com", "aim.com", "rogers.com", "verizon.net", "rocketmail.com", "google.com", "optonline.net", "sbcglobal.net", "aol.com", "me.com", "btinternet.com", "charter.net", "shaw.ca"],
|
||||
defaultSecondLevelDomains: ["yahoo", "hotmail", "mail", "live", "outlook", "gmx"],
|
||||
defaultTopLevelDomains: ["com", "com.au", "com.tw", "ca", "co.nz", "co.uk", "de", "fr", "it", "ru", "net", "org", "edu", "gov", "jp", "nl", "kr", "se", "eu", "ie", "co.il", "us", "at", "be", "dk", "hk", "es", "gr", "ch", "no", "cz", "in", "net", "net.au", "info", "biz", "mil", "co.jp", "sg", "hu", "uk"],
|
||||
run: function(a) {
|
||||
a.domains = a.domains || Mailcheck.defaultDomains,
|
||||
a.secondLevelDomains = a.secondLevelDomains || Mailcheck.defaultSecondLevelDomains,
|
||||
a.topLevelDomains = a.topLevelDomains || Mailcheck.defaultTopLevelDomains,
|
||||
a.distanceFunction = a.distanceFunction || Mailcheck.sift4Distance;
|
||||
var b = function(a) {
|
||||
return a
|
||||
}
|
||||
, c = a.suggested || b
|
||||
, d = a.empty || b
|
||||
, e = Mailcheck.suggest(Mailcheck.encodeEmail(a.email), a.domains, a.secondLevelDomains, a.topLevelDomains, a.distanceFunction);
|
||||
return e ? c(e) : d()
|
||||
},
|
||||
suggest: function(a, b, c, d, e) {
|
||||
a = a.toLowerCase();
|
||||
var f = this.splitEmail(a);
|
||||
if (c && d && -1 !== c.indexOf(f.secondLevelDomain) && -1 !== d.indexOf(f.topLevelDomain))
|
||||
return !1;
|
||||
var g = this.findClosestDomain(f.domain, b, e, this.domainThreshold);
|
||||
if (g)
|
||||
return g == f.domain ? !1 : {
|
||||
address: f.address,
|
||||
domain: g,
|
||||
full: f.address + "@" + g
|
||||
};
|
||||
var h = this.findClosestDomain(f.secondLevelDomain, c, e, this.secondLevelThreshold)
|
||||
, i = this.findClosestDomain(f.topLevelDomain, d, e, this.topLevelThreshold);
|
||||
if (f.domain) {
|
||||
g = f.domain;
|
||||
var j = !1;
|
||||
if (h && h != f.secondLevelDomain && (g = g.replace(f.secondLevelDomain, h),
|
||||
j = !0),
|
||||
i && i != f.topLevelDomain && "" !== f.secondLevelDomain && (g = g.replace(new RegExp(f.topLevelDomain + "$"), i),
|
||||
j = !0),
|
||||
j)
|
||||
return {
|
||||
address: f.address,
|
||||
domain: g,
|
||||
full: f.address + "@" + g
|
||||
}
|
||||
}
|
||||
return !1
|
||||
},
|
||||
findClosestDomain: function(a, b, c, d) {
|
||||
d = d || this.topLevelThreshold;
|
||||
var e, f = 1 / 0, g = null;
|
||||
if (!a || !b)
|
||||
return !1;
|
||||
c || (c = this.sift4Distance);
|
||||
for (var h = 0; h < b.length; h++) {
|
||||
if (a === b[h])
|
||||
return a;
|
||||
e = c(a, b[h]),
|
||||
f > e && (f = e,
|
||||
g = b[h])
|
||||
}
|
||||
return d >= f && null !== g ? g : !1
|
||||
},
|
||||
sift4Distance: function(a, b, c) {
|
||||
if (void 0 === c && (c = 5),
|
||||
!a || !a.length)
|
||||
return b ? b.length : 0;
|
||||
if (!b || !b.length)
|
||||
return a.length;
|
||||
for (var d = a.length, e = b.length, f = 0, g = 0, h = 0, i = 0, j = 0, k = []; d > f && e > g; ) {
|
||||
if (a.charAt(f) == b.charAt(g)) {
|
||||
i++;
|
||||
for (var l = !1, m = 0; m < k.length; ) {
|
||||
var n = k[m];
|
||||
if (f <= n.c1 || g <= n.c2) {
|
||||
l = Math.abs(g - f) >= Math.abs(n.c2 - n.c1),
|
||||
l ? j++ : n.trans || (n.trans = !0,
|
||||
j++);
|
||||
break
|
||||
}
|
||||
f > n.c2 && g > n.c1 ? k.splice(m, 1) : m++
|
||||
}
|
||||
k.push({
|
||||
c1: f,
|
||||
c2: g,
|
||||
trans: l
|
||||
})
|
||||
} else {
|
||||
h += i,
|
||||
i = 0,
|
||||
f != g && (f = g = Math.min(f, g));
|
||||
for (var o = 0; c > o && (d > f + o || e > g + o); o++) {
|
||||
if (d > f + o && a.charAt(f + o) == b.charAt(g)) {
|
||||
f += o - 1,
|
||||
g--;
|
||||
break
|
||||
}
|
||||
if (e > g + o && a.charAt(f) == b.charAt(g + o)) {
|
||||
f--,
|
||||
g += o - 1;
|
||||
break
|
||||
}
|
||||
}
|
||||
}
|
||||
f++,
|
||||
g++,
|
||||
(f >= d || g >= e) && (h += i,
|
||||
i = 0,
|
||||
f = g = Math.min(f, g))
|
||||
}
|
||||
return h += i,
|
||||
Math.round(Math.max(d, e) - h + j)
|
||||
},
|
||||
splitEmail: function(a) {
|
||||
a = null !== a ? a.replace(/^\s*/, "").replace(/\s*$/, "") : null;
|
||||
var b = a.split("@");
|
||||
if (b.length < 2)
|
||||
return !1;
|
||||
for (var c = 0; c < b.length; c++)
|
||||
if ("" === b[c])
|
||||
return !1;
|
||||
var d = b.pop()
|
||||
, e = d.split(".")
|
||||
, f = ""
|
||||
, g = "";
|
||||
if (0 === e.length)
|
||||
return !1;
|
||||
if (1 == e.length)
|
||||
g = e[0];
|
||||
else {
|
||||
f = e[0];
|
||||
for (var h = 1; h < e.length; h++)
|
||||
g += e[h] + ".";
|
||||
g = g.substring(0, g.length - 1)
|
||||
}
|
||||
return {
|
||||
topLevelDomain: g,
|
||||
secondLevelDomain: f,
|
||||
domain: d,
|
||||
address: b.join("@")
|
||||
}
|
||||
},
|
||||
encodeEmail: function(a) {
|
||||
var b = encodeURI(a);
|
||||
return b = b.replace("%20", " ").replace("%25", "%").replace("%5E", "^").replace("%60", "`").replace("%7B", "{").replace("%7C", "|").replace("%7D", "}")
|
||||
}
|
||||
};
|
||||
"undefined" != typeof module && module.exports && (module.exports = Mailcheck),
|
||||
"function" == typeof define && define.amd && define("mailcheck", [], function() {
|
||||
return Mailcheck
|
||||
}),
|
||||
"undefined" != typeof window && window.jQuery && !function(a) {
|
||||
a.fn.mailcheck = function(a) {
|
||||
var b = this;
|
||||
if (a.suggested) {
|
||||
var c = a.suggested;
|
||||
a.suggested = function(a) {
|
||||
c(b, a)
|
||||
}
|
||||
}
|
||||
if (a.empty) {
|
||||
var d = a.empty;
|
||||
a.empty = function() {
|
||||
d.call(null, b)
|
||||
}
|
||||
}
|
||||
a.email = this.val(),
|
||||
Mailcheck.run(a)
|
||||
}
|
||||
}(jQuery);
|
||||
94
assets/js/order-attribution.min.js
vendored
94
assets/js/order-attribution.min.js
vendored
@@ -1,94 +0,0 @@
|
||||
!function(t) {
|
||||
"use strict";
|
||||
const e = t.params
|
||||
, n = (document.querySelector.bind(document),
|
||||
(t, e) => e.split(".").reduce( (t, e) => t && t[e], t))
|
||||
, s = () => null
|
||||
, i = t => null === t || t === undefined ? "" : t
|
||||
, o = "wc/store/checkout";
|
||||
function a(t) {
|
||||
window.wp && window.wp.data && window.wp.data.dispatch && window.wc && window.wc.wcBlocksData && window.wp.data.dispatch(window.wc.wcBlocksData.CHECKOUT_STORE_KEY).setExtensionData("woocommerce/order-attribution", t, !0)
|
||||
}
|
||||
function r() {
|
||||
return "undefined" != typeof sbjs
|
||||
}
|
||||
function c() {
|
||||
if (window.wp && window.wp.data && "function" == typeof window.wp.data.subscribe) {
|
||||
const e = window.wp.data.subscribe(function() {
|
||||
e(),
|
||||
a(t.getAttributionData())
|
||||
}, o)
|
||||
}
|
||||
}
|
||||
t.getAttributionData = function() {
|
||||
const i = e.allowTracking && r() ? n : s
|
||||
, o = r() ? sbjs.get : {}
|
||||
, a = Object.entries(t.fields).map( ([t,e]) => [t, i(o, e)]);
|
||||
return Object.fromEntries(a)
|
||||
}
|
||||
,
|
||||
t.setOrderTracking = function(n) {
|
||||
if (e.allowTracking = n,
|
||||
n) {
|
||||
if (!r())
|
||||
return;
|
||||
sbjs.init({
|
||||
lifetime: Number(e.lifetime),
|
||||
session_length: Number(e.session),
|
||||
base64: Boolean(e.base64),
|
||||
timezone_offset: "0"
|
||||
})
|
||||
} else
|
||||
!function() {
|
||||
const t = window.location.hostname;
|
||||
["sbjs_current", "sbjs_current_add", "sbjs_first", "sbjs_first_add", "sbjs_session", "sbjs_udata", "sbjs_migrations", "sbjs_promo"].forEach(e => {
|
||||
document.cookie = `${e}=; path=/; max-age=-999; domain=.${t};`
|
||||
}
|
||||
)
|
||||
}();
|
||||
const s = t.getAttributionData();
|
||||
!function(t) {
|
||||
for (const e of document.querySelectorAll("wc-order-attribution-inputs"))
|
||||
e.values = t
|
||||
}(s),
|
||||
a(s)
|
||||
}
|
||||
,
|
||||
t.setOrderTracking(e.allowTracking),
|
||||
"loading" === document.readyState ? document.addEventListener("DOMContentLoaded", c) : c(),
|
||||
window.customElements.define("wc-order-attribution-inputs", class extends HTMLElement {
|
||||
constructor() {
|
||||
if (super(),
|
||||
this._fieldNames = Object.keys(t.fields),
|
||||
this.hasOwnProperty("_values")) {
|
||||
let t = this.values;
|
||||
delete this.values,
|
||||
this.values = t || {}
|
||||
}
|
||||
}
|
||||
connectedCallback() {
|
||||
this.innerHTML = "";
|
||||
const t = new DocumentFragment;
|
||||
for (const n of this._fieldNames) {
|
||||
const s = document.createElement("input");
|
||||
s.type = "hidden",
|
||||
s.name = `${e.prefix}${n}`,
|
||||
s.value = i(this.values && this.values[n] || ""),
|
||||
t.appendChild(s)
|
||||
}
|
||||
this.appendChild(t)
|
||||
}
|
||||
set values(t) {
|
||||
if (this._values = t,
|
||||
this.isConnected)
|
||||
for (const t of this._fieldNames) {
|
||||
const n = this.querySelector(`input[name="${e.prefix}${t}"]`);
|
||||
n ? n.value = i(this.values[t]) : console.warn(`Field "${t}" not found. ` + "Most likely, the '<wc-order-attribution-inputs>' element was manipulated.")
|
||||
}
|
||||
}
|
||||
get values() {
|
||||
return this._values
|
||||
}
|
||||
}
|
||||
)
|
||||
}(window.wc_order_attribution);
|
||||
1621
assets/js/owl.carousel.min.js
vendored
1621
assets/js/owl.carousel.min.js
vendored
File diff suppressed because it is too large
Load Diff
88
assets/js/punycode.min.js
vendored
88
assets/js/punycode.min.js
vendored
@@ -1,88 +0,0 @@
|
||||
"use strict";
|
||||
var punycode = new function() {
|
||||
this.utf16 = {
|
||||
decode: function(r) {
|
||||
for (var e, o, t = [], n = 0, f = r.length; n < f; ) {
|
||||
if (55296 == (63488 & (e = r.charCodeAt(n++)))) {
|
||||
if (o = r.charCodeAt(n++),
|
||||
55296 != (64512 & e) || 56320 != (64512 & o))
|
||||
throw new RangeError("UTF-16(decode): Illegal UTF-16 sequence");
|
||||
e = ((1023 & e) << 10) + (1023 & o) + 65536
|
||||
}
|
||||
t.push(e)
|
||||
}
|
||||
return t
|
||||
},
|
||||
encode: function(r) {
|
||||
for (var e, o = [], t = 0, n = r.length; t < n; ) {
|
||||
if (55296 == (63488 & (e = r[t++])))
|
||||
throw new RangeError("UTF-16(encode): Illegal UTF-16 value");
|
||||
65535 < e && (e -= 65536,
|
||||
o.push(String.fromCharCode(e >>> 10 & 1023 | 55296)),
|
||||
e = 56320 | 1023 & e),
|
||||
o.push(String.fromCharCode(e))
|
||||
}
|
||||
return o.join("")
|
||||
}
|
||||
};
|
||||
var v = 36
|
||||
, A = 2147483647;
|
||||
this.decode = function(r, e) {
|
||||
var o, t, n, f, h, a, i, c, l = [], u = [], d = r.length, s = 128, g = 0, C = 72, p = r.lastIndexOf("-");
|
||||
for (p < 0 && (p = 0),
|
||||
t = 0; t < p; ++t) {
|
||||
if (e && (u[l.length] = r.charCodeAt(t) - 65 < 26),
|
||||
128 <= r.charCodeAt(t))
|
||||
throw new RangeError("Illegal input >= 0x80");
|
||||
l.push(r.charCodeAt(t))
|
||||
}
|
||||
for (n = 0 < p ? p + 1 : 0; n < d; ) {
|
||||
for (f = g,
|
||||
h = 1,
|
||||
a = v; ; a += v) {
|
||||
if (d <= n)
|
||||
return;
|
||||
if (c = r.charCodeAt(n++),
|
||||
v <= (c = c - 48 < 10 ? c - 22 : c - 65 < 26 ? c - 65 : c - 97 < 26 ? c - 97 : v))
|
||||
return;
|
||||
if (c > Math.floor((A - g) / h))
|
||||
return;
|
||||
if (g += c * h,
|
||||
c < (c = a <= C ? 1 : C + 26 <= a ? 26 : a - C))
|
||||
break;
|
||||
if (h > Math.floor(A / (v - c)))
|
||||
return;
|
||||
h *= v - c
|
||||
}
|
||||
if (C = function(r, e, o) {
|
||||
var t;
|
||||
for (r = o ? Math.floor(r / 700) : r >> 1,
|
||||
r += Math.floor(r / e),
|
||||
t = 0; 455 < r; t += v)
|
||||
r = Math.floor(r / 35);
|
||||
return Math.floor(t + 36 * r / (r + 38))
|
||||
}(g - f, o = l.length + 1, 0 === f),
|
||||
Math.floor(g / o) > A - s)
|
||||
return;
|
||||
s += Math.floor(g / o),
|
||||
g %= o,
|
||||
e && u.splice(g, 0, r.charCodeAt(n - 1) - 65 < 26),
|
||||
l.splice(g, 0, s),
|
||||
g++
|
||||
}
|
||||
if (e)
|
||||
for (g = 0,
|
||||
i = l.length; g < i; g++)
|
||||
u[g] && (l[g] = String.fromCharCode(l[g]).toUpperCase().charCodeAt(0));
|
||||
return this.utf16.encode(l)
|
||||
}
|
||||
,
|
||||
this.toUnicode = function(r) {
|
||||
for (var e = r.split("."), o = [], t = 0; t < e.length; ++t) {
|
||||
var n = e[t];
|
||||
o.push(n.match(/^xn--/) ? punycode.decode(n.slice(4)) : n)
|
||||
}
|
||||
return o.join(".")
|
||||
}
|
||||
}
|
||||
;
|
||||
0
assets/js/share-link.min.js
vendored
0
assets/js/share-link.min.js
vendored
1316
assets/js/slick.min.js
vendored
1316
assets/js/slick.min.js
vendored
File diff suppressed because it is too large
Load Diff
665
assets/js/sourcebuster.min.js
vendored
665
assets/js/sourcebuster.min.js
vendored
@@ -1,665 +0,0 @@
|
||||
!function(e) {
|
||||
if ("object" == typeof exports && "undefined" != typeof module)
|
||||
module.exports = e();
|
||||
else if ("function" == typeof define && define.amd)
|
||||
define([], e);
|
||||
else {
|
||||
var t;
|
||||
"undefined" != typeof window ? t = window : "undefined" != typeof global ? t = global : "undefined" != typeof self && (t = self),
|
||||
t.sbjs = e()
|
||||
}
|
||||
}(function() {
|
||||
return function e(t, r, n) {
|
||||
function a(s, o) {
|
||||
if (!r[s]) {
|
||||
if (!t[s]) {
|
||||
var c = "function" == typeof require && require;
|
||||
if (!o && c)
|
||||
return c(s, !0);
|
||||
if (i)
|
||||
return i(s, !0);
|
||||
var u = new Error("Cannot find module '" + s + "'");
|
||||
throw u.code = "MODULE_NOT_FOUND",
|
||||
u
|
||||
}
|
||||
var p = r[s] = {
|
||||
exports: {}
|
||||
};
|
||||
t[s][0].call(p.exports, function(e) {
|
||||
var r = t[s][1][e];
|
||||
return a(r || e)
|
||||
}, p, p.exports, e, t, r, n)
|
||||
}
|
||||
return r[s].exports
|
||||
}
|
||||
for (var i = "function" == typeof require && require, s = 0; s < n.length; s++)
|
||||
a(n[s]);
|
||||
return a
|
||||
}({
|
||||
1: [function(e, t, r) {
|
||||
"use strict";
|
||||
var n = e("./init")
|
||||
, a = {
|
||||
init: function(e) {
|
||||
this.get = n(e),
|
||||
e && e.callback && "function" == typeof e.callback && e.callback(this.get)
|
||||
}
|
||||
};
|
||||
t.exports = a
|
||||
}
|
||||
, {
|
||||
"./init": 6
|
||||
}],
|
||||
2: [function(e, t, r) {
|
||||
"use strict";
|
||||
var n = e("./terms")
|
||||
, a = e("./helpers/utils")
|
||||
, i = {
|
||||
containers: {
|
||||
current: "sbjs_current",
|
||||
current_extra: "sbjs_current_add",
|
||||
first: "sbjs_first",
|
||||
first_extra: "sbjs_first_add",
|
||||
session: "sbjs_session",
|
||||
udata: "sbjs_udata",
|
||||
promocode: "sbjs_promo"
|
||||
},
|
||||
service: {
|
||||
migrations: "sbjs_migrations"
|
||||
},
|
||||
delimiter: "|||",
|
||||
aliases: {
|
||||
main: {
|
||||
type: "typ",
|
||||
source: "src",
|
||||
medium: "mdm",
|
||||
campaign: "cmp",
|
||||
content: "cnt",
|
||||
term: "trm",
|
||||
id: "id",
|
||||
platform: "plt",
|
||||
format: "fmt",
|
||||
tactic: "tct"
|
||||
},
|
||||
extra: {
|
||||
fire_date: "fd",
|
||||
entrance_point: "ep",
|
||||
referer: "rf"
|
||||
},
|
||||
session: {
|
||||
pages_seen: "pgs",
|
||||
current_page: "cpg"
|
||||
},
|
||||
udata: {
|
||||
visits: "vst",
|
||||
ip: "uip",
|
||||
agent: "uag"
|
||||
},
|
||||
promo: "code"
|
||||
},
|
||||
pack: {
|
||||
main: function(e) {
|
||||
return i.aliases.main.type + "=" + e.type + i.delimiter + i.aliases.main.source + "=" + e.source + i.delimiter + i.aliases.main.medium + "=" + e.medium + i.delimiter + i.aliases.main.campaign + "=" + e.campaign + i.delimiter + i.aliases.main.content + "=" + e.content + i.delimiter + i.aliases.main.term + "=" + e.term + i.delimiter + i.aliases.main.id + "=" + e.id + i.delimiter + i.aliases.main.platform + "=" + e.platform + i.delimiter + i.aliases.main.format + "=" + e.format + i.delimiter + i.aliases.main.tactic + "=" + e.tactic
|
||||
},
|
||||
extra: function(e) {
|
||||
return i.aliases.extra.fire_date + "=" + a.setDate(new Date, e) + i.delimiter + i.aliases.extra.entrance_point + "=" + document.location.href + i.delimiter + i.aliases.extra.referer + "=" + (document.referrer || n.none)
|
||||
},
|
||||
user: function(e, t) {
|
||||
return i.aliases.udata.visits + "=" + e + i.delimiter + i.aliases.udata.ip + "=" + t + i.delimiter + i.aliases.udata.agent + "=" + navigator.userAgent
|
||||
},
|
||||
session: function(e) {
|
||||
return i.aliases.session.pages_seen + "=" + e + i.delimiter + i.aliases.session.current_page + "=" + document.location.href
|
||||
},
|
||||
promo: function(e) {
|
||||
return i.aliases.promo + "=" + a.setLeadingZeroToInt(a.randomInt(e.min, e.max), e.max.toString().length)
|
||||
}
|
||||
}
|
||||
};
|
||||
t.exports = i
|
||||
}
|
||||
, {
|
||||
"./helpers/utils": 5,
|
||||
"./terms": 9
|
||||
}],
|
||||
3: [function(e, t, r) {
|
||||
"use strict";
|
||||
var n = e("../data").delimiter;
|
||||
t.exports = {
|
||||
useBase64: !1,
|
||||
setBase64Flag: function(e) {
|
||||
this.useBase64 = e
|
||||
},
|
||||
encodeData: function(e) {
|
||||
return encodeURIComponent(e).replace(/\!/g, "%21").replace(/\~/g, "%7E").replace(/\*/g, "%2A").replace(/\'/g, "%27").replace(/\(/g, "%28").replace(/\)/g, "%29")
|
||||
},
|
||||
decodeData: function(e) {
|
||||
try {
|
||||
return decodeURIComponent(e).replace(/\%21/g, "!").replace(/\%7E/g, "~").replace(/\%2A/g, "*").replace(/\%27/g, "'").replace(/\%28/g, "(").replace(/\%29/g, ")")
|
||||
} catch (t) {
|
||||
try {
|
||||
return unescape(e)
|
||||
} catch (r) {
|
||||
return ""
|
||||
}
|
||||
}
|
||||
},
|
||||
set: function(e, t, r, n, a) {
|
||||
var i, s;
|
||||
if (r) {
|
||||
var o = new Date;
|
||||
o.setTime(o.getTime() + 60 * r * 1e3),
|
||||
i = "; expires=" + o.toGMTString()
|
||||
} else
|
||||
i = "";
|
||||
s = n && !a ? ";domain=." + n : "";
|
||||
var c = this.encodeData(t);
|
||||
this.useBase64 && (c = btoa(c).replace(/=+$/, "")),
|
||||
document.cookie = this.encodeData(e) + "=" + c + i + s + "; path=/"
|
||||
},
|
||||
get: function(e) {
|
||||
for (var t = this.encodeData(e) + "=", r = document.cookie.split(";"), n = 0; n < r.length; n++) {
|
||||
for (var a = r[n]; " " === a.charAt(0); )
|
||||
a = a.substring(1, a.length);
|
||||
if (0 === a.indexOf(t)) {
|
||||
var i = a.substring(t.length, a.length);
|
||||
if (/^[A-Za-z0-9+/]+$/.test(i))
|
||||
try {
|
||||
i = atob(i.padEnd(4 * Math.ceil(i.length / 4), "="))
|
||||
} catch (s) {}
|
||||
return this.decodeData(i)
|
||||
}
|
||||
}
|
||||
return null
|
||||
},
|
||||
destroy: function(e, t, r) {
|
||||
this.set(e, "", -1, t, r)
|
||||
},
|
||||
parse: function(e) {
|
||||
var t = []
|
||||
, r = {};
|
||||
if ("string" == typeof e)
|
||||
t.push(e);
|
||||
else
|
||||
for (var a in e)
|
||||
e.hasOwnProperty(a) && t.push(e[a]);
|
||||
for (var i = 0; i < t.length; i++) {
|
||||
var s;
|
||||
r[this.unsbjs(t[i])] = {},
|
||||
s = this.get(t[i]) ? this.get(t[i]).split(n) : [];
|
||||
for (var o = 0; o < s.length; o++) {
|
||||
var c = s[o].split("=")
|
||||
, u = c.splice(0, 1);
|
||||
u.push(c.join("=")),
|
||||
r[this.unsbjs(t[i])][u[0]] = this.decodeData(u[1])
|
||||
}
|
||||
}
|
||||
return r
|
||||
},
|
||||
unsbjs: function(e) {
|
||||
return e.replace("sbjs_", "")
|
||||
}
|
||||
}
|
||||
}
|
||||
, {
|
||||
"../data": 2
|
||||
}],
|
||||
4: [function(e, t, r) {
|
||||
"use strict";
|
||||
t.exports = {
|
||||
parse: function(e) {
|
||||
for (var t = this.parseOptions, r = t.parser[t.strictMode ? "strict" : "loose"].exec(e), n = {}, a = 14; a--; )
|
||||
n[t.key[a]] = r[a] || "";
|
||||
return n[t.q.name] = {},
|
||||
n[t.key[12]].replace(t.q.parser, function(e, r, a) {
|
||||
r && (n[t.q.name][r] = a)
|
||||
}),
|
||||
n
|
||||
},
|
||||
parseOptions: {
|
||||
strictMode: !1,
|
||||
key: ["source", "protocol", "authority", "userInfo", "user", "password", "host", "port", "relative", "path", "directory", "file", "query", "anchor"],
|
||||
q: {
|
||||
name: "queryKey",
|
||||
parser: /(?:^|&)([^&=]*)=?([^&]*)/g
|
||||
},
|
||||
parser: {
|
||||
strict: /^(?:([^:\/?#]+):)?(?:\/\/((?:(([^:@]*)(?::([^:@]*))?)?@)?([^:\/?#]*)(?::(\d*))?))?((((?:[^?#\/]*\/)*)([^?#]*))(?:\?([^#]*))?(?:#(.*))?)/,
|
||||
loose: /^(?:(?![^:@]+:[^:@\/]*@)([^:\/?#.]+):)?(?:\/\/)?((?:(([^:@]*)(?::([^:@]*))?)?@)?([^:\/?#]*)(?::(\d*))?)(((\/(?:[^?#](?![^?#\/]*\.[^?#\/.]+(?:[?#]|$)))*\/?)?([^?#\/]*))(?:\?([^#]*))?(?:#(.*))?)/
|
||||
}
|
||||
},
|
||||
getParam: function(e) {
|
||||
for (var t = {}, r = (e || window.location.search.substring(1)).split("&"), n = 0; n < r.length; n++) {
|
||||
var a = r[n].split("=");
|
||||
if ("undefined" == typeof t[a[0]])
|
||||
t[a[0]] = a[1];
|
||||
else if ("string" == typeof t[a[0]]) {
|
||||
var i = [t[a[0]], a[1]];
|
||||
t[a[0]] = i
|
||||
} else
|
||||
t[a[0]].push(a[1])
|
||||
}
|
||||
return t
|
||||
},
|
||||
getHost: function(e) {
|
||||
return this.parse(e).host.replace("www.", "")
|
||||
}
|
||||
}
|
||||
}
|
||||
, {}],
|
||||
5: [function(e, t, r) {
|
||||
"use strict";
|
||||
t.exports = {
|
||||
escapeRegexp: function(e) {
|
||||
return e.replace(/[\-\[\]\/\{\}\(\)\*\+\?\.\\\^\$\|]/g, "\\$&")
|
||||
},
|
||||
setDate: function(e, t) {
|
||||
var r = e.getTimezoneOffset() / 60
|
||||
, n = e.getHours()
|
||||
, a = t || 0 === t ? t : -r;
|
||||
return e.setHours(n + r + a),
|
||||
e.getFullYear() + "-" + this.setLeadingZeroToInt(e.getMonth() + 1, 2) + "-" + this.setLeadingZeroToInt(e.getDate(), 2) + " " + this.setLeadingZeroToInt(e.getHours(), 2) + ":" + this.setLeadingZeroToInt(e.getMinutes(), 2) + ":" + this.setLeadingZeroToInt(e.getSeconds(), 2)
|
||||
},
|
||||
setLeadingZeroToInt: function(e, t) {
|
||||
for (var r = e + ""; r.length < t; )
|
||||
r = "0" + r;
|
||||
return r
|
||||
},
|
||||
randomInt: function(e, t) {
|
||||
return Math.floor(Math.random() * (t - e + 1)) + e
|
||||
}
|
||||
}
|
||||
}
|
||||
, {}],
|
||||
6: [function(e, t, r) {
|
||||
"use strict";
|
||||
var n = e("./data")
|
||||
, a = e("./terms")
|
||||
, i = e("./helpers/cookies")
|
||||
, s = e("./helpers/uri")
|
||||
, o = e("./helpers/utils")
|
||||
, c = e("./params")
|
||||
, u = e("./migrations");
|
||||
t.exports = function(e) {
|
||||
var t, r, p, f, m, d, l, g, h, y, _, v, b, x = c.fetch(e), k = s.getParam(), w = x.domain.host, q = x.domain.isolate, I = x.lifetime;
|
||||
function j(e) {
|
||||
switch (e) {
|
||||
case a.traffic.utm:
|
||||
t = a.traffic.utm,
|
||||
r = "undefined" != typeof k.utm_source ? k.utm_source : "undefined" != typeof k.gclid ? "google" : "undefined" != typeof k.yclid ? "yandex" : a.none,
|
||||
p = "undefined" != typeof k.utm_medium ? k.utm_medium : "undefined" != typeof k.gclid ? "cpc" : "undefined" != typeof k.yclid ? "cpc" : a.none,
|
||||
f = "undefined" != typeof k.utm_campaign ? k.utm_campaign : "undefined" != typeof k[x.campaign_param] ? k[x.campaign_param] : "undefined" != typeof k.gclid ? "google_cpc" : "undefined" != typeof k.yclid ? "yandex_cpc" : a.none,
|
||||
m = "undefined" != typeof k.utm_content ? k.utm_content : "undefined" != typeof k[x.content_param] ? k[x.content_param] : a.none,
|
||||
l = k.utm_id || a.none,
|
||||
g = k.utm_source_platform || a.none,
|
||||
h = k.utm_creative_format || a.none,
|
||||
y = k.utm_marketing_tactic || a.none,
|
||||
d = "undefined" != typeof k.utm_term ? k.utm_term : "undefined" != typeof k[x.term_param] ? k[x.term_param] : function() {
|
||||
var e = document.referrer;
|
||||
if (k.utm_term)
|
||||
return k.utm_term;
|
||||
if (!(e && s.parse(e).host && s.parse(e).host.match(/^(?:.*\.)?yandex\..{2,9}$/i)))
|
||||
return !1;
|
||||
try {
|
||||
return s.getParam(s.parse(document.referrer).query).text
|
||||
} catch (t) {
|
||||
return !1
|
||||
}
|
||||
}() || a.none;
|
||||
break;
|
||||
case a.traffic.organic:
|
||||
t = a.traffic.organic,
|
||||
r = r || s.getHost(document.referrer),
|
||||
p = a.referer.organic,
|
||||
f = a.none,
|
||||
m = a.none,
|
||||
d = a.none,
|
||||
l = a.none,
|
||||
g = a.none,
|
||||
h = a.none,
|
||||
y = a.none;
|
||||
break;
|
||||
case a.traffic.referral:
|
||||
t = a.traffic.referral,
|
||||
r = r || s.getHost(document.referrer),
|
||||
p = p || a.referer.referral,
|
||||
f = a.none,
|
||||
m = s.parse(document.referrer).path,
|
||||
d = a.none,
|
||||
l = a.none,
|
||||
g = a.none,
|
||||
h = a.none,
|
||||
y = a.none;
|
||||
break;
|
||||
case a.traffic.typein:
|
||||
t = a.traffic.typein,
|
||||
r = x.typein_attributes.source,
|
||||
p = x.typein_attributes.medium,
|
||||
f = a.none,
|
||||
m = a.none,
|
||||
d = a.none,
|
||||
l = a.none,
|
||||
g = a.none,
|
||||
h = a.none,
|
||||
y = a.none;
|
||||
break;
|
||||
default:
|
||||
t = a.oops,
|
||||
r = a.oops,
|
||||
p = a.oops,
|
||||
f = a.oops,
|
||||
m = a.oops,
|
||||
d = a.oops,
|
||||
l = a.oops,
|
||||
g = a.oops,
|
||||
h = a.oops,
|
||||
y = a.oops
|
||||
}
|
||||
var i = {
|
||||
type: t,
|
||||
source: r,
|
||||
medium: p,
|
||||
campaign: f,
|
||||
content: m,
|
||||
term: d,
|
||||
id: l,
|
||||
platform: g,
|
||||
format: h,
|
||||
tactic: y
|
||||
};
|
||||
return n.pack.main(i)
|
||||
}
|
||||
function R(e) {
|
||||
var t = document.referrer;
|
||||
switch (e) {
|
||||
case a.traffic.organic:
|
||||
return !!t && H(t) && function(e) {
|
||||
var t = new RegExp("^(?:.*\\.)?" + o.escapeRegexp("yandex") + "\\..{2,9}$")
|
||||
, n = new RegExp(".*" + o.escapeRegexp("text") + "=.*")
|
||||
, a = new RegExp("^(?:www\\.)?" + o.escapeRegexp("google") + "\\..{2,9}$");
|
||||
if (s.parse(e).query && s.parse(e).host.match(t) && s.parse(e).query.match(n))
|
||||
return r = "yandex",
|
||||
!0;
|
||||
if (s.parse(e).host.match(a))
|
||||
return r = "google",
|
||||
!0;
|
||||
if (!s.parse(e).query)
|
||||
return !1;
|
||||
for (var i = 0; i < x.organics.length; i++) {
|
||||
if (s.parse(e).host.match(new RegExp("^(?:.*\\.)?" + o.escapeRegexp(x.organics[i].host) + "$","i")) && s.parse(e).query.match(new RegExp(".*" + o.escapeRegexp(x.organics[i].param) + "=.*","i")))
|
||||
return r = x.organics[i].display || x.organics[i].host,
|
||||
!0;
|
||||
if (i + 1 === x.organics.length)
|
||||
return !1
|
||||
}
|
||||
}(t);
|
||||
case a.traffic.referral:
|
||||
return !!t && H(t) && function(e) {
|
||||
if (!(x.referrals.length > 0))
|
||||
return r = s.getHost(e),
|
||||
!0;
|
||||
for (var t = 0; t < x.referrals.length; t++) {
|
||||
if (s.parse(e).host.match(new RegExp("^(?:.*\\.)?" + o.escapeRegexp(x.referrals[t].host) + "$","i")))
|
||||
return r = x.referrals[t].display || x.referrals[t].host,
|
||||
p = x.referrals[t].medium || a.referer.referral,
|
||||
!0;
|
||||
if (t + 1 === x.referrals.length)
|
||||
return r = s.getHost(e),
|
||||
!0
|
||||
}
|
||||
}(t);
|
||||
default:
|
||||
return !1
|
||||
}
|
||||
}
|
||||
function H(e) {
|
||||
if (x.domain) {
|
||||
if (q)
|
||||
return s.getHost(e) !== s.getHost(w);
|
||||
var t = new RegExp("^(?:.*\\.)?" + o.escapeRegexp(w) + "$","i");
|
||||
return !s.getHost(e).match(t)
|
||||
}
|
||||
return s.getHost(e) !== s.getHost(document.location.href)
|
||||
}
|
||||
function D() {
|
||||
i.set(n.containers.current_extra, n.pack.extra(x.timezone_offset), I, w, q),
|
||||
i.get(n.containers.first_extra) || i.set(n.containers.first_extra, n.pack.extra(x.timezone_offset), I, w, q)
|
||||
}
|
||||
return i.setBase64Flag(x.base64),
|
||||
u.go(I, w, q),
|
||||
i.set(n.containers.current, function() {
|
||||
var e;
|
||||
if ("undefined" != typeof k.utm_source || "undefined" != typeof k.utm_medium || "undefined" != typeof k.utm_campaign || "undefined" != typeof k.utm_content || "undefined" != typeof k.utm_term || "undefined" != typeof k.utm_id || "undefined" != typeof k.utm_source_platform || "undefined" != typeof k.utm_creative_format || "undefined" != typeof k.utm_marketing_tactic || "undefined" != typeof k.gclid || "undefined" != typeof k.yclid || "undefined" != typeof k[x.campaign_param] || "undefined" != typeof k[x.term_param] || "undefined" != typeof k[x.content_param])
|
||||
D(),
|
||||
e = j(a.traffic.utm);
|
||||
else if (R(a.traffic.organic))
|
||||
D(),
|
||||
e = j(a.traffic.organic);
|
||||
else if (!i.get(n.containers.session) && R(a.traffic.referral))
|
||||
D(),
|
||||
e = j(a.traffic.referral);
|
||||
else {
|
||||
if (i.get(n.containers.first) || i.get(n.containers.current))
|
||||
return i.get(n.containers.current);
|
||||
D(),
|
||||
e = j(a.traffic.typein)
|
||||
}
|
||||
return e
|
||||
}(), I, w, q),
|
||||
i.get(n.containers.first) || i.set(n.containers.first, i.get(n.containers.current), I, w, q),
|
||||
i.get(n.containers.udata) ? (_ = parseInt(i.parse(n.containers.udata)[i.unsbjs(n.containers.udata)][n.aliases.udata.visits]) || 1,
|
||||
_ = i.get(n.containers.session) ? _ : _ + 1,
|
||||
v = n.pack.user(_, x.user_ip)) : (_ = 1,
|
||||
v = n.pack.user(_, x.user_ip)),
|
||||
i.set(n.containers.udata, v, I, w, q),
|
||||
i.get(n.containers.session) ? (b = parseInt(i.parse(n.containers.session)[i.unsbjs(n.containers.session)][n.aliases.session.pages_seen]) || 1,
|
||||
b += 1) : b = 1,
|
||||
i.set(n.containers.session, n.pack.session(b), x.session_length, w, q),
|
||||
x.promocode && !i.get(n.containers.promocode) && i.set(n.containers.promocode, n.pack.promo(x.promocode), I, w, q),
|
||||
i.parse(n.containers)
|
||||
}
|
||||
}
|
||||
, {
|
||||
"./data": 2,
|
||||
"./helpers/cookies": 3,
|
||||
"./helpers/uri": 4,
|
||||
"./helpers/utils": 5,
|
||||
"./migrations": 7,
|
||||
"./params": 8,
|
||||
"./terms": 9
|
||||
}],
|
||||
7: [function(e, t, r) {
|
||||
"use strict";
|
||||
var n = e("./data")
|
||||
, a = e("./helpers/cookies");
|
||||
t.exports = {
|
||||
go: function(e, t, r) {
|
||||
var i, s = this.migrations, o = {
|
||||
l: e,
|
||||
d: t,
|
||||
i: r
|
||||
};
|
||||
if (a.get(n.containers.first) || a.get(n.service.migrations)) {
|
||||
if (!a.get(n.service.migrations))
|
||||
for (i = 0; i < s.length; i++)
|
||||
s[i].go(s[i].id, o)
|
||||
} else {
|
||||
var c = [];
|
||||
for (i = 0; i < s.length; i++)
|
||||
c.push(s[i].id);
|
||||
var u = "";
|
||||
for (i = 0; i < c.length; i++)
|
||||
u += c[i] + "=1",
|
||||
i < c.length - 1 && (u += n.delimiter);
|
||||
a.set(n.service.migrations, u, o.l, o.d, o.i)
|
||||
}
|
||||
},
|
||||
migrations: [{
|
||||
id: "1418474375998",
|
||||
version: "1.0.0-beta",
|
||||
go: function(e, t) {
|
||||
var r = e + "=1"
|
||||
, i = e + "=0"
|
||||
, s = function(e, t, r) {
|
||||
return t || r ? e : n.delimiter
|
||||
};
|
||||
try {
|
||||
var o = [];
|
||||
for (var c in n.containers)
|
||||
n.containers.hasOwnProperty(c) && o.push(n.containers[c]);
|
||||
for (var u = 0; u < o.length; u++)
|
||||
if (a.get(o[u])) {
|
||||
var p = a.get(o[u]).replace(/(\|)?\|(\|)?/g, s);
|
||||
a.destroy(o[u], t.d, t.i),
|
||||
a.destroy(o[u], t.d, !t.i),
|
||||
a.set(o[u], p, t.l, t.d, t.i)
|
||||
}
|
||||
a.get(n.containers.session) && a.set(n.containers.session, n.pack.session(0), t.l, t.d, t.i),
|
||||
a.set(n.service.migrations, r, t.l, t.d, t.i)
|
||||
} catch (f) {
|
||||
a.set(n.service.migrations, i, t.l, t.d, t.i)
|
||||
}
|
||||
}
|
||||
}]
|
||||
}
|
||||
}
|
||||
, {
|
||||
"./data": 2,
|
||||
"./helpers/cookies": 3
|
||||
}],
|
||||
8: [function(e, t, r) {
|
||||
"use strict";
|
||||
var n = e("./terms")
|
||||
, a = e("./helpers/uri");
|
||||
t.exports = {
|
||||
fetch: function(e) {
|
||||
var t = e || {}
|
||||
, r = {};
|
||||
if (r.lifetime = this.validate.checkFloat(t.lifetime) || 6,
|
||||
r.lifetime = parseInt(30 * r.lifetime * 24 * 60),
|
||||
r.session_length = this.validate.checkInt(t.session_length) || 30,
|
||||
r.timezone_offset = this.validate.checkInt(t.timezone_offset),
|
||||
r.base64 = t.base64 || !1,
|
||||
r.campaign_param = t.campaign_param || !1,
|
||||
r.term_param = t.term_param || !1,
|
||||
r.content_param = t.content_param || !1,
|
||||
r.user_ip = t.user_ip || n.none,
|
||||
t.promocode ? (r.promocode = {},
|
||||
r.promocode.min = parseInt(t.promocode.min) || 1e5,
|
||||
r.promocode.max = parseInt(t.promocode.max) || 999999) : r.promocode = !1,
|
||||
t.typein_attributes && t.typein_attributes.source && t.typein_attributes.medium ? (r.typein_attributes = {},
|
||||
r.typein_attributes.source = t.typein_attributes.source,
|
||||
r.typein_attributes.medium = t.typein_attributes.medium) : r.typein_attributes = {
|
||||
source: "(direct)",
|
||||
medium: "(none)"
|
||||
},
|
||||
t.domain && this.validate.isString(t.domain) ? r.domain = {
|
||||
host: t.domain,
|
||||
isolate: !1
|
||||
} : t.domain && t.domain.host ? r.domain = t.domain : r.domain = {
|
||||
host: a.getHost(document.location.hostname),
|
||||
isolate: !1
|
||||
},
|
||||
r.referrals = [],
|
||||
t.referrals && t.referrals.length > 0)
|
||||
for (var i = 0; i < t.referrals.length; i++)
|
||||
t.referrals[i].host && r.referrals.push(t.referrals[i]);
|
||||
if (r.organics = [],
|
||||
t.organics && t.organics.length > 0)
|
||||
for (var s = 0; s < t.organics.length; s++)
|
||||
t.organics[s].host && t.organics[s].param && r.organics.push(t.organics[s]);
|
||||
return r.organics.push({
|
||||
host: "bing.com",
|
||||
param: "q",
|
||||
display: "bing"
|
||||
}),
|
||||
r.organics.push({
|
||||
host: "yahoo.com",
|
||||
param: "p",
|
||||
display: "yahoo"
|
||||
}),
|
||||
r.organics.push({
|
||||
host: "about.com",
|
||||
param: "q",
|
||||
display: "about"
|
||||
}),
|
||||
r.organics.push({
|
||||
host: "aol.com",
|
||||
param: "q",
|
||||
display: "aol"
|
||||
}),
|
||||
r.organics.push({
|
||||
host: "ask.com",
|
||||
param: "q",
|
||||
display: "ask"
|
||||
}),
|
||||
r.organics.push({
|
||||
host: "globososo.com",
|
||||
param: "q",
|
||||
display: "globo"
|
||||
}),
|
||||
r.organics.push({
|
||||
host: "go.mail.ru",
|
||||
param: "q",
|
||||
display: "go.mail.ru"
|
||||
}),
|
||||
r.organics.push({
|
||||
host: "rambler.ru",
|
||||
param: "query",
|
||||
display: "rambler"
|
||||
}),
|
||||
r.organics.push({
|
||||
host: "tut.by",
|
||||
param: "query",
|
||||
display: "tut.by"
|
||||
}),
|
||||
r.referrals.push({
|
||||
host: "t.co",
|
||||
display: "twitter.com"
|
||||
}),
|
||||
r.referrals.push({
|
||||
host: "plus.url.google.com",
|
||||
display: "plus.google.com"
|
||||
}),
|
||||
r
|
||||
},
|
||||
validate: {
|
||||
checkFloat: function(e) {
|
||||
return !(!e || !this.isNumeric(parseFloat(e))) && parseFloat(e)
|
||||
},
|
||||
checkInt: function(e) {
|
||||
return !(!e || !this.isNumeric(parseInt(e))) && parseInt(e)
|
||||
},
|
||||
isNumeric: function(e) {
|
||||
return !isNaN(e)
|
||||
},
|
||||
isString: function(e) {
|
||||
return "[object String]" === Object.prototype.toString.call(e)
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
, {
|
||||
"./helpers/uri": 4,
|
||||
"./terms": 9
|
||||
}],
|
||||
9: [function(e, t, r) {
|
||||
"use strict";
|
||||
t.exports = {
|
||||
traffic: {
|
||||
utm: "utm",
|
||||
organic: "organic",
|
||||
referral: "referral",
|
||||
typein: "typein"
|
||||
},
|
||||
referer: {
|
||||
referral: "referral",
|
||||
organic: "organic",
|
||||
social: "social"
|
||||
},
|
||||
none: "(none)",
|
||||
oops: "(Houston, we have a problem)"
|
||||
}
|
||||
}
|
||||
, {}]
|
||||
}, {}, [1])(1)
|
||||
});
|
||||
@@ -1,39 +0,0 @@
|
||||
"use strict";
|
||||
jQuery(window).on("elementor/frontend/init", function() {
|
||||
elementorFrontend.hooks.addAction("frontend/element_ready/logico_tabs.default", function(e) {
|
||||
let i, t, a = e.find(".logico-video-trigger-button"), n = e.find(".logico-video-container"), r = e.find(".logico-video-wrapper"), o = e.find(".logico-close-popup-layer"), u = jQuery(r).attr("data-src"), d = e.find(".logico-tabs-titles-container"), s = e.find(".logico-tabs-content-container");
|
||||
jQuery(d).find(".logico-tab-title-item").first().addClass("active"),
|
||||
jQuery(s).find(".logico-tab-content-item").first().addClass("active"),
|
||||
e.find(".logico-tab-title-item a").on("click", function() {
|
||||
let e = jQuery(this).parent().attr("data-id");
|
||||
jQuery(this).parent().is(".active") || (d.find(".active").removeClass("active"),
|
||||
s.find(".active").removeClass("active"),
|
||||
jQuery(this).parent().addClass("active"),
|
||||
s.find("#" + e).addClass("active"))
|
||||
}),
|
||||
jQuery(a).on("click", function() {
|
||||
jQuery(n).addClass("active"),
|
||||
setTimeout(function() {
|
||||
i = jQuery(r).height(),
|
||||
t = i * (16 / 9),
|
||||
jQuery(r).width(t),
|
||||
jQuery(r).append('<iframe frameborder="0" allowfullscreen="1" allow="accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture" title="YouTube video player" width="100%" height="100%" src="' + u + '?playlist=ZdXao5XqeqM&iv_load_policy=3&enablejsapi=1&disablekb=1&autoplay=1&controls=1&showinfo=0&rel=0&loop=0&wmode=transparent"></iframe>')
|
||||
}, 100),
|
||||
setTimeout(function() {
|
||||
jQuery(n).addClass("visible")
|
||||
}, 500)
|
||||
}),
|
||||
jQuery(o).on("click", function() {
|
||||
jQuery(n).removeClass("visible"),
|
||||
setTimeout(function() {
|
||||
jQuery(r).html(""),
|
||||
jQuery(n).removeClass("active")
|
||||
}, 500)
|
||||
}),
|
||||
jQuery(window).on("resize", function() {
|
||||
i = jQuery(r).height(),
|
||||
t = i * (16 / 9),
|
||||
jQuery(r).width(t)
|
||||
})
|
||||
})
|
||||
})
|
||||
@@ -1,24 +0,0 @@
|
||||
const html = `<h3 class="logico-title">Worldwide air freight service\n</h3>`;
|
||||
const regex = /(^|<\/?[^>]+>|\s+)([^\s<]+)/g;
|
||||
|
||||
let innerHTML = `Worldwide air freight service\n`;
|
||||
|
||||
console.log("Original:", innerHTML);
|
||||
|
||||
innerHTML = innerHTML.replace(regex, '$1<span class="word">$2</span>');
|
||||
console.log("Run 1:", innerHTML);
|
||||
|
||||
// Simulate the letter wrapping
|
||||
innerHTML = innerHTML.replace(/>([^<]+)</g, (match, text) => {
|
||||
return '>' + text.replace(/\S/g, '<span class="letter">$&</span>') + '<';
|
||||
});
|
||||
console.log("Run 1 after letters:", innerHTML);
|
||||
|
||||
innerHTML = innerHTML.replace(regex, '$1<span class="word">$2</span>');
|
||||
console.log("Run 2:", innerHTML);
|
||||
|
||||
// Simulate the letter wrapping again
|
||||
innerHTML = innerHTML.replace(/>([^<]+)</g, (match, text) => {
|
||||
return '>' + text.replace(/\S/g, '<span class="letter">$&</span>') + '<';
|
||||
});
|
||||
console.log("Run 2 after letters:", innerHTML);
|
||||
@@ -1,586 +0,0 @@
|
||||
"use strict";
|
||||
function set_device_mode() {
|
||||
let attr = jQuery('body').attr('data-elementor-device-mode')
|
||||
, mode = 'mobile';
|
||||
if (typeof attr === 'undefined' && attr === !1) {
|
||||
if (jQuery(window).width() > 480) {
|
||||
mode = 'mobile_extra'
|
||||
}
|
||||
if (jQuery(window).width() > 660) {
|
||||
mode = 'tablet'
|
||||
}
|
||||
if (jQuery(window).width() > 840) {
|
||||
mode = 'tablet_extra'
|
||||
}
|
||||
if (jQuery(window).width() > 1020) {
|
||||
mode = 'laptop'
|
||||
}
|
||||
if (jQuery(window).width() > 1200) {
|
||||
mode = 'desktop'
|
||||
}
|
||||
if (jQuery(window).width() >= 2400) {
|
||||
mode = 'widescreen'
|
||||
}
|
||||
} else {
|
||||
mode = attr
|
||||
}
|
||||
jQuery('body').attr('data-mode', mode)
|
||||
}
|
||||
function side_panel_open() {
|
||||
jQuery('.dropdown-trigger').on('click', function () {
|
||||
let elemID = '#side-panel-' + jQuery(this).attr('data-id');
|
||||
jQuery(elemID + ', .body-overlay').addClass('active')
|
||||
});
|
||||
jQuery('.slide-sidebar-close').on('click', function () {
|
||||
jQuery(this).parents('.slide-sidebar-wrapper').removeClass('active');
|
||||
jQuery('.body-overlay').removeClass('active')
|
||||
})
|
||||
}
|
||||
function search_panel_open() {
|
||||
jQuery('.search-trigger').on('click', function () {
|
||||
let elemID = '#site-search-' + jQuery(this).attr('data-id');
|
||||
jQuery(elemID + ', .body-overlay').addClass('active');
|
||||
jQuery(elemID + ' .search-form .search-form-field').focus()
|
||||
});
|
||||
jQuery('.site-search-close').on('click', function () {
|
||||
jQuery(this).parents('.site-search').removeClass('active');
|
||||
jQuery('.body-overlay').removeClass('active')
|
||||
})
|
||||
}
|
||||
function overlay_close_all() {
|
||||
jQuery('.body-overlay').on('click', function () {
|
||||
jQuery(this).removeClass('active');
|
||||
jQuery('.site-search, .mobile-header-menu-container, .simple-sidebar, .slide-sidebar-wrapper, .shop-hidden-sidebar').removeClass('active')
|
||||
})
|
||||
}
|
||||
function switch_form_columns() {
|
||||
jQuery('.tab-columns-switcher').on('click', function () {
|
||||
jQuery('.tab-column', jQuery(this).parents('.tab-columns')).toggleClass('hidden')
|
||||
})
|
||||
}
|
||||
function sticky_menu_active() {
|
||||
if (jQuery('.sticky-header-on').length) {
|
||||
jQuery('.sticky-header-on').each(function () {
|
||||
let obj = jQuery(this)
|
||||
, el_offset = obj.offset().top
|
||||
, el_height = Math.round(jQuery('.sticky-wrapper', obj).outerHeight())
|
||||
, el_ready = Math.round(el_offset + el_height + 200)
|
||||
, el_start = Math.round(el_offset + el_height + 400);
|
||||
obj.height(el_height);
|
||||
jQuery(window).on('scroll', function () {
|
||||
let st = jQuery(window).scrollTop();
|
||||
if (st <= el_ready) {
|
||||
obj.removeClass('sticky-ready')
|
||||
} else {
|
||||
obj.addClass('sticky-ready')
|
||||
}
|
||||
if (st <= el_start) {
|
||||
obj.removeClass('sticky-active')
|
||||
} else {
|
||||
obj.addClass('sticky-active')
|
||||
}
|
||||
})
|
||||
})
|
||||
}
|
||||
}
|
||||
function mobile_menu_open() {
|
||||
jQuery('.menu-trigger').on('click', function () {
|
||||
let elemID = '#mobile-header-' + jQuery(this).attr('data-id');
|
||||
jQuery(elemID + ', .body-overlay').addClass('active')
|
||||
});
|
||||
jQuery('.menu-close').on('click', function () {
|
||||
jQuery(this).parents('.mobile-header-menu-container').removeClass('active');
|
||||
jQuery('.body-overlay').removeClass('active')
|
||||
})
|
||||
}
|
||||
function simple_sidebar_open() {
|
||||
jQuery('.simple-sidebar-trigger').on('click', function () {
|
||||
let elemID = '#simple-sidebar-' + jQuery(this).attr('data-id');
|
||||
if (jQuery(window).width() < 1021) {
|
||||
jQuery(elemID + ', .body-overlay').addClass('active')
|
||||
}
|
||||
});
|
||||
jQuery('.shop-hidden-sidebar-close').on('click', function () {
|
||||
jQuery(this).parents('.simple-sidebar').removeClass('active');
|
||||
jQuery('.body-overlay').removeClass('active')
|
||||
})
|
||||
}
|
||||
function tracking_popup_open() {
|
||||
jQuery('.tracking-trigger').on('click', function () {
|
||||
let elemID = '#tracking-popup-' + jQuery(this).attr('data-id');
|
||||
jQuery(elemID).fadeIn(300)
|
||||
});
|
||||
jQuery('.tracking-form-close').on('click', function () {
|
||||
jQuery(this).parents('.tracking-form-wrapper').fadeOut(300)
|
||||
})
|
||||
}
|
||||
function page_title_animate() {
|
||||
if (jQuery('.page-loader-container').length) {
|
||||
jQuery('body').on('pageloader_start_hidden', function () {
|
||||
if (jQuery(window).innerWidth() > 1020) {
|
||||
jQuery('.page-title-decoration.animation-enable').addClass('animated')
|
||||
}
|
||||
})
|
||||
} else {
|
||||
jQuery(window).on('load', function () {
|
||||
if (jQuery(window).innerWidth() > 1020) {
|
||||
jQuery('.page-title-decoration.animation-enable').addClass('animated')
|
||||
}
|
||||
})
|
||||
}
|
||||
}
|
||||
function decorative_block_animate() {
|
||||
jQuery('.block-decoration').each(function () {
|
||||
let element = jQuery(this);
|
||||
let observer = new IntersectionObserver(function (entries, observer) {
|
||||
entries.forEach(function (entry) {
|
||||
if (entry.isIntersecting) {
|
||||
setTimeout(function () {
|
||||
element.addClass('animated')
|
||||
}, 300);
|
||||
observer.unobserve(element[0])
|
||||
}
|
||||
})
|
||||
}
|
||||
);
|
||||
observer.observe(element[0])
|
||||
})
|
||||
}
|
||||
function widget_list_hierarchy_init() {
|
||||
widget_archives_hierarchy_controller('.widget ul li', 'ul.children', 'parent-archive', 'widget-archive-trigger');
|
||||
widget_archives_hierarchy_controller('.widget_nav_menu .menu li', 'ul.sub-menu', 'parent-archive', 'widget-menu-trigger')
|
||||
}
|
||||
function widget_archives_hierarchy_controller(list_item_selector, sublist_item_selector, parent_class, trigger_class) {
|
||||
jQuery(list_item_selector).has(sublist_item_selector).each(function () {
|
||||
jQuery(this).addClass(parent_class);
|
||||
jQuery(this).append("<span class='" + trigger_class + "'></span>")
|
||||
});
|
||||
jQuery(list_item_selector + ">" + sublist_item_selector).css("display", "none");
|
||||
jQuery(list_item_selector + ">.item-wrapper>" + sublist_item_selector).css("display", "none");
|
||||
jQuery(document).on("click", "." + trigger_class, function () {
|
||||
var el = jQuery(this);
|
||||
var sublist = el.siblings(sublist_item_selector);
|
||||
var sublist_alt = el.siblings('.item-wrapper').children(sublist_item_selector);
|
||||
if (!sublist.length && !sublist_alt.length)
|
||||
return;
|
||||
sublist = sublist.first();
|
||||
sublist_alt = sublist_alt.first();
|
||||
el.toggleClass('active').parents('li').toggleClass('active');
|
||||
sublist.slideToggle(300);
|
||||
sublist_alt.slideToggle(300)
|
||||
})
|
||||
}
|
||||
function fix_responsive_iframe() {
|
||||
jQuery('.video-embed > div').each(function () {
|
||||
jQuery(this).unwrap('.video-embed')
|
||||
})
|
||||
}
|
||||
function elements_slider_init() {
|
||||
jQuery('.elementor-element .owl-carousel, .content-inner > .archive-listing .owl-carousel, .single-post .owl-carousel').each(function () {
|
||||
let slider = jQuery(this)
|
||||
, slider_options = slider.data('slider-options')
|
||||
, itemsMobile = slider_options.itemsMobile
|
||||
, itemsMobileExtra = slider_options.itemsMobileExtra
|
||||
, itemsTablet = slider_options.itemsTablet
|
||||
, itemsTabletExtra = slider_options.itemsTabletExtra
|
||||
, itemsLaptop = slider_options.itemsLaptop
|
||||
, itemsDesktop = slider_options.items
|
||||
, itemsWidescreen = slider_options.itemsWidescreen
|
||||
, slideCount = jQuery('.slider-item', slider).length
|
||||
, progress = slider_options.progress ? slider_options.progress : !1;
|
||||
slider_options.responsive = {
|
||||
0: {
|
||||
items: itemsMobile
|
||||
},
|
||||
480: {
|
||||
items: itemsMobileExtra
|
||||
},
|
||||
660: {
|
||||
items: itemsTablet
|
||||
},
|
||||
840: {
|
||||
items: itemsTabletExtra
|
||||
},
|
||||
1020: {
|
||||
items: itemsLaptop
|
||||
},
|
||||
1200: {
|
||||
items: itemsDesktop
|
||||
},
|
||||
2400: {
|
||||
items: itemsWidescreen
|
||||
}
|
||||
};
|
||||
slider_options.onInitialized = function (event) {
|
||||
if (progress) {
|
||||
let progress_wrapper = slider.parents('.elementor-widget-container')
|
||||
, progress_current = jQuery('.slider-progress-current', progress_wrapper)
|
||||
, progress_all = jQuery('.slider-progress-all', progress_wrapper)
|
||||
, items_count = jQuery('.owl-item:not(.cloned)').length
|
||||
, items_visible = jQuery('.owl-item.active').length
|
||||
, pages = 0;
|
||||
pages = Math.ceil(items_count / items_visible);
|
||||
pages = pages < 10 ? '0' + pages : pages;
|
||||
progress_all.text(pages);
|
||||
progress_current.text('01')
|
||||
}
|
||||
}
|
||||
;
|
||||
slider.owlCarousel(slider_options).on('changed.owl.carousel', function (e) {
|
||||
if (slider_options.autoplay) {
|
||||
slider.trigger('stop.owl.autoplay');
|
||||
slider.trigger('play.owl.autoplay')
|
||||
}
|
||||
});
|
||||
if (progress) {
|
||||
slider.on('changed.owl.carousel', function (event) {
|
||||
let progress_wrapper = slider.parents('.elementor-widget-container')
|
||||
, progress_current = jQuery('.slider-progress-current', progress_wrapper)
|
||||
, progress_all = jQuery('.slider-progress-all', progress_wrapper);
|
||||
progress_all.text(event.page.count < 10 ? '0' + event.page.count : event.page.count);
|
||||
progress_current.text((event.page.index + 1) < 10 ? '0' + (event.page.index + 1) : (event.page.index + 1))
|
||||
})
|
||||
}
|
||||
})
|
||||
}
|
||||
function single_portfolio_slider_init() {
|
||||
jQuery('.portfolio-post-gallery.owl-carousel').each(function () {
|
||||
jQuery(this).owlCarousel({
|
||||
items: 1,
|
||||
nav: !1,
|
||||
dots: !1,
|
||||
autoplay: !1,
|
||||
autoplayHoverPause: !1,
|
||||
loop: !0,
|
||||
rewind: !1,
|
||||
dotsContainer: !1,
|
||||
autoHeight: !1,
|
||||
center: !0,
|
||||
margin: 10,
|
||||
rtl: (!!jQuery('body').hasClass('rtl'))
|
||||
})
|
||||
})
|
||||
}
|
||||
function isotope_init() {
|
||||
if (jQuery('.isotope').length > 0) {
|
||||
jQuery('.isotope-trigger').isotope({
|
||||
itemSelector: '.isotope-item',
|
||||
gutter: 0
|
||||
})
|
||||
}
|
||||
}
|
||||
function help_item_acardeon() {
|
||||
jQuery('.help-item').each(function () {
|
||||
jQuery('.help-item-title', this).on('click', function () {
|
||||
jQuery(this).siblings('.help-item-content').slideToggle(300).parents('.help-item').toggleClass('active')
|
||||
})
|
||||
})
|
||||
}
|
||||
function background_image_parallax(object, multiplier) {
|
||||
if (object.length > 0) {
|
||||
multiplier = typeof multiplier !== 'undefined' ? multiplier : 0.5;
|
||||
multiplier = 1 - multiplier;
|
||||
var doc = jQuery(document);
|
||||
object.css({
|
||||
'background-attatchment': 'fixed'
|
||||
});
|
||||
jQuery(window).scroll(function () {
|
||||
if (jQuery(window).width() >= 1021) {
|
||||
var from_top = doc.scrollTop() - object.offset().top
|
||||
, bg_css = 'center ' + (multiplier * from_top) + 'px';
|
||||
object.css({
|
||||
'background-position': bg_css
|
||||
})
|
||||
} else {
|
||||
object.css({
|
||||
'background-position': ''
|
||||
})
|
||||
}
|
||||
})
|
||||
}
|
||||
}
|
||||
function scroll_to_top_init() {
|
||||
let scrollTop = jQuery(window).scrollTop();
|
||||
if (scrollTop > 600) {
|
||||
jQuery('.footer-scroll-top').addClass('active')
|
||||
} else {
|
||||
jQuery('.footer-scroll-top').removeClass('active')
|
||||
}
|
||||
}
|
||||
function check_custom_field(element) {
|
||||
if (element.val() || jQuery('option.placeholder', element).is(':selected')) {
|
||||
element.parents('.logico-form-field, .woocommerce-input-wrapper, .wp-block-search__inside-wrapper').addClass('not-empty')
|
||||
} else {
|
||||
element.parents('.logico-form-field, .woocommerce-input-wrapper, .wp-block-search__inside-wrapper').removeClass('not-empty')
|
||||
}
|
||||
}
|
||||
function wrap_multycolumns_wpform_fields(wrapper) {
|
||||
jQuery('.wpforms-field .wpforms-field-row .wpforms-field-row-block input', wrapper).each(function () {
|
||||
jQuery(this).wrap('<div class="logico-form-field"></div>')
|
||||
})
|
||||
}
|
||||
function logico_custom_cursor() {
|
||||
if (jQuery(window).width() > 1020) {
|
||||
jQuery('.custom-cursor-drag').each(function () {
|
||||
const cursor = jQuery(this);
|
||||
const wrapper = cursor.siblings('.owl-carousel');
|
||||
function showViewCursor(event) {
|
||||
cursor.css('left', event.clientX - 32).css('top', event.clientY - 32)
|
||||
}
|
||||
wrapper.mousemove(showViewCursor);
|
||||
wrapper.mouseleave(function (e) {
|
||||
if (!jQuery('body').hasClass('elementor-editor-preview')) {
|
||||
wrapper.css({
|
||||
cursor: 'auto'
|
||||
});
|
||||
cursor.removeClass('active');
|
||||
setTimeout(function () {
|
||||
if (!cursor.hasClass('active')) {
|
||||
cursor.hide()
|
||||
}
|
||||
}, 300)
|
||||
}
|
||||
});
|
||||
wrapper.mouseenter(function (e) {
|
||||
if (!jQuery('body').hasClass('elementor-editor-preview')) {
|
||||
wrapper.css({
|
||||
cursor: 'none'
|
||||
});
|
||||
cursor.show();
|
||||
setTimeout(function () {
|
||||
cursor.addClass('active')
|
||||
}, 10)
|
||||
}
|
||||
})
|
||||
})
|
||||
}
|
||||
}
|
||||
function logico_ticker() {
|
||||
jQuery('.ticker').marquee('destroy').marquee({
|
||||
allowCss3Support: !0,
|
||||
css3easing: 'linear',
|
||||
easing: 'linear',
|
||||
delayBeforeStart: 0,
|
||||
direction: jQuery('.ticker').parents('.logico-ticker-wrapper').data('direction'),
|
||||
duplicated: !0,
|
||||
duration: jQuery('.ticker').parents('.logico-ticker-wrapper').data('speed') * 1000,
|
||||
gap: 0,
|
||||
pauseOnCycle: !1,
|
||||
pauseOnHover: !1,
|
||||
startVisible: !0
|
||||
})
|
||||
}
|
||||
function mobile_menu() {
|
||||
jQuery('.mobile-header-menu-container .main-menu').find('.menu-item').each(function (i, el) {
|
||||
if (jQuery(el).find('.sub-menu').length != 0 && jQuery(el).find('.sub-menu-trigger').length == 0) {
|
||||
jQuery(el).append('<span class="sub-menu-trigger"></span>')
|
||||
}
|
||||
});
|
||||
jQuery('.sub-menu-trigger').off();
|
||||
jQuery('.sub-menu-trigger').on('click', function () {
|
||||
if (jQuery(this).parent().hasClass('active')) {
|
||||
jQuery(this).prev().slideUp();
|
||||
jQuery(this).parent().removeClass('active')
|
||||
} else {
|
||||
var currentParents = jQuery(this).parents('.menu-item');
|
||||
jQuery('.sub-menu-trigger').parent().not(currentParents).removeClass('active');
|
||||
jQuery('.sub-menu-trigger').parent().not(currentParents).find('.sub-menu').slideUp(300);
|
||||
jQuery(this).prev().slideDown();
|
||||
jQuery(this).parent().addClass('active')
|
||||
}
|
||||
});
|
||||
jQuery('.mobile-header-menu-container .main-menu a').on('click', function () {
|
||||
jQuery('.site-search, .body-overlay, .mobile-header-menu-container').removeClass('active')
|
||||
})
|
||||
}
|
||||
function scroll_to_anchor() {
|
||||
jQuery('.scroll-to-anchor a[href*="#"]').on('click', function (e) {
|
||||
e.preventDefault();
|
||||
jQuery('body, html').animate({
|
||||
scrollTop: jQuery(this.hash).offset().top - 150 + 'px'
|
||||
}, 600);
|
||||
window.location.href = jQuery(this).attr('href');
|
||||
return !1
|
||||
})
|
||||
}
|
||||
function page_loader_controller() {
|
||||
var page_loader, interval, timeLaps;
|
||||
page_loader = jQuery('.page-loader');
|
||||
timeLaps = 0;
|
||||
interval = setInterval(function () {
|
||||
var page_loaded = check_if_page_loaded();
|
||||
timeLaps++;
|
||||
if (page_loaded || timeLaps === 12) {
|
||||
clearInterval(interval);
|
||||
page_loader.stop_loader()
|
||||
}
|
||||
}, 10)
|
||||
}
|
||||
function check_if_page_loaded() {
|
||||
var keys, key, i, r;
|
||||
if (window.modules_state === undefined)
|
||||
return !1;
|
||||
r = !0;
|
||||
keys = Object.keys(window.modules_state);
|
||||
for (i = 0; i < keys.length; i++) {
|
||||
key = keys[i];
|
||||
if (!window.modules_state[key]) {
|
||||
r = !1;
|
||||
break
|
||||
}
|
||||
}
|
||||
return r
|
||||
}
|
||||
function start_loader() {
|
||||
let loader = jQuery(this);
|
||||
if (!loader.length)
|
||||
return;
|
||||
let loader_container = loader[0].parentNode;
|
||||
if (loader_container != null) {
|
||||
loader_container.style.opacity = 1;
|
||||
setTimeout(function () {
|
||||
loader_container.style.display = "block"
|
||||
}, 10)
|
||||
}
|
||||
}
|
||||
function stop_loader() {
|
||||
let loader = jQuery(this);
|
||||
if (!loader.length)
|
||||
return;
|
||||
let loader_container = loader[0].parentNode;
|
||||
jQuery('body').trigger('pageloader_start_hidden');
|
||||
if (loader_container != null) {
|
||||
setTimeout(function () {
|
||||
loader_container.style.opacity = 0;
|
||||
setTimeout(function () {
|
||||
loader_container.style.display = "none"
|
||||
}, 300)
|
||||
}, 500)
|
||||
}
|
||||
}
|
||||
function genre_get_posts(paged = 1, id = null, filter_term = null, filter_taxonomy = null) {
|
||||
var ajax_url = ajax_params.ajax_url;
|
||||
var args = jQuery('.archive-listing', '.elementor-element-' + id).attr('data-ajax');
|
||||
var widget = jQuery('.archive-listing', '.elementor-element-' + id).attr('data-widget');
|
||||
var classes = jQuery('.archive-listing-wrapper', '.elementor-element-' + id).attr('class');
|
||||
jQuery.ajax({
|
||||
type: 'POST',
|
||||
url: ajax_url,
|
||||
data: {
|
||||
action: 'pagination',
|
||||
args: args,
|
||||
widget: widget,
|
||||
paged: paged,
|
||||
classes: classes,
|
||||
id: id,
|
||||
filter_term: filter_term,
|
||||
filter_taxonomy: filter_taxonomy,
|
||||
security: ajax_params.ajax_nonce
|
||||
},
|
||||
beforeSend: function () {
|
||||
var height = jQuery('.archive-listing', '.elementor-element-' + id).outerHeight();
|
||||
jQuery('.archive-listing', '.elementor-element-' + id).height(height).addClass('loading')
|
||||
},
|
||||
success: function (data) {
|
||||
jQuery('.archive-listing', '.elementor-element-' + id).html(data);
|
||||
if (jQuery(window.wp.mediaelement).length > 0) {
|
||||
jQuery(window.wp.mediaelement.initialize)
|
||||
}
|
||||
setTimeout(function () {
|
||||
jQuery('.archive-listing', '.elementor-element-' + id).removeAttr('style').removeClass('loading')
|
||||
}, 500);
|
||||
setTimeout(elements_slider_init, 300);
|
||||
setTimeout(fix_responsive_iframe, 600);
|
||||
setTimeout(isotope_init, 500)
|
||||
},
|
||||
error: function () {
|
||||
jQuery('.archive-listing', '.elementor-element-' + id).html('<p class="error">AJAX ERROR</p>')
|
||||
}
|
||||
})
|
||||
}
|
||||
jQuery(document).ready(function () {
|
||||
setTimeout(sticky_menu_active, 300);
|
||||
jQuery('.footer-scroll-top').on('click', function () {
|
||||
jQuery('html, body').animate({
|
||||
scrollTop: 0
|
||||
}, 500)
|
||||
});
|
||||
side_panel_open();
|
||||
search_panel_open();
|
||||
overlay_close_all();
|
||||
setTimeout(set_device_mode, 300);
|
||||
switch_form_columns();
|
||||
background_image_parallax(jQuery('[data-parallax="scroll"]'), 0.7);
|
||||
mobile_menu_open();
|
||||
tracking_popup_open();
|
||||
simple_sidebar_open();
|
||||
page_title_animate();
|
||||
decorative_block_animate();
|
||||
help_item_acardeon();
|
||||
mobile_menu();
|
||||
widget_list_hierarchy_init();
|
||||
setTimeout(fix_responsive_iframe, 800);
|
||||
setTimeout(isotope_init, 500);
|
||||
wrap_multycolumns_wpform_fields(document);
|
||||
jQuery('.logico-form-field input, .logico-form-field textarea, .logico-form-field select, .woocommerce-input-wrapper .input-text').not(':hidden').each(function () {
|
||||
check_custom_field(jQuery(this))
|
||||
});
|
||||
logico_custom_cursor();
|
||||
logico_ticker();
|
||||
scroll_to_anchor();
|
||||
scroll_to_top_init();
|
||||
jQuery('.elementor-widget').on('click', '.content-pagination a', function (e) {
|
||||
e.preventDefault();
|
||||
var paged = null;
|
||||
var id = jQuery(this).parents('.elementor-widget').attr('data-id');
|
||||
if (jQuery(this).hasClass('prev')) {
|
||||
paged = parseInt(jQuery(this).siblings('.current').text()) - 1
|
||||
} else if (jQuery(this).hasClass('next')) {
|
||||
paged = parseInt(jQuery(this).siblings('.current').text()) + 1
|
||||
} else {
|
||||
paged = parseInt(jQuery(this).text())
|
||||
}
|
||||
var filter_term = jQuery('.filter-control-list .dot.active', jQuery(this).parents('.archive-listing').siblings('.filter-control-wrapper')).attr('data-value');
|
||||
var filter_taxonomy = jQuery('.filter-control-list', jQuery(this).parents('.archive-listing').siblings('.filter-control-wrapper')).attr('data-taxonomy');
|
||||
genre_get_posts(paged, id, filter_term, filter_taxonomy)
|
||||
});
|
||||
jQuery('.elementor-widget').on('click', '.filter-control-list .filter-control-item', function (e) {
|
||||
e.preventDefault();
|
||||
var paged = 1;
|
||||
var id = jQuery(this).parents('.elementor-widget').attr('data-id');
|
||||
var filter_term = jQuery(this).attr('data-value');
|
||||
var filter_taxonomy = jQuery(this).parents('.filter-control-list').attr('data-taxonomy');
|
||||
if (filter_term === 'all') {
|
||||
filter_term = null
|
||||
}
|
||||
jQuery(this).addClass('active').siblings('.filter-control-item').removeClass('active');
|
||||
genre_get_posts(paged, id, filter_term, filter_taxonomy)
|
||||
})
|
||||
});
|
||||
jQuery(window).on('load', function () {
|
||||
jQuery.fn.start_loader = start_loader;
|
||||
jQuery.fn.stop_loader = stop_loader;
|
||||
page_loader_controller();
|
||||
elements_slider_init();
|
||||
single_portfolio_slider_init()
|
||||
});
|
||||
jQuery(window).on('resize', function () {
|
||||
setTimeout(set_device_mode, 300);
|
||||
setTimeout(sticky_menu_active, 300);
|
||||
mobile_menu_open();
|
||||
background_image_parallax(jQuery('[data-parallax="scroll"]'), 0.7);
|
||||
logico_custom_cursor();
|
||||
logico_ticker()
|
||||
});
|
||||
jQuery(window).on('scroll', function () {
|
||||
scroll_to_top_init()
|
||||
});
|
||||
jQuery(document).on('elementor/popup/show', function (event, popupId, popupDocument) {
|
||||
wrap_multycolumns_wpform_fields(popupDocument);
|
||||
jQuery('.logico-form-field input, .logico-form-field textarea, .logico-form-field select, .woocommerce-input-wrapper .input-text').each(function () {
|
||||
check_custom_field(jQuery(this))
|
||||
})
|
||||
});
|
||||
jQuery(document).on('change', '.logico-form-field input, .logico-form-field textarea, .logico-form-field select, .woocommerce-input-wrapper .input-text', function () {
|
||||
check_custom_field(jQuery(this))
|
||||
})
|
||||
69
assets/js/utils.min.js
vendored
69
assets/js/utils.min.js
vendored
@@ -1,69 +0,0 @@
|
||||
var WPFormsUtils = window.WPFormsUtils || (o => {
|
||||
let a = {
|
||||
triggerEvent(r, t, e=[]) {
|
||||
t = new o.Event(t);
|
||||
return r.trigger(t, e),
|
||||
t
|
||||
},
|
||||
debounce(o, s, l) {
|
||||
let a;
|
||||
return function() {
|
||||
let r = this
|
||||
, t = arguments;
|
||||
var e = l && !a;
|
||||
clearTimeout(a),
|
||||
a = setTimeout(function() {
|
||||
a = null,
|
||||
l || o.apply(r, t)
|
||||
}, s),
|
||||
e && o.apply(r, t)
|
||||
}
|
||||
},
|
||||
cssColorsUtils: {
|
||||
isTransparentColor(r, t=.33) {
|
||||
r = a.cssColorsUtils.getColorAsRGBArray(r);
|
||||
return Number(r?.[3]) <= t
|
||||
},
|
||||
getColorAsRGBArray(r) {
|
||||
if (!a.cssColorsUtils.isValidColor(r))
|
||||
return !1;
|
||||
r = "transparent" === (r = r.replace(/^#/, "").replaceAll(" ", "")) ? "rgba(0,0,0,0)" : r;
|
||||
let t;
|
||||
return r.match(/[0-9a-f]{6,8}$/gi) ? (t = r.match(/\w\w/g).map(r => parseInt(r, 16)))[3] = t[3] || 0 === t[3] ? (t[3] / 255).toFixed(2) : 1 : t = r.split("(")[1].split(")")[0].split(","),
|
||||
t
|
||||
},
|
||||
isValidColor(r) {
|
||||
var t = (new Option).style;
|
||||
return t.color = r,
|
||||
"" !== t.color
|
||||
},
|
||||
getContrastColor(r) {
|
||||
var r = a.cssColorsUtils.getColorAsRGBArray(r)
|
||||
, t = r.reduce( (r, t) => r + t, 0);
|
||||
return Math.round(t / 3 * (r[3] ?? 1)) < 128 ? "#ffffff" : "#000000"
|
||||
},
|
||||
getColorWithOpacity(r, t) {
|
||||
r = r.trim();
|
||||
var e = a.cssColorsUtils.getColorAsRGBArray(r);
|
||||
if (!e)
|
||||
return r;
|
||||
t = t && 0 !== t.length ? t.toString() : "1";
|
||||
r = 4 === e.length ? parseFloat(e[3]) : 1,
|
||||
t = parseFloat(t) * r;
|
||||
return `rgba(${e[0]},${e[1]},${e[2]},${t})`.replace(/\s+/g, "")
|
||||
},
|
||||
rgbaToHex(r) {
|
||||
var t, e, o, s, l;
|
||||
return /^rgb/.test(r) ? !!(s = a.cssColorsUtils.getColorAsRGBArray(r)) && (t = Number(s[0]),
|
||||
e = Number(s[1]),
|
||||
o = Number(s[2]),
|
||||
s = s[3] ? Math.round(255 * Number(s[3])) : 255,
|
||||
("#" + [(l = r => r.toString(16).padStart(2, "0"))(t), l(e), l(o), s < 255 ? l(s) : ""].join("")).toLowerCase()) : r
|
||||
}
|
||||
}
|
||||
};
|
||||
return a
|
||||
}
|
||||
)((document,
|
||||
window,
|
||||
jQuery));
|
||||
203
assets/js/webpack.runtime.min.js
vendored
203
assets/js/webpack.runtime.min.js
vendored
@@ -1,203 +0,0 @@
|
||||
/*! elementor - v3.32.0 - 05-10-2025 */
|
||||
( () => {
|
||||
"use strict";
|
||||
var e, r, _, t, n, a = {}, i = {};
|
||||
function __webpack_require__(e) {
|
||||
var r = i[e];
|
||||
if (void 0 !== r)
|
||||
return r.exports;
|
||||
var _ = i[e] = {
|
||||
exports: {}
|
||||
};
|
||||
return a[e].call(_.exports, _, _.exports, __webpack_require__),
|
||||
_.exports
|
||||
}
|
||||
__webpack_require__.m = a,
|
||||
e = [],
|
||||
__webpack_require__.O = (r, _, t, n) => {
|
||||
if (!_) {
|
||||
var a = 1 / 0;
|
||||
for (o = 0; o < e.length; o++) {
|
||||
for (var [_,t,n] = e[o], i = !0, c = 0; c < _.length; c++)
|
||||
(!1 & n || a >= n) && Object.keys(__webpack_require__.O).every(e => __webpack_require__.O[e](_[c])) ? _.splice(c--, 1) : (i = !1,
|
||||
n < a && (a = n));
|
||||
if (i) {
|
||||
e.splice(o--, 1);
|
||||
var b = t();
|
||||
void 0 !== b && (r = b)
|
||||
}
|
||||
}
|
||||
return r
|
||||
}
|
||||
n = n || 0;
|
||||
for (var o = e.length; o > 0 && e[o - 1][2] > n; o--)
|
||||
e[o] = e[o - 1];
|
||||
e[o] = [_, t, n]
|
||||
}
|
||||
,
|
||||
_ = Object.getPrototypeOf ? e => Object.getPrototypeOf(e) : e => e.__proto__,
|
||||
__webpack_require__.t = function(e, t) {
|
||||
if (1 & t && (e = this(e)),
|
||||
8 & t)
|
||||
return e;
|
||||
if ("object" == typeof e && e) {
|
||||
if (4 & t && e.__esModule)
|
||||
return e;
|
||||
if (16 & t && "function" == typeof e.then)
|
||||
return e
|
||||
}
|
||||
var n = Object.create(null);
|
||||
__webpack_require__.r(n);
|
||||
var a = {};
|
||||
r = r || [null, _({}), _([]), _(_)];
|
||||
for (var i = 2 & t && e; "object" == typeof i && !~r.indexOf(i); i = _(i))
|
||||
Object.getOwnPropertyNames(i).forEach(r => a[r] = () => e[r]);
|
||||
return a.default = () => e,
|
||||
__webpack_require__.d(n, a),
|
||||
n
|
||||
}
|
||||
,
|
||||
__webpack_require__.d = (e, r) => {
|
||||
for (var _ in r)
|
||||
__webpack_require__.o(r, _) && !__webpack_require__.o(e, _) && Object.defineProperty(e, _, {
|
||||
enumerable: !0,
|
||||
get: r[_]
|
||||
})
|
||||
}
|
||||
,
|
||||
__webpack_require__.f = {},
|
||||
__webpack_require__.e = e => Promise.all(Object.keys(__webpack_require__.f).reduce( (r, _) => (__webpack_require__.f[_](e, r),
|
||||
r), [])),
|
||||
__webpack_require__.u = e => 216 === e ? "lightbox.408665be3d65f6ab17f0.bundle.min.js" : 30 === e ? "text-path.ebcd5a983a56266562f3.bundle.min.js" : 131 === e ? "accordion.28788e18d1d35c23f450.bundle.min.js" : 707 === e ? "alert.42cc1d522ef5c60bf874.bundle.min.js" : 457 === e ? "counter.12335f45aaa79d244f24.bundle.min.js" : 234 === e ? "progress.0ea083b809812c0e3aa1.bundle.min.js" : 575 === e ? "tabs.1a165c2a54522842b0f1.bundle.min.js" : 775 === e ? "toggle.f7afe5f9f0f912b34b22.bundle.min.js" : 180 === e ? "video.87291d1f5076f8939c18.bundle.min.js" : 177 === e ? "image-carousel.6167d20b95b33386757b.bundle.min.js" : 212 === e ? "text-editor.abc8f59c62f2820dc25a.bundle.min.js" : 211 === e ? "wp-audio.c9624cb6e5dc9de86abd.bundle.min.js" : 215 === e ? "nested-tabs.a542ad943214eb6c3ed8.bundle.min.js" : 915 === e ? "nested-accordion.a29d85d5aa492aef7142.bundle.min.js" : 1 === e ? "contact-buttons.d999c7d620ad8d4132c6.bundle.min.js" : 336 === e ? "floating-bars.a3070326b4333354cbd7.bundle.min.js" : 557 === e ? "shared-frontend-handlers.4c8abccc3e268b0767b2.bundle.min.js" : 396 === e ? "shared-editor-handlers.a182e3f9ce3b8b1e4b74.bundle.min.js" : 768 === e ? "container-editor-handlers.e7ee82232887ec8b73b7.bundle.min.js" : 77 === e ? "section-frontend-handlers.d85ab872da118940910d.bundle.min.js" : 220 === e ? "section-editor-handlers.c420276353ec5aba196e.bundle.min.js" : 304 === e ? "nested-title-keyboard-handler.fc9d01c2cd0ef46d20fd.bundle.min.js" : void 0,
|
||||
__webpack_require__.g = function() {
|
||||
if ("object" == typeof globalThis)
|
||||
return globalThis;
|
||||
try {
|
||||
return this || new Function("return this")()
|
||||
} catch (e) {
|
||||
if ("object" == typeof window)
|
||||
return window
|
||||
}
|
||||
}(),
|
||||
__webpack_require__.o = (e, r) => Object.prototype.hasOwnProperty.call(e, r),
|
||||
t = {},
|
||||
n = "elementorFrontend:",
|
||||
__webpack_require__.l = (e, r, _, a) => {
|
||||
if (t[e])
|
||||
t[e].push(r);
|
||||
else {
|
||||
var i, c;
|
||||
if (void 0 !== _)
|
||||
for (var b = document.getElementsByTagName("script"), o = 0; o < b.length; o++) {
|
||||
var u = b[o];
|
||||
if (u.getAttribute("src") == e || u.getAttribute("data-webpack") == n + _) {
|
||||
i = u;
|
||||
break
|
||||
}
|
||||
}
|
||||
i || (c = !0,
|
||||
(i = document.createElement("script")).charset = "utf-8",
|
||||
i.timeout = 120,
|
||||
__webpack_require__.nc && i.setAttribute("nonce", __webpack_require__.nc),
|
||||
i.setAttribute("data-webpack", n + _),
|
||||
i.src = e),
|
||||
t[e] = [r];
|
||||
var onScriptComplete = (r, _) => {
|
||||
i.onerror = i.onload = null,
|
||||
clearTimeout(d);
|
||||
var n = t[e];
|
||||
if (delete t[e],
|
||||
i.parentNode && i.parentNode.removeChild(i),
|
||||
n && n.forEach(e => e(_)),
|
||||
r)
|
||||
return r(_)
|
||||
}
|
||||
, d = setTimeout(onScriptComplete.bind(null, void 0, {
|
||||
type: "timeout",
|
||||
target: i
|
||||
}), 12e4);
|
||||
i.onerror = onScriptComplete.bind(null, i.onerror),
|
||||
i.onload = onScriptComplete.bind(null, i.onload),
|
||||
c && document.head.appendChild(i)
|
||||
}
|
||||
}
|
||||
,
|
||||
__webpack_require__.r = e => {
|
||||
"undefined" != typeof Symbol && Symbol.toStringTag && Object.defineProperty(e, Symbol.toStringTag, {
|
||||
value: "Module"
|
||||
}),
|
||||
Object.defineProperty(e, "__esModule", {
|
||||
value: !0
|
||||
})
|
||||
}
|
||||
,
|
||||
( () => {
|
||||
var e;
|
||||
__webpack_require__.g.importScripts && (e = __webpack_require__.g.location + "");
|
||||
var r = __webpack_require__.g.document;
|
||||
if (!e && r && (r.currentScript && "SCRIPT" === r.currentScript.tagName.toUpperCase() && (e = r.currentScript.src),
|
||||
!e)) {
|
||||
var _ = r.getElementsByTagName("script");
|
||||
if (_.length)
|
||||
for (var t = _.length - 1; t > -1 && (!e || !/^http(s?):/.test(e)); )
|
||||
e = _[t--].src
|
||||
}
|
||||
if (!e)
|
||||
throw new Error("Automatic publicPath is not supported in this browser");
|
||||
e = e.replace(/^blob:/, "").replace(/#.*$/, "").replace(/\?.*$/, "").replace(/\/[^\/]+$/, "/"),
|
||||
__webpack_require__.p = e
|
||||
}
|
||||
)(),
|
||||
( () => {
|
||||
var e = {
|
||||
76: 0
|
||||
};
|
||||
__webpack_require__.f.j = (r, _) => {
|
||||
var t = __webpack_require__.o(e, r) ? e[r] : void 0;
|
||||
if (0 !== t)
|
||||
if (t)
|
||||
_.push(t[2]);
|
||||
else if (76 != r) {
|
||||
var n = new Promise( (_, n) => t = e[r] = [_, n]);
|
||||
_.push(t[2] = n);
|
||||
var a = __webpack_require__.p + __webpack_require__.u(r)
|
||||
, i = new Error;
|
||||
__webpack_require__.l(a, _ => {
|
||||
if (__webpack_require__.o(e, r) && (0 !== (t = e[r]) && (e[r] = void 0),
|
||||
t)) {
|
||||
var n = _ && ("load" === _.type ? "missing" : _.type)
|
||||
, a = _ && _.target && _.target.src;
|
||||
i.message = "Loading chunk " + r + " failed.\n(" + n + ": " + a + ")",
|
||||
i.name = "ChunkLoadError",
|
||||
i.type = n,
|
||||
i.request = a,
|
||||
t[1](i)
|
||||
}
|
||||
}
|
||||
, "chunk-" + r, r)
|
||||
} else
|
||||
e[r] = 0
|
||||
}
|
||||
,
|
||||
__webpack_require__.O.j = r => 0 === e[r];
|
||||
var webpackJsonpCallback = (r, _) => {
|
||||
var t, n, [a,i,c] = _, b = 0;
|
||||
if (a.some(r => 0 !== e[r])) {
|
||||
for (t in i)
|
||||
__webpack_require__.o(i, t) && (__webpack_require__.m[t] = i[t]);
|
||||
if (c)
|
||||
var o = c(__webpack_require__)
|
||||
}
|
||||
for (r && r(_); b < a.length; b++)
|
||||
n = a[b],
|
||||
__webpack_require__.o(e, n) && e[n] && e[n][0](),
|
||||
e[n] = 0;
|
||||
return __webpack_require__.O(o)
|
||||
}
|
||||
, r = self.webpackChunkelementorFrontend = self.webpackChunkelementorFrontend || [];
|
||||
r.forEach(webpackJsonpCallback.bind(null, 0)),
|
||||
r.push = webpackJsonpCallback.bind(null, r.push.bind(r))
|
||||
}
|
||||
)()
|
||||
}
|
||||
)();
|
||||
183
assets/js/woo.js
183
assets/js/woo.js
@@ -1,183 +0,0 @@
|
||||
(function(jQuery) {
|
||||
"use strict";
|
||||
function is_mobile() {
|
||||
if (window.innerWidth < 768) {
|
||||
return !0
|
||||
} else {
|
||||
return !1
|
||||
}
|
||||
}
|
||||
function is_mobile_device() {
|
||||
if (navigator.userAgent.match(/(Android|iPhone|iPod|iPad|Phone|DROID|webOS|BlackBerry|Windows Phone|ZuneWP7|IEMobile|Tablet|Kindle|Playbook|Nexus|Xoom|SM-N900T|GT-N7100|SAMSUNG-SGH-I717|SM-T330NU)/)) {
|
||||
return !0
|
||||
} else {
|
||||
return !1
|
||||
}
|
||||
}
|
||||
function not_desktop() {
|
||||
if ((window.innerWidth < 1367 && is_mobile_device()) || window.innerWidth < 1200) {
|
||||
return !0
|
||||
} else {
|
||||
return !1
|
||||
}
|
||||
}
|
||||
function product_filters_open() {
|
||||
jQuery('.product-filters-trigger').on('click', function() {
|
||||
if (jQuery(window).width() < 992) {
|
||||
jQuery('.shop-hidden-sidebar, .body-overlay').addClass('active')
|
||||
}
|
||||
});
|
||||
jQuery('.shop-hidden-sidebar-close').on('click', function() {
|
||||
jQuery('.shop-hidden-sidebar, .body-overlay').removeClass('active')
|
||||
})
|
||||
}
|
||||
product_filters_open();
|
||||
function custom_quantity() {
|
||||
jQuery('.quantity-wrapper').each(function() {
|
||||
if (!jQuery(this).hasClass('styled')) {
|
||||
if (!jQuery('.quantity', this).hasClass('hidden')) {
|
||||
jQuery(this).addClass('styled').prepend('<div class="btn-minus"><i class="icon"></i></div>').append('<div class="btn-plus"><i class="icon"></i></div>')
|
||||
} else {
|
||||
jQuery(this).addClass('hidden')
|
||||
}
|
||||
var spinner = jQuery(this)
|
||||
, input = spinner.find('input[type="number"]')
|
||||
, btnUp = spinner.find('.btn-plus')
|
||||
, btnDown = spinner.find('.btn-minus')
|
||||
, min = input.attr('min')
|
||||
, max = input.attr('max');
|
||||
if (typeof min !== typeof undefined && min !== !1 && min !== '' && min >= 1) {
|
||||
min = parseInt(min)
|
||||
} else {
|
||||
min = 0
|
||||
}
|
||||
if (typeof max !== typeof undefined && max !== !1 && max !== '' && max > min) {
|
||||
max = parseInt(max)
|
||||
} else {
|
||||
max = 0
|
||||
}
|
||||
btnUp.on('click', function() {
|
||||
if (input.val() == '') {
|
||||
var oldValue = 0
|
||||
} else {
|
||||
var oldValue = parseInt(input.val())
|
||||
}
|
||||
if (oldValue >= max && max !== 0) {
|
||||
var newVal = oldValue
|
||||
} else {
|
||||
var newVal = oldValue + 1
|
||||
}
|
||||
input.val(newVal);
|
||||
input.trigger('change')
|
||||
});
|
||||
btnDown.on('click', function() {
|
||||
if (input.val() == '') {
|
||||
var oldValue = 0
|
||||
} else {
|
||||
var oldValue = parseInt(input.val())
|
||||
}
|
||||
if (oldValue <= min) {
|
||||
var newVal = oldValue
|
||||
} else {
|
||||
var newVal = oldValue - 1
|
||||
}
|
||||
input.val(newVal);
|
||||
input.trigger('change')
|
||||
})
|
||||
}
|
||||
})
|
||||
}
|
||||
custom_quantity();
|
||||
jQuery(document.body).on('updated_cart_totals', function() {
|
||||
custom_quantity()
|
||||
});
|
||||
window.addEventListener("load", function() {
|
||||
logico_ajax_add_to_cart();
|
||||
logico_trigger_mini_cart()
|
||||
});
|
||||
function logico_trigger_mini_cart() {
|
||||
var cart = jQuery('.mini-cart-panel');
|
||||
cart.off();
|
||||
if (window.innerWidth >= 992) {
|
||||
jQuery('.header .mini-cart-trigger').on('click', function(e) {
|
||||
e.preventDefault();
|
||||
cart.addClass('active');
|
||||
jQuery('.close-mini-cart').off();
|
||||
logico_close_mini_cart()
|
||||
})
|
||||
}
|
||||
}
|
||||
function logico_close_mini_cart() {
|
||||
jQuery('.close-mini-cart').on('click', function() {
|
||||
jQuery('.mini-cart').removeClass('active')
|
||||
})
|
||||
}
|
||||
function logico_ajax_add_to_cart() {
|
||||
if (typeof wc_add_to_cart_params !== 'undefined') {
|
||||
jQuery('.single_add_to_cart_button').off().on('click', function(e) {
|
||||
if (!(jQuery(this).hasClass('single_add_to_cart_button') && wc_add_to_cart_params.cart_redirect_after_add === 'yes')) {
|
||||
e.preventDefault();
|
||||
var button = jQuery(this);
|
||||
var form = button.closest('form.cart');
|
||||
var product_id = form.find('input[name=add-to-cart]').val() || button.val() || form.find('.variation_id').val();
|
||||
if (!product_id)
|
||||
return;
|
||||
if (button.is('.disabled'))
|
||||
return;
|
||||
var data = {
|
||||
action: 'logico_ajax_add_to_cart',
|
||||
'add-to-cart': product_id,
|
||||
security: ajax_params.ajax_nonce
|
||||
};
|
||||
form.serializeArray().forEach(function(element) {
|
||||
data[element.name] = element.value
|
||||
});
|
||||
jQuery(document.body).trigger('adding_to_cart', [button, data]);
|
||||
jQuery.ajax({
|
||||
type: 'POST',
|
||||
url: wc_add_to_cart_params.ajax_url,
|
||||
data: data,
|
||||
beforeSend: function(response) {
|
||||
button.removeClass('added').addClass('loading')
|
||||
},
|
||||
complete: function(response) {
|
||||
button.addClass('added').removeClass('loading')
|
||||
},
|
||||
success: function(response) {
|
||||
if (response.error & response.product_url) {
|
||||
window.location = response.product_url;
|
||||
return
|
||||
} else {
|
||||
jQuery(document.body).trigger('added_to_cart', [response.fragments, response.cart_hash, button])
|
||||
}
|
||||
}
|
||||
});
|
||||
return !1
|
||||
}
|
||||
})
|
||||
}
|
||||
}
|
||||
function single_product_thumb_slider() {
|
||||
jQuery('.woocommerce-product-gallery--with-images').find('.flex-control-nav').slick({
|
||||
mobileFirst: !0,
|
||||
prevArrow: '<div class="slick-button slick-prev"></div>',
|
||||
nextArrow: '<div class="slick-button slick-next"></div>',
|
||||
infinite: !1,
|
||||
adaptiveHeight: !0,
|
||||
responsive: [{
|
||||
breakpoint: 120,
|
||||
settings: {
|
||||
slidesToShow: 3
|
||||
}
|
||||
}, {
|
||||
breakpoint: 400,
|
||||
settings: {
|
||||
slidesToShow: 4
|
||||
}
|
||||
}]
|
||||
})
|
||||
}
|
||||
single_product_thumb_slider();
|
||||
setTimeout(single_product_thumb_slider, 500)
|
||||
}
|
||||
).call(this, jQuery)
|
||||
118
assets/js/woocommerce.min.js
vendored
118
assets/js/woocommerce.min.js
vendored
@@ -1,118 +0,0 @@
|
||||
function focus_populate_live_region() {
|
||||
var e = ["woocommerce-message", "woocommerce-error", "wc-block-components-notice-banner"].map(function(e) {
|
||||
return "." + e + '[role="alert"]'
|
||||
}).join(", ")
|
||||
, o = document.querySelectorAll(e);
|
||||
if (0 !== o.length) {
|
||||
var t = o[0];
|
||||
t.setAttribute("tabindex", "-1");
|
||||
var n = setTimeout(function() {
|
||||
t.focus(),
|
||||
clearTimeout(n)
|
||||
}, 500)
|
||||
}
|
||||
}
|
||||
function refresh_sorted_by_live_region() {
|
||||
var e = document.querySelector(".woocommerce-result-count");
|
||||
if (e) {
|
||||
var o = e.innerHTML;
|
||||
e.setAttribute("aria-hidden", "true");
|
||||
var t = setTimeout(function() {
|
||||
e.setAttribute("aria-hidden", "false"),
|
||||
e.innerHTML = "",
|
||||
e.innerHTML = o,
|
||||
clearTimeout(t)
|
||||
}, 2e3)
|
||||
}
|
||||
}
|
||||
function on_document_ready() {
|
||||
focus_populate_live_region(),
|
||||
refresh_sorted_by_live_region()
|
||||
}
|
||||
jQuery(function(e) {
|
||||
e(".woocommerce-ordering").on("change", "select.orderby", function() {
|
||||
e(this).closest("form").trigger("submit")
|
||||
}),
|
||||
e("input.qty:not(.product-quantity input.qty)").each(function() {
|
||||
var o = parseFloat(e(this).attr("min"));
|
||||
o >= 0 && parseFloat(e(this).val()) < o && e(this).val(o)
|
||||
}),
|
||||
document.body.addEventListener("keydown", function(e) {
|
||||
e.target.matches('a[role="button"]') && (" " !== e.key && "Enter" !== e.key || (e.preventDefault(),
|
||||
e.target.click()))
|
||||
});
|
||||
var o = "store_notice" + (e(".woocommerce-store-notice").data("noticeId") || "");
|
||||
if ("hidden" === Cookies.get(o))
|
||||
e(".woocommerce-store-notice").hide();
|
||||
else {
|
||||
e(".woocommerce-store-notice").show(),
|
||||
e(".woocommerce-store-notice__dismiss-link").on("click", function t(n) {
|
||||
Cookies.set(o, "hidden", {
|
||||
path: "/"
|
||||
}),
|
||||
e(".woocommerce-store-notice").hide(),
|
||||
n.preventDefault(),
|
||||
e(".woocommerce-store-notice__dismiss-link").off("click", t)
|
||||
})
|
||||
}
|
||||
e(".woocommerce-input-wrapper span.description").length && e(document.body).on("click", function() {
|
||||
e(".woocommerce-input-wrapper span.description:visible").prop("aria-hidden", !0).slideUp(250)
|
||||
}),
|
||||
e(".woocommerce-input-wrapper").on("click", function(e) {
|
||||
e.stopPropagation()
|
||||
}),
|
||||
e(".woocommerce-input-wrapper :input").on("keydown", function(o) {
|
||||
var t = e(this).parent().find("span.description");
|
||||
if (27 === o.which && t.length && t.is(":visible"))
|
||||
return t.prop("aria-hidden", !0).slideUp(250),
|
||||
o.preventDefault(),
|
||||
!1
|
||||
}).on("click focus", function() {
|
||||
var o = e(this).parent()
|
||||
, t = o.find("span.description");
|
||||
o.addClass("currentTarget"),
|
||||
e(".woocommerce-input-wrapper:not(.currentTarget) span.description:visible").prop("aria-hidden", !0).slideUp(250),
|
||||
t.length && t.is(":hidden") && t.prop("aria-hidden", !1).slideDown(250),
|
||||
o.removeClass("currentTarget")
|
||||
}),
|
||||
e.scroll_to_notices = function(o) {
|
||||
o.length && e("html, body").animate({
|
||||
scrollTop: o.offset().top - 100
|
||||
}, 1e3)
|
||||
}
|
||||
,
|
||||
e('.woocommerce form .woocommerce-Input[type="password"]').wrap('<span class="password-input"></span>'),
|
||||
e(".woocommerce form input").filter(":password").parent("span").addClass("password-input"),
|
||||
e(".password-input").each(function() {
|
||||
const o = e(this).find("input").attr("id");
|
||||
e(this).append('<button type="button" class="show-password-input" aria-label="' + woocommerce_params.i18n_password_show + '" aria-describedBy="' + o + '"></button>')
|
||||
}),
|
||||
e(".show-password-input").on("click", function(o) {
|
||||
o.preventDefault(),
|
||||
e(this).hasClass("display-password") ? (e(this).removeClass("display-password"),
|
||||
e(this).attr("aria-label", woocommerce_params.i18n_password_show)) : (e(this).addClass("display-password"),
|
||||
e(this).attr("aria-label", woocommerce_params.i18n_password_hide)),
|
||||
e(this).hasClass("display-password") ? e(this).siblings(['input[type="password"]']).prop("type", "text") : e(this).siblings('input[type="text"]').prop("type", "password"),
|
||||
e(this).siblings("input").focus()
|
||||
}),
|
||||
e("a.coming-soon-footer-banner-dismiss").on("click", function(o) {
|
||||
var t = e(o.target);
|
||||
e.ajax({
|
||||
type: "post",
|
||||
url: t.data("rest-url"),
|
||||
data: {
|
||||
woocommerce_meta: {
|
||||
coming_soon_banner_dismissed: "yes"
|
||||
}
|
||||
},
|
||||
beforeSend: function(e) {
|
||||
e.setRequestHeader("X-WP-Nonce", t.data("rest-nonce"))
|
||||
},
|
||||
complete: function() {
|
||||
e("#coming-soon-footer-banner").hide()
|
||||
}
|
||||
})
|
||||
}),
|
||||
e(document.body).on("item_removed_from_classic_cart updated_wc_div", focus_populate_live_region)
|
||||
}),
|
||||
document.addEventListener("DOMContentLoaded", on_document_ready);
|
||||
177
assets/js/wpforms-modern.min.js
vendored
177
assets/js/wpforms-modern.min.js
vendored
@@ -1,177 +0,0 @@
|
||||
var WPForms = window.WPForms || {};
|
||||
WPForms.FrontendModern = WPForms.FrontendModern || ( (i, o) => {
|
||||
let a = {
|
||||
init() {
|
||||
o(a.ready),
|
||||
a.bindOptinMonster()
|
||||
},
|
||||
ready() {
|
||||
a.updateGBBlockAccentColors(),
|
||||
a.initPageBreakButtons(),
|
||||
a.initButtonStyle(),
|
||||
a.events()
|
||||
},
|
||||
events() {
|
||||
o(i).on("wpforms_elementor_form_fields_initialized", a.initPageBreakButtons),
|
||||
o("form.wpforms-form").on("wpformsCombinedUploadsSizeError", a.combinedUploadsSizeError).on("wpformsFormSubmitButtonDisable", a.formSubmitButtonDisable).on("wpformsFormSubmitButtonRestore", a.formSubmitButtonRestore).on("wpformsPageChange", a.pageChange),
|
||||
o("form.wpforms-form .wpforms-submit").on("keydown click", a.disabledButtonPress),
|
||||
o(i).on("focus", ".wpforms-render-modern .wpforms-timepicker", a.updateTimepickerDropdown),
|
||||
o(i).on("focusout", ".wpforms-render-modern .wpforms-timepicker", a.resetTimepickerDropdown)
|
||||
},
|
||||
bindOptinMonster() {
|
||||
i.addEventListener("om.Campaign.load", function() {
|
||||
a.ready()
|
||||
}),
|
||||
o(i).on("OptinMonsterOnShow", function() {
|
||||
a.ready()
|
||||
})
|
||||
},
|
||||
updateTimepickerDropdown() {
|
||||
let e = a.getCssVars(o(this));
|
||||
setTimeout(function() {
|
||||
var r = o(".ui-timepicker-wrapper .ui-timepicker-list");
|
||||
r.css("background", e["field-menu-color"]),
|
||||
r.find("li").css("color", e["field-text-color"]),
|
||||
r.find(".ui-timepicker-selected").css("background", e["button-background-color"]).css("color", e["button-text-color"])
|
||||
}, 0)
|
||||
},
|
||||
resetTimepickerDropdown() {
|
||||
setTimeout(function() {
|
||||
o(".ui-timepicker-wrapper .ui-timepicker-list").find(":not(.ui-timepicker-selected)").attr("style", "")
|
||||
}, 0)
|
||||
},
|
||||
initButtonStyle() {
|
||||
o(".wpforms-block.wpforms-container-full, .elementor-widget-wpforms .wpforms-container-full").each(function() {
|
||||
var r = o(this)
|
||||
, e = getComputedStyle(r.get(0))
|
||||
, e = a.getCssVar(e, "--wpforms-button-background-color-alt");
|
||||
a.isTransparentColor(e) && r.find("button.wpforms-submit").addClass("wpforms-opacity-hover")
|
||||
})
|
||||
},
|
||||
isTransparentColor(r) {
|
||||
r = a.getColorAsRGBArray(r);
|
||||
return Number(r?.[3]) <= .33
|
||||
},
|
||||
updateGBBlockAccentColors() {
|
||||
o(".wpforms-block.wpforms-container-full, .elementor-widget-wpforms .wpforms-container-full").each(function() {
|
||||
var r = o(this);
|
||||
a.updateGBBlockPageIndicatorColor(r),
|
||||
a.updateGBBlockIconChoicesColor(r),
|
||||
a.updateGBBlockRatingColor(r)
|
||||
})
|
||||
},
|
||||
updateGBBlockPageIndicatorColor(r) {
|
||||
var r = r.find(".wpforms-page-indicator")
|
||||
, e = r.find(".wpforms-page-indicator-page-progress, .wpforms-page-indicator-page.active .wpforms-page-indicator-page-number")
|
||||
, o = e.find(".wpforms-page-indicator-page-triangle");
|
||||
r.data("indicator-color", "var( --wpforms-page-break-color )"),
|
||||
e.css("background-color", "var( --wpforms-page-break-color )"),
|
||||
o.css("border-top-color", "var( --wpforms-page-break-color )")
|
||||
},
|
||||
updateGBBlockIconChoicesColor(r) {
|
||||
r.find(".wpforms-icon-choices").css("--wpforms-icon-choices-color", "var( --wpforms-button-background-color )")
|
||||
},
|
||||
updateGBBlockRatingColor(r) {
|
||||
r.find(".wpforms-field-rating-item svg").css("color", "var( --wpforms-page-break-color, var( --wpforms-button-background-color ) )")
|
||||
},
|
||||
initPageBreakButtons() {
|
||||
o(".wpforms-page-button").removeClass("wpforms-disabled").attr("aria-disabled", "false").attr("aria-describedby", "")
|
||||
},
|
||||
combinedUploadsSizeError(r, e, o) {
|
||||
var t = e.data("formid")
|
||||
, s = e.attr("aria-errormessage") || ""
|
||||
, t = `wpforms-${t}-footer-error`
|
||||
, i = e.find(".wpforms-submit");
|
||||
e.attr({
|
||||
"aria-invalid": "true",
|
||||
"aria-errormessage": s + " " + t
|
||||
}),
|
||||
o.attr({
|
||||
role: "alert",
|
||||
id: t
|
||||
}),
|
||||
o.find("> .wpforms-hidden:first-child").remove(),
|
||||
o.prepend(`<span class="wpforms-hidden">${wpforms_settings.formErrorMessagePrefix}</span>`),
|
||||
i.attr("aria-describedby", t)
|
||||
},
|
||||
combinedUploadsSizeOk(r, e, o) {
|
||||
console.warn('WARNING! Function "WPForms.FrontendModern( e, $form, $errorCnt )" has been deprecated, please use the new "formSubmitButtonDisable: function( e, $form, $submitBtn )" function instead!'),
|
||||
e.find(".wpforms-submit").removeClass("wpforms-disabled").attr("aria-disabled", "false").attr("aria-describedby", "")
|
||||
},
|
||||
formSubmitButtonDisable(r, e, o) {
|
||||
e = e.attr("id") + "-submit-btn-disabled";
|
||||
o.before(`<div class="wpforms-hidden" id="${e}">${wpforms_settings.submitBtnDisabled}</div>`),
|
||||
o.prop("disabled", !1).addClass("wpforms-disabled").attr("aria-disabled", "true").attr("aria-describedby", e)
|
||||
},
|
||||
formSubmitButtonRestore(r, e, o) {
|
||||
var t = e.attr("id") + "-submit-btn-disabled";
|
||||
e.find("#" + t).remove(),
|
||||
o.removeClass("wpforms-disabled").attr("aria-disabled", "false").attr("aria-describedby", "")
|
||||
},
|
||||
disabledButtonPress(r) {
|
||||
!o(this).hasClass("wpforms-disabled") || "Enter" !== r.key && "click" !== r.type || (r.preventDefault(),
|
||||
r.stopImmediatePropagation())
|
||||
},
|
||||
pageChange(r, o, t) {
|
||||
var s = t.find(".wpforms-page-indicator");
|
||||
if (wpforms_settings.indicatorStepsPattern && s.length) {
|
||||
t = t.find(".wpforms-page").length;
|
||||
let r = wpforms_settings.indicatorStepsPattern, e;
|
||||
r = r.replace("{current}", o).replace("{total}", t),
|
||||
e = s.hasClass("progress") ? s.find(".wpforms-page-indicator-page-title").data(`page-${o}-title`) : s.find(`.wpforms-page-indicator-page-${o} .wpforms-page-indicator-page-title`).text(),
|
||||
r = e ? e + ". " + r : r,
|
||||
s.attr("aria-valuenow", o),
|
||||
a.screenReaderAnnounce(r, "polite")
|
||||
}
|
||||
},
|
||||
screenReaderAnnounce(r, e) {
|
||||
var o = i.createElement("div")
|
||||
, t = "wpforms-screen-reader-announce-" + Date.now();
|
||||
o.setAttribute("id", t),
|
||||
o.setAttribute("aria-live", e || "polite"),
|
||||
o.classList.add("wpforms-screen-reader-announce");
|
||||
let s = i.body.appendChild(o);
|
||||
setTimeout(function() {
|
||||
s.innerHTML = r
|
||||
}, 100),
|
||||
setTimeout(function() {
|
||||
i.body.removeChild(s)
|
||||
}, 1e3)
|
||||
},
|
||||
getColorWithOpacity(r, e) {
|
||||
return WPFormsUtils.cssColorsUtils.getColorWithOpacity(r, e)
|
||||
},
|
||||
getSolidColor(r) {
|
||||
r = r.trim();
|
||||
var e = a.getColorAsRGBArray(r);
|
||||
return e ? `rgb(${e[0]},${e[1]},${e[2]})` : r
|
||||
},
|
||||
isValidColor(r) {
|
||||
return WPFormsUtils.cssColorsUtils.isValidColor(r)
|
||||
},
|
||||
getColorAsRGBArray(r) {
|
||||
return WPFormsUtils.cssColorsUtils.getColorAsRGBArray(r)
|
||||
},
|
||||
getCssVar(r, e) {
|
||||
if (!r || "function" != typeof r.getPropertyValue)
|
||||
return null;
|
||||
let o = r.getPropertyValue(e).trim();
|
||||
return o = e.includes("color") ? o.replace(/\s/g, "") : o
|
||||
},
|
||||
getCssVars(r) {
|
||||
if (!r || !r.length)
|
||||
return null;
|
||||
var r = r.hasClass("wpforms-container") ? r : r.closest(".wpforms-container")
|
||||
, e = getComputedStyle(r.get(0))
|
||||
, o = wpforms_settings.css_vars
|
||||
, t = {};
|
||||
for (let r = 0; r < o.length; r++)
|
||||
t[o[r]] = a.getCssVar(e, "--wpforms-" + o[r]);
|
||||
return t
|
||||
}
|
||||
};
|
||||
return a
|
||||
}
|
||||
)(document, (window,
|
||||
jQuery)),
|
||||
WPForms.FrontendModern.init();
|
||||
1439
assets/js/wpforms.min.js
vendored
1439
assets/js/wpforms.min.js
vendored
File diff suppressed because it is too large
Load Diff
Reference in New Issue
Block a user