! function(e) {e.fn.sowSetupForm = function() {return e(this).each(function(i, t) {var n, a, r = e(t), s = !0, o = r.find("input[name]"); if (o.length && o.attr("name").indexOf("__i__") !== -1) return this; if (r.is(".siteorigin-widget-form-main")) {if (r.data("sow-form-setup") === !0) return !0; if (e("body").hasClass("widgets-php") && !r.is(":visible") && 0 === r.closest(".panel-dialog").length) return !0; r.on("sowstatechange", function(i, t, n) {r.find("[data-state-handler]").each(function() {var i = e(this), a = e.extend({}, i.data("state-handler"), s ? i.data("state-handler-initial") : {}); if (0 === Object.keys(a).length) return !0; var r, o, d, l, f, g, c = {}, p = window.sowForms.getRepeaterId(i); if (p !== !1) {var u = {}; for (var w in a) u[w.replace("{$repeater}", p)] = a[w]; a = u } for (var w in a) if (f = !1, r = w.match(/^([a-zA-Z0-9_-]+)(\[([a-zA-Z0-9_\-,]+)\])?(\[\])?$/), null !== r) {if (o = {group: "default", name: "", multi: !1 }, void 0 !== r[2] ? (o.group = r[1], o.name = r[3]) : o.name = r[0], o.multi = void 0 !== r[4], "_else" === o.group) o.group = o.name, o.name = "", f = o.group === t && "undefined" == typeof c[o.group]; else {g = o.name.split(",").map(function(e) {return e.trim() }); for (var m = 0; m < g.length && !(f = o.group === t && g[m] === n); m++); } if (f) {d = a[w], o.multi || (d = [d]); for (var m = 0; m < d.length; m++) l = "undefined" != typeof d[m][1] && Boolean(d[m][1]) ? i.find(d[m][1]) : i, l[d[m][0]].apply(l, "undefined" != typeof d[m][2] ? d[m][2] : []); c[o.group] = !0 } } }) }), r.sowSetupPreview(), n = r } else n = r.closest(".siteorigin-widget-form-main"); a = n.find("> .siteorigin-widgets-form-id").val(); var d = r.find("> .siteorigin-widget-field"); d.find("> .siteorigin-widget-section").sowSetupForm(), d.filter(".siteorigin-widget-field-type-widget:not(:has(> .siteorigin-widget-section))").sowSetupForm(), d.find(".siteorigin-widget-input").each(function(i, t) {null === e(t).data("original-name") && e(t).data("original-name", e(t).attr("name")) }), d.find("> .siteorigin-widget-field-repeater").sowSetupRepeater(), r.find(".siteorigin-widget-field-repeater-item").sowSetupRepeaterItems(), d.find("> .siteorigin-widget-input-color").wpColorPicker(), d.filter(".siteorigin-widget-field-type-widget, .siteorigin-widget-field-type-section").find("> label").click(function() {e(this); e(this).toggleClass("siteorigin-widget-section-visible"), e(this).siblings(".siteorigin-widget-section").slideToggle(function() {e(window).resize(), e(this).find("> .siteorigin-widget-field-container-state").val(e(this).is(":visible") ? "open" : "closed") }) }); var l = {}; d.filter(".siteorigin-widget-field-type-icon").each(function() {var i = e(this), t = i.find(".siteorigin-widget-icon-selector"), n = t.find(".siteorigin-widget-icon-icon"), a = i.find(".siteorigin-widget-icon-selector-current"); a.click(function() {t.slideToggle() }); var r = function() {var i = t.find("select.siteorigin-widget-icon-family").val(), r = t.find(".siteorigin-widget-icon-icons"); if ("undefined" != typeof l[i]) {r.empty(), 0 === e("#siteorigin-widget-font-" + i).length && e("").attr("id", "siteorigin-widget-font-" + i).attr("href", l[i].style_uri).appendTo("head"); for (var s in l[i].icons) {var o = e('
').attr("data-value", i + "-" + s).addClass("sow-icon-" + i).addClass("siteorigin-widget-icon-icons-icon").click(function() {var s = e(this); s.hasClass("siteorigin-widget-active") ? (s.removeClass("siteorigin-widget-active"), n.val(""), a.find("span").hide()) : (r.find(".siteorigin-widget-icon-icons-icon").removeClass("siteorigin-widget-active"), s.addClass("siteorigin-widget-active"), n.val(s.data("value")), a.find("span").show().attr("data-sow-icon", s.attr("data-sow-icon")).attr("class", "").addClass("sow-icon-" + i)), n.trigger("change"), t.slideUp() }); r.append(o), n.val() === i + "-" + s && (a.find("span").show().attr("data-sow-icon", o.attr("data-sow-icon")).attr("class", "").addClass("sow-icon-" + i), o.addClass("siteorigin-widget-active")) } r.prepend(r.find(".siteorigin-widget-active")) } }, s = function() {var i = t.find("select.siteorigin-widget-icon-family").val(), n = t.find("select.siteorigin-widget-icon-family option:selected").data("icons"); null !== n && (l[i] = n), "undefined" != typeof i && "" !== i && ("undefined" == typeof l[i] ? e.getJSON(soWidgets.ajaxurl, {action: "siteorigin_widgets_get_icons", family: t.find("select.siteorigin-widget-icon-family").val() }, function(e) {l[i] = e, r() }) : r()) }; s(), t.find("select.siteorigin-widget-icon-family").change(function() {t.find(".siteorigin-widget-icon-icons").empty(), s() }) }), d.filter(".siteorigin-widget-field-type-slider").each(function() {var i = e(this), t = i.find('input[type="number"]'), n = i.find(".siteorigin-widget-value-slider"); n.slider({max: parseInt(t.attr("max")), min: parseInt(t.attr("min")), value: parseInt(t.val()), slide: function(e, n) {t.val(parseInt(n.value)), i.find(".siteorigin-widget-slider-value").html(n.value) } }) }), d.filter(".siteorigin-widget-field-type-link").each(function() {var i = e(this), t = null, n = function() {null !== t && t.abort(); var n = i.find(".content-text-search").val(), a = i.find("ul.posts").empty().addClass("loading"); e.get(soWidgets.ajaxurl, {action: "so_widgets_search_posts", query: n }, function(i) {for (var t = 0; t < i.length; t++) "" === i[t].post_title && (i[t].post_title = " "), a.append(e("
  • ").addClass("post").html(i[t].post_title + "(" + i[t].post_type + ")").data(i[t])); a.removeClass("loading") }) }; i.find(".select-content-button, .button-close").click(function(t) {t.preventDefault(), e(this).blur(); var a = i.find(".existing-content-selector"); a.toggle(), a.is(":visible") && 0 === a.find("ul.posts li").length && n() }), i.on("click", ".posts li", function(t) {t.preventDefault(); var n = e(this); i.find("input.siteorigin-widget-input").val("post: " + n.data("ID")), i.find(".existing-content-selector").toggle() }); var a = null; i.find(".content-text-search").keyup(function() {null !== a && clearTimeout(a), a = setTimeout(function() {n() }, 500) }) }), "undefined" != typeof jQuery.fn.soPanelsSetupBuilderWidget && d.filter(".siteorigin-widget-field-type-builder").each(function() {var i = e(this); i.find("> .siteorigin-page-builder-field").soPanelsSetupBuilderWidget() }); var f = function() {var i = e(this), t = i.closest("[data-state-emitter]").data("state-emitter"); if ("undefined" != typeof t) {var a = function(t, n) {if ("undefined" == typeof sowEmitters[t.callback] || "_" === t.callback.substr(0, 1)) return n; var a = window.sowForms.getRepeaterId(i); return a !== !1 && (t.args = t.args.map(function(e) {return e.replace("{$repeater}", a) })), e.extend(n, sowEmitters[t.callback](i.val(), t.args)) }, r = {"default": ""}; "undefined" == typeof t.length && (t = [t]); for (var s = 0; s < t.length; s++) r = a(t[s], r); var o = n.data("states"); "undefined" == typeof o && (o = {"default": ""}); for (var d in r) "undefined" != typeof o[d] && r[d] === o[d] || (o[d] = r[d], n.trigger("sowstatechange", [d, r[d]])); n.data("states", o) } }; d.filter("[data-state-emitter]").each(function() {e(this).find(".siteorigin-widget-input").on("keyup change", f), e(this).find(".siteorigin-widget-input").each(function() {var i = e(this); i.is(":radio") ? i.is(":checked") && f.call(i[0]) : f.call(i[0]) }) }), r.trigger("sowsetupform", d).data("sow-form-setup", !0), d.trigger("sowsetupformfield"), r.find(".siteorigin-widget-field-repeater-item").trigger("updateFieldPositions"), s = !1 }) }, e.fn.sowSetupPreview = function() {var i = e(this), t = i.siblings(".siteorigin-widget-preview"); t.find("> a").click(function(t) {t.preventDefault(); var n = {}; i.find("*[name]").each(function() {var i = e(this), t = /[a-zA-Z0-9\-]+\[[a-zA-Z0-9]+\]\[(.*)\]/.exec(i.attr("name")); if (void 0 === t) return !0; t = t[1]; var a = t.split("]["); a = a.map(function(e) {return !isNaN(parseFloat(e)) && isFinite(e) ? parseInt(e) : e }); for (var r = n, s = 0; s < a.length; s++) if (s === a.length - 1) if ("checkbox" === i.attr("type")) i.is(":checked") ? r[a[s]] = "" === i.val() || i.val() : r[a[s]] = !1; else if ("radio" === i.attr("type")) i.is(":checked") && (r[a[s]] = "" === i.val() || i.val()); else if ("TEXTAREA" === i.prop("tagName") && i.hasClass("wp-editor-area")) {var o = null; "undefined" != typeof tinyMCE && (o = tinyMCE.get(i.attr("id"))), null === o || "function" != typeof o.getContent || o.isHidden() ? r[a[s]] = i.val() : r[a[s]] = o.getContent() } else r[a[s]] = i.val(); else "undefined" == typeof r[a[s]] && (r[a[s]] = {}), r = r[a[s]] }); var a = e(e("#so-widgets-bundle-tpl-preview-dialog").html().trim()).appendTo("body"); /*a.find('input[name="data"]').val(JSON.stringify(n)), a.find('input[name="class"]').val(i.data("class")), a.find("iframe").on("load", function() {e(this).css("visibility", "visible") }), a.find("form").submit(), a.find(".close").click(function() {a.remove() })*/ }) }, e.fn.sowSetupRepeater = function() {return e(this).each(function(i, t) {var n = e(t), a = n.find(".siteorigin-widget-field-repeater-items"), r = n.data("repeater-name"); a.bind("updateFieldPositions", function() {var i = e(this), t = i.find("> .siteorigin-widget-field-repeater-item"); t.each(function(i, t) {e(t).find(".siteorigin-widget-input").each(function(t, n) {var a = e(n).data("repeater-positions"); "undefined" == typeof a && (a = {}), a[r] = i, e(n).data("repeater-positions", a) }) }), i.find(".siteorigin-widget-input").each(function(i, t) {var n = e(t).data("repeater-positions"), a = e(t); if ("undefined" != typeof n) {var r = a.data("original-name"); if ("undefined" == typeof r && (a.data("original-name", a.attr("name")), r = a.attr("name")), !r) return; for (var s in n) r = r.replace("#" + s + "#", n[s]); e(t).attr("name", r) } }); var a = n.data("scroll-count") ? parseInt(n.data("scroll-count")) : 0; if (a > 0 && t.length > a) {var s = t.first().outerHeight(); i.css("max-height", s * a).css("overflow", "auto") } else i.css("max-height", "").css("overflow", "") }), a.sortable({handle: ".siteorigin-widget-field-repeater-item-top", items: "> .siteorigin-widget-field-repeater-item", update: function() {a.trigger("updateFieldPositions") } }), a.trigger("updateFieldPositions"), n.find("> .siteorigin-widget-field-repeater-add").disableSelection().click(function(i) {i.preventDefault(), n.closest(".siteorigin-widget-field-repeater").sowAddRepeaterItem().find("> .siteorigin-widget-field-repeater-items").slideDown("fast", function() {e(window).resize() }) }), n.find("> .siteorigin-widget-field-repeater-top > .siteorigin-widget-field-repeater-expand").click(function(i) {i.preventDefault(), n.closest(".siteorigin-widget-field-repeater").find("> .siteorigin-widget-field-repeateritems-").slideToggle("fast", function() {e(window).resize() }) }) }) }, e.fn.sowAddRepeaterItem = function() {return e(this).each(function(i, t) {var n = e(t), a = n.find("> .siteorigin-widget-field-repeater-items").children().length + 1, r = e("
    " + n.find("> .siteorigin-widget-field-repeater-item-html").html() + "
    "); r.find("[data-name]").each(function() {var i = e(this); 0 === i.closest(".siteorigin-widget-field-repeater-item-html").length && i.attr("name", e(this).data("name")) }); var s = r.html().replace(/_id_/g, a), o = "undefined" != typeof n.attr("readonly"), d = e('
    ').append(e('
    ').append(e('
    ')).append(o ? "" : e('
    ')).append(o ? "" : e('
    ')).append(e("

    ").html(n.data("item-name")))).append(e('
    ').html(s)); n.find("> .siteorigin-widget-field-repeater-items").append(d).sortable("refresh").trigger("updateFieldPositions"), d.sowSetupRepeaterItems(), d.hide().slideDown("fast", function() {e(window).resize() }) }) }, e.fn.sowRemoveRepeaterItem = function() {return e(this).each(function(i, t) {var n = e(this).closest(".siteorigin-widget-field-repeater-items"); e(this).remove(), n.sortable("refresh").trigger("updateFieldPositions") }) }, e.fn.sowSetupRepeaterItems = function() {return e(this).each(function(i, t) {var n = e(t); if ("undefined" == typeof n.data("sowrepeater-actions-setup")) {var a = n.closest(".siteorigin-widget-field-repeater"), r = n.find("> .siteorigin-widget-field-repeater-item-top"), s = a.data("item-label"); if (s && s.selector) {var o = function() {var e = s.hasOwnProperty("valueMethod") && s.valueMethod ? s.valueMethod : "val", i = n.find(s.selector)[e](); i && (i.length > 80 && (i = i.substr(0, 79) + "..."), r.find("h4").text(i)) }; o(); var d = s.hasOwnProperty("updateEvent") && s.updateEvent ? s.updateEvent : "change"; n.bind(d, o) } r.click(function(i) {"siteorigin-widget-field-remove" !== i.target.className && "siteorigin-widget-field-copy" !== i.target.className && (i.preventDefault(), e(this).closest(".siteorigin-widget-field-repeater-item").find(".siteorigin-widget-field-repeater-item-form").eq(0).slideToggle("fast", function() {e(window).resize(), e(this).is(":visible") ? e(this).trigger("slideToggleOpenComplete") : e(this).trigger("slideToggleCloseComplete") })) }), r.find(".siteorigin-widget-field-remove").click(function(i) {if (i.preventDefault(), confirm(soWidgets.sure)) {var t = e(this).closest(".siteorigin-widget-field-repeater-items"); e(this).closest(".siteorigin-widget-field-repeater-item").slideUp("fast", function() {e(this).remove(), t.sortable("refresh").trigger("updateFieldPositions"), e(window).resize() }) } }), r.find(".siteorigin-widget-field-copy").click(function(i) {i.preventDefault(); var t = e(this).closest(".siteorigin-widget-form-main"), a = e(this).closest(".siteorigin-widget-field-repeater-item"), r = a.clone(), s = a.closest(".siteorigin-widget-field-repeater-items"), o = s.children().length, d = {}; r.find("*[name]").each(function() {var i = e(this), s = i.attr("id"), l = i.attr("name"); if (i.is("textarea") && i.parent().is(".wp-editor-container") && "undefined" != typeof tinymce) {i.parent().empty().append(i), i.css("display", ""); var f = tinymce.get(s); f && i.val(f.getContent()) } else if (i.is(".wp-color-picker")) {var g = i.closest(".wp-picker-container"), c = i.closest(".siteorigin-widget-field"); g.remove(), c.append(i.remove()) } else {var p = a.find('[name="' + l + '"]'); p.length && null != p.val() && i.val(p.val()) } if (s) {var u = s.replace(/-\d+$/, ""); d[u] || (d[u] = t.find(".siteorigin-widget-input[id^=" + u + "]").not("[id*=_id_]").length + 1); var w = u + "-" + d[u]++; i.attr("id", w), r.find("label[for=" + s + "]").attr("for", w), r.find("[id*=" + s + "]").each(function() {var i = e(this).attr("id"), t = i.replace(s, w); e(this).attr("id", t) }), "undefined" != typeof tinymce && tinymce.get(w) && tinymce.get(w).remove() } var m = a.parents(".siteorigin-widget-field-repeater").length, v = e("body"); (v.hasClass("wp-customizer") || v.hasClass("widgets-php")) && 0 == n.closest(".panel-dialog").length && (m += 1); var h = l.replace(new RegExp("((?:.*?\\[\\d+\\]){" + (m - 1).toString() + "})?(.*?\\[)\\d+(\\])"), "$1$2" + o.toString() + "$3"); i.attr("name", h), i.data("original-name", h) }), s.append(r).sortable("refresh").trigger("updateFieldPositions"), r.sowSetupRepeaterItems(), r.hide().slideDown("fast", function() {e(window).resize() }) }), n.find("> .siteorigin-widget-field-repeater-item-form").sowSetupForm(), n.data("sowrepeater-actions-setup", !0) } }) }; var i = {getRepeaterId: function(e) {"undefined" == typeof this.id && (this.id = 1); var i = e.closest(".siteorigin-widget-field-repeater-item"); if (i.length) {var t = i.data("item-id"); return void 0 === t && (t = this.id++), i.data("item-id", t), t } return !1 }, getWidgetFieldVariable: function(e, i, t) {var n = window.sow_field_javascript_variables[e]; i = i.replace(/\[#.*?#\]/g, ""); for (var a = /[a-zA-Z0-9\-]+(?:\[c?[0-9]+\])?\[(.*)\]/.exec(i)[1], r = a.split("]["), s = r.length ? n : null; r.length;) s = s[r.shift()]; return s[t] }, fetchWidgetVariable: function(i, t, n) {window.sowVars = window.sowVars || {}, "undefined" == typeof window.sowVars[t] ? e.post(soWidgets.ajaxurl, {action: "sow_get_javascript_variables", widget: t, key: i }, function(e) {window.sowVars[t] = e, n(window.sowVars[t][i]) }) : n(window.sowVars[t][i]) } }; window.sowForms = i, e(".widgets-holder-wrap").on("click", ".widget:has(.siteorigin-widget-form-main) .widget-top", function() {var i = e(this).closest(".widget").find(".siteorigin-widget-form-main"); setTimeout(function() {i.sowSetupForm() }, 200) }), e("body").hasClass("wp-customizer") && e(document).on("widget-added", function(e, i) {i.find(".siteorigin-widget-form").sowSetupForm() }), e(document).on("dialogopen", function(i) {e(i.target).find(".siteorigin-widget-form-main").sowSetupForm() }), e(function() {e(document).trigger("sowadminloaded") }) }(jQuery); var sowEmitters = {_match: function(e, i) {"undefined" == typeof i && (i = ".*"); var t = new RegExp("^([a-zA-Z0-9_-]+)(\\[([a-zA-Z0-9_-]+)\\])? *: *(" + i + ") *$"), n = t.exec(e); if (null === n) return !1; var a = "", r = "default"; return void 0 !== n[3] ? (r = n[1], a = n[3]) : a = n[1], {match: n[4].trim(), group: r, state: a } }, _checker: function(e, i, t, n) {var a = {}; "undefined" == typeof i.length && (i = [i]); for (var r, s = 0; s < i.length; s++) r = sowEmitters._match(i[s], t), r !== !1 && ("_true" === r.match || n(e, i, r.match)) && (a[r.group] = r.state); return a }, select: function(e, i) {"undefined" == typeof i.length && (i = [i]); for (var t = {}, n = 0; n < i.length; n++) "" === i[n] && (i[n] = "default"), t[i[n]] = e; return t }, conditional: function(val, args) {return sowEmitters._checker(val, args, "[^;{}]*", function(val, args, match) {return eval(match) }) }, "in": function(e, i) {return sowEmitters._checker(e, i, "[^;{}]*", function(e, i, t) {return t.split(",").map(function(e) {return e.trim() }).indexOf(e) !== -1 }) } };