PATH:
home
/
lab2454c
/
costbloc.com
/
Modules
/
CMS
/
Resources
/
assets
/
js
"use strict";$(function(){let a;$(document).on("select2:select",".filter-column",function(c){c.stopPropagation(),a=$(this).closest(".filter-query-container").data("prefix");let e=$(this).val(),g=d($(this).closest(".filter-query-container").find(".filter-type").val());if(!queryOperations[g].hasOwnProperty(e))return;let h="query"===g?f(queryOperations.query[e]):b(),i="query"===g?"operation":"order",j="query"===g?"order":"operation";$(this).closest(".filter-query-container").find(".filter-"+j+"-container").removeClass("filter-"+j+"-container").addClass("filter-"+i+"-container"),$(this).closest(".filter-query-container").find(".filter-"+i+"-container").html(h),$(this).closest(".filter-query-container").find(".filter-"+i).select2(),$(this).closest(".filter-query-container").find(".filter-value-container").html("")});const b=()=>` <select class="select2 filter-order" name="${i("order")}"> <option value="asc">${jsLang("ASC")}</option> <option value="desc">${jsLang("DESC")}</option> </select> `,c=a=>d($(a).val()),d=a=>"where"===a||"orWhere"===a?"query":"order";$(document).on("select2:selecting",".filter-type",function(){$(this).attr("data-prev",$(this).val())}),$(document).on("select2:select",".filter-type",function(b){if(b.stopPropagation(),!($(this).attr("data-prev")&&d($(this).attr("data-prev"))==d($(this).val()))){a=$(this).closest(".filter-query-container").data("prefix");let b=c(this);if(queryOperations.hasOwnProperty(b)){let a=e(queryOperations[b]);$(this).closest(".filter-query-container").find(".filter-column-container").html(a),$(this).closest(".filter-query-container").find(".filter-column").select2({}),$(this).closest(".filter-query-container").find(".filter-value-container, .filter-order-container, .filter-operation-container").html("")}}});const e=a=>{let b=`<select class="select2 filter-column" name="${i("column")}">`;for(const c in b+=`<option value="" selected disabled>${jsLang("Column")}</option>`,a)b+=`<option value="${c}">${a[c].name}</option>`;return b+=`</select>`},f=a=>{let b=a.operations,c=`<select class="select2 filter-operation" name="${i("operation")}">`;for(const d in c+=`<option value="" selected disabled>${jsLang("Operation")}</option>`,b)c+=g(b[d]);return c+=`</select>`,c},g=a=>h(a),h=a=>`<option value="${a.value}">${a.name}</option>`,i=b=>`${a}[${b}]`,j=a=>{let b,c=a.input;return"select"==c.type?(!0==c.ajax&&(c.class+=` has-ajax-query`),b=n(c),c.options&&$(b).append(m(c))):"date"==c.type&&(b=k(c)),b},k=a=>` <input class="single-date-picker form-control filter-value ${a.class}" placeholder="${a.placeholder}" name="${i("value")}"> `,l=a=>{$(a).find(".single-date-picker").daterangepicker(clearableDateRangePickerConf({autoUpdateInput:!0,showDropdowns:!0,minDate:null}))},m=a=>{let b="";for(const c in a.options)b+=`<option value="${c}">${a.options[c]}</option>`;return b},n=a=>$(`<select class="select2 filter-value ${a.class}" placeholder="${a.placeholder??""}" name="${i("value")+("multiple"==a.multiple?"[]":"")}" ${"multiple"==a.multiple?"multiple":""}></select>`);$(document).on("select2:select",".filter-operation",function(){let b=$(this).closest(".filter-query-container").find(".filter-column").val();a=$(this).closest(".filter-query-container").data("prefix");let c=$(this).val(),d=queryOperations.query[b].operations[c];if(null!=!d){let a=j(d);$(this).closest(".filter-query-container").find(".filter-value-container").html(a),o($(this).closest(".filter-query-container"))}});const o=a=>{let b=$(a).find(".filter-value");if(b.hasClass("has-ajax-query")){let b=p(a);$(a).find(".filter-value").select2({ajax:{url:ajaxResourceUrl+b,dataType:"json",delay:250,data:function(a){return{q:a.term,page:a.page}},processResults:function(a){let b=a.data;return{results:b}},cache:!0},placeholder:jsLang("Search by name"),minimumInputLength:3,tags:!1})}else b.hasClass("single-date-picker")?l(a):b.hasClass("select2")&&$(a).find(".filter-value").select2({})},p=a=>{let b="?";return b+=`column=${encodeURIComponent($(a).find(".filter-column").val())}`,b};$(".filter-query-container").each(function(){o(this)}),$(document).on("click",".__query.add-row-btn",function(){let a=$(this).data("index");if(null!=a){let b=$(q({index:parseInt(a)}));$(this).closest(".filter-query-container").parent().append(b),$(b).find(".select2").select2({}),0==$(this).closest(".accordion-action-group").find(".remove-row-btn").length&&$(r(a)).insertAfter($(this)),$(this).remove()}});const q=(a={})=>null!=a.index&&` <div class="card mb-3 filter-query-container" data-prefix="query[${a.index}]" data-next="${a.index+1}"> <div class="card-header p-2" id="headingOne"> <div class="mb-0 row"> <div class="col-md-2 col-12 filter-type-container"> <select name="query[${a.index}][type]" class="select2 filter-type"> <option value="" disabled selected>${jsLang("Query")}</option> <option value="where">${jsLang("Where")}</option> <option value="orWhere">${jsLang("Or Where")}</option> <option value="orderBy">${jsLang("Order By")}</option> </select> </div> <div class="col-md-4 col-12 filter-column-container"> </div> <div class="col-md-2 col-12 filter-operation-container"> </div> <div class="col-md-4 col-12 filter-value-container"> </div> <span class="b-icon"> <span class="accordion-action-group"> <span class="accordion-row-action add-row-btn __query __private" data-index="${a.index+1}"><i class="feather icon-plus"></i> </span> <span class="accordion-row-action remove-row-btn __private __query" data-index="${a.index+1}"><i class="feather icon-minus"></i> </span> </span> </span> </div> </div> </div> `,r=a=>`<span class="accordion-row-action remove-row-btn __private __query" data-index="${a+1}"><i class="feather icon-minus"></i> </span>`,s=a=>`<span class="accordion-row-action add-row-btn __query __private" data-index="${a+1}"><i class="feather icon-plus"></i> </span>`;$(document).on("click",".__query.remove-row-btn",function(){if(0<$(this).closest(".accordion-action-group").find(".add-row-btn").length){let a=parseInt($(this).data("index")),b=$(this).closest(".filter-query-container").prev().find(".accordion-action-group");b.append(s(a))}let a=$(this).closest(".accordion").children();$(this).closest(".filter-query-container").remove(),2===a.length&&a.find(".remove-row-btn").remove()})});
[-] slider.js
[edit]
[+]
..
[-] page.js
[edit]
[-] query.min.js
[edit]
[-] app.min.js
[edit]
[-] app.js
[edit]
[-] slider.min.js
[edit]
[-] jquery-ui.js
[edit]
[-] user-custom.js
[edit]
[-] page.min.js
[edit]
[-] builder.min.js
[edit]
[-] query.js
[edit]
[-] builder.js
[edit]
[-] jquery-ui.min.js
[edit]
[-] theme.min.js
[edit]
[-] theme.js
[edit]