PageSourceSearch

https://bodyfatgenius.com/wp-content/plugins/wp-meta-data-filter-and-taxonomy-filter/js/front.js?ver=6.1.14

js bodyfatgenius.com collected 2026-10-04 02:16:32 UTC 52,562 bytes, 1,396 lines download raw bytes

1"use strict";
2
3var mdf_range_update = false;
4var mdf_ajax_content_redraw_page = 0;
5
6
7try {
8    var mdf_woo_catalog_order_by = mdf_default_order_by;
9    var mdf_woo_catalog_order = mdf_default_order;
10} catch (e) {
11
12}
13//***
14jQuery(function () {
15    mdf_init();
16});
17//***
18function mdf_init() {
19
20    if (!jQuery('#pn_html_buffer').length) {
21        jQuery('body').append('<div id="pn_html_buffer" class="mdf_info_popup" style="display: none;"></div>');
22        jQuery('body').append('<div id="pn_html_buffer2" style="display: none;"></div>');
23    }
24    //+++
25
26    mdf_hide_empty_blocks_titles();
27
28    //+++
29    mdf_tooltip_init();
30    mdf_init_checkboxes_scroll();
31    mdf_init_selects();
32    mdf_init_checkboxes();
33    mdf_init_range_select();
34    mdf_init_multislect_emulator();
35    //+++
36
37    jQuery('body').on('change', '.mdf_range_min', function () {
38        var slider_id = jQuery(this).data('slider-id');
39        mdf_range_update = true;
40        jQuery("#" + slider_id).ionRangeSlider("update", {
41            from: parseFloat(jQuery(this).val(), 10)
42        });
43        mdf_range_update = false;
44        mdf_ajax_content_redraw_page = 0;
45    });
46
47
48    jQuery('body').on('change', '.mdf_range_max', function () {
49        var slider_id = jQuery(this).data('slider-id');
50        mdf_range_update = true;
51        jQuery("#" + slider_id).ionRangeSlider("update", {
52            to: parseFloat(jQuery(this).val(), 10)
53        });
54        mdf_range_update = false;
55        mdf_ajax_content_redraw_page = 0;
56    });
57    //css selects
58    mdf_init_selects();
59    //work with taxonomy
60    //select
61    jQuery('body').on('change', '.mdf_taxonomy', function () {
62        mdf_deinit_chosen_selects();
63        var tax_name = jQuery(this).data('tax-name');
64        //+++
65        jQuery(this).next('.mdf_taxonomy_child_container').show(200);
66        var _this = this;
67        var is_auto_submit = jQuery(this).parents('.mdf_input_container').hasClass('mdf_tax_auto_submit');
68        var is_tax_ajax_autorecount = jQuery(this).parents('.mdf_input_container').hasClass('mdf_tax_ajax_autorecount');
69        var slug = jQuery(this).parents('form').find('input[name="mdf[mdf_widget_options][slug]"]').val();
70        var form = jQuery(this).parents('form');
71        var tax_title = jQuery(this).data('tax_title');
72        mdf_ajax_content_redraw_page = 0;
73        var data = {
74            action: "mdf_draw_term_childs",
75            type: 'select',
76            tax_name: tax_name,
77            mdf_parent_id: jQuery(this).val(),
78            hide: jQuery(this).data('hide'),
79            page_mdf: jQuery(this).parents('form').find('.hidden_page_mdf_for_ajax').val(),
80            mdf_cat: jQuery(this).parents('form').find('input[name="mdf[mdf_widget_options][meta_data_filter_cat]"]').val(),
81            tax_title: tax_title,
82            slug: slug,
83            is_auto_submit: is_auto_submit
84        };
85        jQuery.post(ajaxurl, data, function (content) {
86            var cont = jQuery(_this).parents(".mdf_section_tax");
87            var child_id = jQuery(cont).find(".mdf_taxonomy").length + 1;
88            jQuery(cont).find("[data-level-id='" + child_id + "']").hide();
89            //+++
90            if (is_auto_submit || is_tax_ajax_autorecount) {
91                jQuery(_this).next('.mdf_taxonomy_child_container').hide();
92                jQuery(_this).next('.mdf_taxonomy_child_container2').hide();
93            }
94
95            //+++
96
97            jQuery(_this).next('.mdf_taxonomy_child_container').html(content);
98
99            if (jQuery(_this).next('.mdf_taxonomy_child_container').next('.mdf_taxonomy_child_container2').length) {
100                jQuery(_this).next('.mdf_taxonomy_child_container').next('.mdf_taxonomy_child_container2').remove();
101            } else {
102                jQuery(_this).next('.mdf_taxonomy_child_container').next('.mdf_taxonomy_child_container').remove();
103            }
104
105            //+++
106
107            if (!content) {
108                jQuery(_this).next('.mdf_taxonomy_child_container').hide().html(mdf_tax_loader);
109            }
110            if (jQuery(_this).parents('.mdf_input_container').hasClass('mdf_tax_auto_submit')) {
111                jQuery(_this).parents('form').submit();
112            }
113
114            //ajax recount
115            if (jQuery(form).hasClass('mdf_ajax_auto_recount')) {
116                mdf_ajax_data_recount(jQuery(form).attr('id'), slug, false);
117            }
118        });
119
120        return true;
121    });
122
123    //checkbox
124    jQuery('body').on('change', '.mdf_taxonomy_checkbox', function () {
125        var tax_name = jQuery(this).data('tax-name');
126        var is_auto_submit = jQuery(this).parents('.mdf_input_container').hasClass('mdf_tax_auto_submit');
127        var form = jQuery(this).parents('form');
128        if (!jQuery(this).hasClass('mdf_has_childs') && !jQuery(form).hasClass('mdf_ajax_auto_recount')) {
129            if (is_auto_submit) {
130                jQuery(this).parents('form').submit();
131            }
132            return true;
133        }
134
135        //+++
136        var _this = this;
137        var term_id = jQuery(this).val();
138        var slug = jQuery(this).parents('form').find('input[name="mdf[mdf_widget_options][slug]"]').val();
139        //+++
140        mdf_ajax_content_redraw_page = 0;
141        if (jQuery(this).is(":checked")) {
142            jQuery(this).prev("input[type=hidden]").val(term_id);
143
144            if (!show_tax_all_childs)
145            {
146                if (mdf_use_custom_icheck) {
147                    jQuery(_this).parent().parent().find('.mdf_taxonomy_child_container').show(200);
148                } else {
149                    jQuery(_this).parent().find('.mdf_taxonomy_child_container').show(200);
150                }
151
152                var data = {
153                    action: "mdf_draw_term_childs",
154                    type: 'checkbox',
155                    tax_name: tax_name,
156                    mdf_parent_id: term_id,
157                    hide: jQuery(this).data('hide'),
158                    page_mdf: jQuery(this).parents('form').find('.hidden_page_mdf_for_ajax').val(),
159                    mdf_cat: jQuery(this).parents('form').find('input[name="mdf[mdf_widget_options][meta_data_filter_cat]"]').val(),
160                    slug: slug,
161                    is_auto_submit: is_auto_submit
162                };
163                jQuery.post(ajaxurl, data, function (content) {
164                    if (is_auto_submit) {
165                        jQuery(_this).parent().find('.mdf_taxonomy_child_container').hide();
166                    }
167
168                    if (mdf_use_custom_icheck) {
169                        jQuery(_this).parent().parent().find('.mdf_taxonomy_child_container').html(content);
170                        mdf_init_checkboxes();
171                    } else {
172                        jQuery(_this).parent().find('.mdf_taxonomy_child_container').html(content);
173                    }
174
175                    if (!content) {
176                        jQuery(_this).parent().find('.mdf_taxonomy_child_container').hide().html(mdf_tax_loader);
177                    }
178                    if (jQuery(_this).parents('.mdf_input_container').hasClass('mdf_tax_auto_submit')) {
179                        jQuery(_this).parents('form').submit();
180                    }
181
182                    //ajax recount
183                    if (jQuery(form).hasClass('mdf_ajax_auto_recount')) {
184                        mdf_ajax_data_recount(jQuery(form).attr('id'), slug, false);
185                    }
186                });
187            } else {
188                if (jQuery(_this).parents('.mdf_input_container').hasClass('mdf_tax_auto_submit')) {
189                    jQuery(_this).parents('form').submit();
190                }
191
192                //ajax recount
193                if (jQuery(form).hasClass('mdf_ajax_auto_recount')) {
194                    mdf_ajax_data_recount(jQuery(form).attr('id'), slug, false);
195                }
196            }
197        } else {
198
199            if (!show_tax_all_childs) {
200                if (mdf_use_custom_icheck) {
201                    jQuery(_this).parent().parent().find('.mdf_taxonomy_child_container').hide().html(mdf_tax_loader);
202                } else {
203                    jQuery(_this).parent().find('.mdf_taxonomy_child_container').hide().html(mdf_tax_loader);
204                }
205            }
206            //***
207            if (jQuery(this).parents('.mdf_input_container').hasClass('mdf_tax_auto_submit')) {
208                jQuery(this).parents('form').submit();
209            }
210            //ajax recount
211            if (jQuery(form).hasClass('mdf_ajax_auto_recount')) {
212                mdf_ajax_data_recount(jQuery(form).attr('id'), slug, false);
213            }
214        }
215
216        return true;
217    });
218
219    //+++
220    //for shortcode
221    try {
222        jQuery('.mdf_widget_found_count span').html(mdf_found_totally);
223    } catch (e) {
224
225    }
226
227    jQuery('.mdf_sort_panel_order_by').on('change', function () {
228        var val = jQuery(this).val();
229        if (val == 0) {
230            val = mdf_default_order_by;
231        }
232        var href = window.location.href;
233
234        if (mdf_is_search_going == 1) {
235            href = mdtf_remove_param('order_by', href);
236            href = mdtf_remove_param('order', href);
237            window.location.href = href + '&order_by=' + val + '&order=' + mdf_sort_order;
238        } else {
239            mdf_util_order_no_search(mdf_sort_order, val);
240            return false;
241        }
242
243    });
244
245
246    jQuery('.mdf_sort_panel_ordering').on('change', function () {
247        var val = jQuery(this).val();
248        var href = window.location.href;
249        if (mdf_is_search_going == 1) {
250            href = mdtf_remove_param('order_by', href);
251            href = mdtf_remove_param('order', href);
252            window.location.href = href + '&order_by=' + mdf_order_by + '&order=' + val;
253        } else {
254            mdf_util_order_no_search(val, mdf_order_by);
255            return false;
256        }
257    });
258
259    jQuery('.mdf_custom_filter_panel a').on('click', function () {
260        var href = window.location.href;
261
262        if (mdf_is_search_going == 1) {
263            href = mdtf_remove_param('order_by', href);
264            href = mdtf_remove_param('order', href);
265            window.location.href = href + '&order_by=' + jQuery(this).data('order-by') + '&order=' + jQuery(this).data('order');
266        } else {
267            mdf_util_order_no_search(jQuery(this).data('order'), jQuery(this).data('order-by'));
268            return false;
269        }
270        return false;
271    });
272
273
274    //+++
275    jQuery('body').on('click', '.mdf_front_toggle', function () {
276        var condition = jQuery(this).data('condition');
277        if (condition == 'opened') {
278            jQuery(this).removeClass('mdf_front_toggle_opened');
279            jQuery(this).addClass('mdf_front_toggle_closed');
280            jQuery(this).data('condition', 'closed');
281            jQuery(this).text(mdf_toggle_open_sign);
282            jQuery(this).parent().prev('.mdf_filter_post_blocks_toggles').val(2);
283        } else {
284            jQuery(this).addClass('mdf_front_toggle_opened');
285            jQuery(this).removeClass('mdf_front_toggle_closed');
286            jQuery(this).data('condition', 'opened');
287            jQuery(this).text(mdf_toggle_close_sign);
288            jQuery(this).parent().prev('.mdf_filter_post_blocks_toggles').val(1);
289        }
290
291        if (jQuery(this).parent().next('.mdf_filter_section, .mdf_tax_filter_section').hasClass('mdf_front_toggle_closed_section')) {
292            jQuery(this).parent().next('.mdf_filter_section, .mdf_tax_filter_section').hide();
293            jQuery(this).parent().next('.mdf_filter_section, .mdf_tax_filter_section').removeClass('mdf_front_toggle_closed_section');
294        }
295        jQuery(this).parent().next('.mdf_filter_section, .mdf_tax_filter_section').toggle(500);
296        return false;
297    });
298
299    //activate submit button
300    jQuery('body').on('click', jQuery('.mdf_widget_form, .mdf_shortcode_form').find('input'), function () {
301        jQuery(this).parents('form').find("input[type=submit]").removeProp('disabled');
302    });
303
304    jQuery('body').on('change', jQuery('.mdf_widget_form, .mdf_shortcode_form').find('input'), function () {
305        jQuery(this).parents('form').find("input[type=submit]").removeProp('disabled');
306    });
307
308    jQuery('body').on('change', jQuery('.mdf_widget_form, .mdf_shortcode_form').find('select'), function () {
309        jQuery(this).parents('form').find("input[type=submit]").removeProp('disabled');
310    });
311
312    //+++
313    jQuery('body').on('change', '.mdf_filter_categories', function () {
314        var term_id = jQuery(this).val();
315        //for ajax searching
316        if (jQuery(this).parents('.widget-meta-data-filter').find('form').hasClass('mdf_ajax_content_redraw')) {
317            var s = jQuery('#mdf_results_by_ajax').data('shortcode');
318            var old_mdf_cat = jQuery(this).parents('.widget-meta-data-filter').find('form').find('input[name="mdf[mdf_widget_options][meta_data_filter_cat]"]').val();
319            s = s.replace('meta_data_filter_cat=' + old_mdf_cat, 'meta_data_filter_cat=' + term_id);
320            jQuery('#mdf_results_by_ajax').data('shortcode', s);
321        }
322        jQuery(this).parents('.widget-meta-data-filter').find('form').find('input[name="mdf[mdf_widget_options][meta_data_filter_cat]"]').val(term_id);
323        jQuery(this).parents('.widget-meta-data-filter').find('form').find('input[name="meta_data_filter_cat"]').val(term_id);
324
325        mdf_ajax_data_recount(jQuery(this).parents('.widget-meta-data-filter').find('form').attr('id'), jQuery(this).data('slug'), true);
326    });
327
328    //fix for textinput if its under ajax redraw (another way redirect works)
329    jQuery('form.mdf_ajax_content_redraw .mdf_textinput, form.mdf_ajax_auto_recount .mdf_textinput').on('keydown', function (e) {
330        if (e.keyCode == 13) { // enter key was pressed
331            jQuery(this).blur();
332            return false; // prevent execution of rest of the script + event propagation / event bubbling + prevent default behaviour
333        }
334    });
335
336    //+++ remove empty taxonomies selects
337    remove_empty_mdf_taxonomy();
338}
339
340//if we do sort while no searching
341function mdf_util_order_no_search(order, order_by) {
342    mdf_tmp_order = order;
343    mdf_tmp_orderby = order_by;
344    var form = jQuery('.mdf_search_form').eq(0);
345    if (form.hasClass('mdf_ajax_content_redraw')) {
346        mdf_ajax_data_recount(form.attr('id'), form.data('slug'), false);
347    } else {
348        form.submit();
349    }
350}
351
352//fixed 20-07-2014
353function remove_empty_mdf_taxonomy() {
354    jQuery.each(jQuery('.mdf_widget_form select.mdf_taxonomy'), function (index, select) {
355        var len = jQuery(select).children('option').length;
356        if (len < 2) {
357            jQuery(select).parent().remove();
358        }
359    });
360}
361
362function mdf_draw_ui_slider_items(act_without_button, uniqid) {
363    var items = jQuery(".ui_slider_item_" + uniqid);
364    mdf_ajax_content_redraw_page = 0;
365    jQuery.each(items, function (key, item) {
366        var input = jQuery(item).next('input');
367        mdf_init_range_sliders(item, input, act_without_button, uniqid);
368    });
369}
370
371
372function mdf_get_ui_slider_step(input) {
373    var step = jQuery(input).data('step');
374    if (!step) {
375        step = Math.ceil(parseInt((jQuery(input).data('max') - jQuery(input).data('min')) / 100, 10));
376    }
377    return step;
378}
379
380function mdf_init_range_sliders(item, input, act_without_button, uniqid) {
381    try {
382        var type = jQuery(input).data('type');
383        jQuery(item).ionRangeSlider({
384            min: jQuery(input).data('min'),
385            max: jQuery(input).data('max'),
386            from: jQuery(input).data('min-now'),
387            to: jQuery(input).data('max-now'),
388            type: type,
389            prefix: jQuery(input).data('slider-prefix'),
390            postfix: jQuery(input).data('slider-postfix'),
391            //maxPostfix: "+",
392            prettify: jQuery(input).data('slider-prettify'),
393            hideMinMax: false,
394            hideFromTo: false,
395            hasGrid: true,
396            step: mdf_get_ui_slider_step(input),
397            onFinish: function (ui) {
398
399                jQuery(input).val(ui.fromNumber + '^' + ui.toNumber);
400                jQuery(input).parent().find('.mdf_range .mdf_range_min').val(ui.fromNumber);
401                jQuery(input).parent().find('.mdf_range .mdf_range_max').val(ui.toNumber);
402                if (act_without_button) {
403                    jQuery("#meta_data_filter_" + uniqid).submit();
404                }
405
406                //ajax recount
407                if (jQuery("#meta_data_filter_" + uniqid).hasClass('mdf_ajax_auto_recount')) {
408                    mdf_ajax_data_recount(jQuery("#meta_data_filter_" + uniqid).attr('id'), jQuery("#meta_data_filter_" + uniqid).data('slug'), false);
409                }
410                return false;
411            },
412            onChange: function (ui) {
413                jQuery(input).val(ui.fromNumber + '^' + ui.toNumber);
414                jQuery(input).parent().find('.mdf_range .mdf_range_min').val(ui.fromNumber);
415                jQuery(input).parent().find('.mdf_range .mdf_range_max').val(ui.toNumber);
416                jQuery(input).parents('form').find("input[type=submit]").removeProp('disabled');
417                mdf_ajax_content_redraw_page = 0;
418            },
419            onLoad: function (ui) {
420                if (mdf_range_update) {
421                    jQuery(input).val(ui.fromNumber + '^' + ui.toNumber);
422                    jQuery(input).parent().find('.mdf_range .mdf_range_min').val(ui.fromNumber);
423                    jQuery(input).parent().find('.mdf_range .mdf_range_max').val(ui.toNumber);
424                    if (act_without_button) {
425                        jQuery("#meta_data_filter_" + uniqid).submit();
426                    }
427
428                    //ajax recount
429                    if (jQuery("#meta_data_filter_" + uniqid).hasClass('mdf_ajax_auto_recount')) {
430                        mdf_ajax_data_recount(jQuery("#meta_data_filter_" + uniqid).attr('id'), jQuery("#meta_data_filter_" + uniqid).data('slug'), false);
431                    }
432                    return false;
433                }
434            }
435        });
436    } catch (e) {
437
438    }
439}
440
441function mdf_click_checkbox(_this) {
442    if (jQuery(_this).is(":checked")) {
443        jQuery(_this).prev("input[type=hidden]").val(1);
444        jQuery(_this).next("input[type=hidden]").val(1);
445        jQuery(_this).val(1);
446    } else {
447        jQuery(_this).prev("input[type=hidden]").val('~');
448        jQuery(_this).next("input[type=hidden]").val('~');
449        jQuery(_this).val('~');
450    }
451
452    return true;
453}
454
455
456function mdf_init_search_form(uniqid, slug, search_url, act_without_button, ajax_searching) {
457
458    if (act_without_button === 1) {
459        //checkbox actions
460        jQuery('body').on('change', "#meta_data_filter_" + uniqid + " .mdf_option_checkbox", function () {
461            mdf_click_checkbox(this);
462            jQuery("#meta_data_filter_" + uniqid).submit();
463            return true;
464        });
465        //select actions
466        jQuery('body').on('change', "#meta_data_filter_" + uniqid + " .mdf_filter_select", function () {
467            jQuery("#meta_data_filter_" + uniqid).submit();
468            return true;
469        });
470
471        jQuery('body').on('click', "#meta_data_filter_" + uniqid + " .mdf_label_item", function () {
472            mdf_check_labels(this);
473            jQuery("#meta_data_filter_" + uniqid).submit();
474            return true;
475        });
476
477        jQuery('body').on('click', "#meta_data_filter_" + uniqid + " .mdf_tax_label_item", function () {
478            mdf_tax_check_labels(this);
479            jQuery("#meta_data_filter_" + uniqid).submit();
480            return true;
481        });
482        //textinput
483        jQuery('body').on('change', "#meta_data_filter_" + uniqid + " .mdf_textinput", function () {
484            jQuery("#meta_data_filter_" + uniqid).submit();
485            return true;
486        });
487
488        jQuery('body').on('change', "#meta_data_filter_" + uniqid + " .mdf_range_select", function () {
489            jQuery("#meta_data_filter_" + uniqid).submit();
490            return true;
491        });
492    } else {
493
494        jQuery("#meta_data_filter_" + uniqid + " .mdf_option_checkbox").off('click');
495        jQuery("#meta_data_filter_" + uniqid + " .mdf_option_checkbox").off('change');
496        jQuery('body').on('change', "#meta_data_filter_" + uniqid + " .mdf_option_checkbox", function () {
497	    
498            mdf_click_checkbox(this);
499            //recount items count by ajax
500            if (ajax_searching) {
501                mdf_ajax_data_recount("meta_data_filter_" + uniqid, slug, false);
502            }
503        });
504        jQuery('body').on('click', "#meta_data_filter_" + uniqid + " .mdf_label_item", function () {
505            mdf_check_labels(this);
506
507            if (ajax_searching) {
508                mdf_ajax_data_recount("meta_data_filter_" + uniqid, slug, false);
509            }
510        });
511        jQuery('body').on('click', "#meta_data_filter_" + uniqid + " .mdf_tax_label_item", function () {
512            mdf_tax_check_labels(this);
513            if (ajax_searching) {
514                mdf_ajax_data_recount("meta_data_filter_" + uniqid, slug, false);
515            }
516        });
517        jQuery("#meta_data_filter_" + uniqid + " .mdf_filter_select").off('change');
518
519        //recount items count by ajax
520        jQuery('body').on('change', "#meta_data_filter_" + uniqid + " .mdf_filter_select", function () {
521
522            if (ajax_searching) {
523                mdf_ajax_data_recount("meta_data_filter_" + uniqid, slug, false);
524            }
525        });
526        jQuery('body').on('change', "#meta_data_filter_" + uniqid + " .mdf_textinput", function () {
527            if (ajax_searching) {
528                mdf_ajax_data_recount("meta_data_filter_" + uniqid, slug, false);
529
530            }
531        });
532        jQuery('body').on('change', "#meta_data_filter_" + uniqid + " .mdf_range_select", function () {
533            if (ajax_searching) {
534                mdf_ajax_data_recount("meta_data_filter_" + uniqid, slug, false);
535            }
536        });
537
538        //***
539        redraw_ajax_pagination(slug);
540    }
541
542    //+++
543    mdf_draw_ui_slider_items(act_without_button, uniqid);
544    //+++
545
546    mdf_init_submit_button(uniqid, slug, search_url);
547    //calendar
548    mdf_init_calendars(uniqid, act_without_button, ajax_searching, slug);
549}
550
551function mdf_init_submit_button(uniqid, slug, search_url) {
552
553    var submit_mode = 'submit';
554    var type = 'widget';
555    var form_id = "meta_data_filter_" + uniqid;
556    if (jQuery("#" + form_id).hasClass('mdf_shortcode_form')) {
557        type = 'shortcode';
558        shortcode_id = jQuery("#" + form_id).data('shortcode-id');
559    }
560
561    //+++
562
563    jQuery('#' + form_id + ' .mdf_reset_button').on('click', function () {
564
565        submit_mode = 'reset';
566        if (jQuery("#" + form_id).hasClass('mdf_ajax_content_redraw')) {
567
568            mdf_ajax_content_redraw_page = 0;
569            mdf_ajax_data_recount(form_id, slug, true);
570            return;
571        }
572
573        if (jQuery(this).hasClass('mdf_reset_ajax_bone')) {
574            window.location = location.protocol + '//' + location.host + location.pathname;
575            return;
576        }
577
578        if (jQuery(this).attr('href') && !jQuery("#" + form_id).hasClass('mdf_ajax_content_redraw')) {
579            var href = jQuery(this).attr('href');
580            if (href.length > 1) {
581                window.location = href;
582                return;
583            }
584        }
585
586        jQuery("#" + form_id).submit();
587        return false;
588    });
589
590
591
592    var is_ajaxed_reset = false;
593    //check is form inserted in popup
594    var is_in_popup = false;
595    if (jQuery(this).parents('.advanced_wp_popup_content')) {
596        is_in_popup = true;
597        is_ajaxed_reset = true;
598    }
599    //***
600
601    var shortcode_id = 0;
602    var widget_id = 0;
603    var sidebar_name = "";
604    var sidebar_id = 0;
605
606
607    if (type == 'widget') {
608        sidebar_name = jQuery("#" + form_id).data('sidebar-name');
609        sidebar_id = jQuery("#" + form_id).data('sidebar-id');
610        widget_id = jQuery("#" + form_id).data('widget-id');
611    }
612
613
614
615
616    jQuery("#" + form_id).on('submit', function () {
617        jQuery(this).find("input[type='submit'], .mdf_reset_button").replaceWith(mdf_tax_loader);
618        jQuery("#" + form_id + " .mdf_one_moment_txt span").show();
619
620        var mdf_widget_search_url = search_url + "slg=" + slug + "&";
621
622        mdf_show_stat_info_popup(lang_one_moment);
623
624        var data = {
625            action: "mdf_encode_search_get_params",
626            vars: jQuery(this).serialize(),
627            mode: submit_mode,
628            mdf_front_qtrans_lang: mdf_front_qtrans_lang,
629            mdf_front_wpml_lang: mdf_front_wpml_lang,
630            type: type,
631            shortcode_id: shortcode_id,
632            sidebar_id: sidebar_id,
633            sidebar_name: sidebar_name,
634            widget_id: widget_id,
635            is_ajaxed_reset: is_ajaxed_reset
636        };
637        jQuery.post(ajaxurl, data, function (response) {
638
639            if (is_ajaxed_reset && submit_mode == 'reset' && type == 'shortcode') {
640                if (response.indexOf('mdf_ajax_content_redraw') != -1) {
641                    //ajax content redraw
642                    var parent = jQuery("#" + form_id).parent('.mdf_shortcode_container');
643                    jQuery(parent).replaceWith('<div id="mdtf_replace_me"></div>');
644                    jQuery('#mdtf_replace_me').html(response);
645                    mdf_ajax_content_redraw_page = 0;
646                    var f = jQuery('#mdtf_replace_me').find('.mdf_ajax_content_redraw').eq(0);
647                    jQuery(f).parent().unwrap();
648                    mdf_ajax_data_recount(jQuery(f).attr('id'), slug, false);
649                } else {
650                    jQuery("#" + form_id).parents('.mdf_shortcode_container').replaceWith(response);
651                    mdf_init_selects();
652                }
653            } else {
654                if (mdf_widget_search_url.substring(0, 4) == 'self') {
655                    mdf_widget_search_url = mdf_widget_search_url.replace('self', (mdf_current_page_url.length > 0 ? mdf_current_page_url : window.location.href));
656                }
657
658                if (mdf_widget_search_url.match(/\?/g).length > 1) {
659                    var index = mdf_widget_search_url.lastIndexOf('?');
660                    mdf_widget_search_url = mdf_widget_search_url.substr(0, index) + '&' + mdf_widget_search_url.substr(index + 1);
661
662                }
663                //only for project TODO
664                var redirect_url = mdf_widget_search_url + response;
665
666
667                if (mdf_front_qtrans_lang.length) {
668                    redirect_url = redirect_url + '&lang=' + mdf_front_qtrans_lang;
669                }
670
671                //ordering when sort panel is not while search going
672                if (mdf_tmp_order != 0 && mdf_tmp_orderby != 0) {
673                    redirect_url += '&order_by=' + mdf_tmp_orderby + '&order=' + mdf_tmp_order;
674                }
675                //+++
676
677                window.location = redirect_url;
678            }
679
680
681        });
682
683        return false;
684    });
685}
686
687var mdf_ajax_lock = false;//remove twice ajax request on the same time
688function mdf_ajax_data_recount(form_id, slug, simple_form_redraw, load_more) {
689    if (mdf_ajax_lock) {
690        return;
691    }
692    mdf_ajax_lock = true;
693    //+++
694    mdf_show_stat_info_popup(lang_one_moment);
695    var type = 'widget';
696    var shortcode_id = 0;
697    var widget_id = 0;
698    var sidebar_name = "";
699    var sidebar_id = 0;
700
701    if (jQuery("#" + form_id).hasClass('mdf_shortcode_form')) {
702        type = 'shortcode';
703        shortcode_id = jQuery("#" + form_id).data('shortcode-id');
704    }
705
706    if (type == 'widget') {
707        sidebar_id = jQuery("#" + form_id).data('sidebar-id');
708        sidebar_name = jQuery("#" + form_id).data('sidebar-name');
709        widget_id = jQuery("#" + form_id).data('widget-id');
710    }
711
712    //***
713    var mdf_ajax_content_redraw = false;
714    if (jQuery("#" + form_id).hasClass('mdf_ajax_content_redraw')) {
715        mdf_ajax_content_redraw = true;
716    }
717
718    var data = {
719        action: "mdf_get_ajax_auto_recount_data",
720        vars: jQuery("#" + form_id).serialize(),
721        slug: slug,
722        type: type,
723        shortcode_id: shortcode_id,
724        sidebar_id: sidebar_id,
725        sidebar_name: sidebar_name,
726        widget_id: widget_id,
727        mode: 'submit',
728        mdf_current_term_id: mdf_current_term_id,
729        mdf_current_tax: mdf_current_tax,
730        simple_form_redraw: (simple_form_redraw ? 1 : 0), //need for filter-category changing
731        mdf_front_qtrans_lang: mdf_front_qtrans_lang,
732        mdf_front_wpml_lang: mdf_front_wpml_lang,
733        mdf_ajax_content_redraw: mdf_ajax_content_redraw,
734        shortcode_txt: jQuery('#mdf_results_by_ajax').data('shortcode'),
735        content_redraw_page: mdf_ajax_content_redraw_page,
736        mdf_tmp_order: mdf_tmp_order, //only when we do sort before searching
737        mdf_tmp_orderby: mdf_tmp_orderby, //only when we do sort before searching
738        mdf_is_search_going: mdf_is_search_going
739    };
740    mdf_is_search_going = 1;
741    //+++
742    if ((mdf_ajax_content_redraw || data.content_redraw_page > 1) && jQuery('#mdf_results_by_ajax').length) {
743        data.order_by = mdf_woo_catalog_order_by;
744        data.order = mdf_woo_catalog_order;
745    }
746    //***
747    jQuery.post(ajaxurl, data, function (response) {
748        response = JSON.parse(response);
749        //+++
750        mdf_hide_stat_info_popup();
751        if (type == 'shortcode') {
752            jQuery("#" + form_id).parents('.mdf_shortcode_container').replaceWith(response.form);
753        } else {
754            jQuery('#pn_html_buffer2').html(response.form);
755            var widget = jQuery('#pn_html_buffer2').find('.widget-meta-data-filter').clone();
756            //jQuery("#" + form_id).parents('.widget-meta-data-filter').replaceWith(widget);
757            jQuery("#" + form_id).parents('.widget-meta-data-filter').replaceWith(response.form);
758            jQuery('#pn_html_buffer2').html("");
759            mdf_draw_ui_slider_items(false, jQuery(widget).find('form').data('unique-id'));
760
761            mdf_hide_empty_blocks_titles();
762            mdf_init_submit_button(jQuery(widget).find('form').data('unique-id'), slug, jQuery(widget).find('form').data('search-url'));
763
764        }
765        remove_empty_mdf_taxonomy();
766        mdf_tooltip_init();
767        mdf_init_checkboxes_scroll();
768        mdf_init_checkboxes();
769        mdf_init_selects();
770        mdf_init_multislect_emulator();
771        mdf_init_range_select();
772        mdf_ajax_lock = false;
773        //next code row need when show disabled drop-downs - butaforia
774        jQuery(".mdf_input_container").find('.mdf_taxonomy_child_container2').next('.mdf_taxonomy_child_container').remove();
775
776        //redraw posts if we need do this by options
777        if ((mdf_ajax_content_redraw || data.content_redraw_page > 0) && jQuery('#mdf_results_by_ajax').length) {
778            //
779
780            //load more
781            if (typeof load_more != 'undefined' && load_more) {
782
783                var posts = jQuery('#mdf_results_by_ajax').find('.mdtf_posts');
784                if (typeof posts != 'undefined' && posts.length) {
785                    jQuery(posts).append(jQuery(response.content).find('.mdtf_post'));
786                    ;
787                }
788
789                var products = jQuery('#mdf_results_by_ajax').find('.products');
790                if (typeof products != 'undefined' && products.length) {
791                    jQuery(products).append(jQuery(response.content).find('.product'));
792                }
793
794                jQuery('#mdf_results_by_ajax').find('.tw-pagination').replaceWith(jQuery(response.content).find('.tw-pagination').last());
795                //load more
796            } else {
797                jQuery('#mdf_results_by_ajax').html(response.content);
798            }
799
800
801            jQuery('.woo-pagination').remove();
802            redraw_ajax_pagination(slug);
803            //+++
804
805            if (jQuery('.mdf_sort_panel_select').length) {
806
807                jQuery('.mdf_sort_panel_order_by').on('change', function () {
808                    var form_id = jQuery('.mdf_ajax_content_redraw.mdf_ajax_auto_recount').attr('id');
809                    mdf_woo_catalog_order_by = jQuery(this).val();
810                    mdf_ajax_data_recount(form_id, slug, false);
811                });
812                jQuery('.mdf_sort_panel_ordering').on('change', function () {
813                    var form_id = jQuery('.mdf_ajax_content_redraw.mdf_ajax_auto_recount').attr('id');
814                    mdf_woo_catalog_order = jQuery(this).val();
815                    mdf_ajax_data_recount(form_id, slug, false);
816                });
817            }
818
819            if (jQuery('.mdf_custom_filter_panel').length) {
820
821                jQuery('.mdf_custom_filter_panel a').off('click');
822                jQuery('.mdf_custom_filter_panel a').on('click', function () {
823                    var form_id = jQuery('.mdf_ajax_content_redraw.mdf_ajax_auto_recount').attr('id');
824                    mdf_woo_catalog_order_by = jQuery(this).data('order-by');
825                    mdf_woo_catalog_order = jQuery(this).data('order');
826                    mdf_ajax_data_recount(form_id, slug, false);
827
828                });
829            }
830        }
831
832
833        //fix for textinput if its under ajax redraw (another way redirect works)
834        jQuery('form.mdf_ajax_content_redraw .mdf_textinput, form.mdf_ajax_auto_recount .mdf_textinput').on('keydown', function (e) {
835            if (e.keyCode == 13) { // enter key was pressed
836                jQuery(this).blur();
837                return false; // prevent execution of rest of the script + event propagation / event bubbling + prevent default behaviour
838            }
839        });
840
841        mdf_js_after_ajax_done();
842        //copatibility for post messenger
843        if (typeof mdf_init_posts_messenger == 'function') {
844            mdf_check_request_attr();
845        }
846        //hide title of the empty section 
847        mdf_check_empty_sections();
848        // init sort panel
849        container_serch_panel();
850
851        //hide woo standard sort panel
852        if (jQuery('form.woocommerce-ordering').length) {
853            jQuery('form.woocommerce-ordering').hide();
854        }
855
856    });
857}
858
859//for mdf_ajax_content_redraw mode
860function redraw_ajax_pagination(slug) {
861    var pagination_links = jQuery('#mdf_results_by_ajax .tw-pagination li a');
862
863    //load  more
864
865    var load_more_page = jQuery('#mdf_results_by_ajax.mdf_load_more .tw-pagination');
866    jQuery(load_more_page).find('li').hide();
867    jQuery(load_more_page).find('li.next_li').last().show();
868    var load_more_text = jQuery('#mdf_results_by_ajax.mdf_load_more').data('load_text');
869    if (!load_more_text) {
870        load_more_text = "Load more!";
871    }
872    jQuery(load_more_page).find('li.next_li a').text(load_more_text).append("<span class='dashicons dashicons-update'></span>");
873    //load  more
874
875    jQuery.each(pagination_links, function (i, o) {
876        jQuery(o).on('click', function () {
877            var load_more = false;
878            mdf_ajax_content_redraw_page = parseInt(jQuery(o).attr('title'), 10);
879            var form_id = jQuery('.mdf_ajax_content_redraw.mdf_ajax_auto_recount').attr('id');
880
881            if (jQuery('#mdf_results_by_ajax').hasClass('mdf_load_more')) {
882                load_more = true;
883            }
884            mdf_ajax_data_recount(form_id, slug, false, load_more);
885            return false;
886        });
887    });
888
889
890    if (jQuery('#mdf_results_by_ajax').data('animate')) {
891        var target = jQuery('#mdf_results_by_ajax').data('animate-target');
892        if (jQuery(target).length)
893        {
894            var top = jQuery(target).offset().top;
895            jQuery('html,body').animate({scrollTop: top}, 577);
896            return false;
897        }
898    }
899
900    //here you can do smth after ajax is done
901
902
903}
904
905
906function mdf_hide_empty_blocks_titles() {
907    var section = jQuery('.widget-meta-data-filter .mdf_filter_section');
908    jQuery.each(section, function (index, value) {
909        var count = jQuery(value).find('table').find('tr').length;
910        if (!count) {
911            jQuery(value).hide();
912            jQuery(value).find('table').hide();
913            jQuery(value).prev('h4.data-filter-section-title').hide();
914        }
915    });
916}
917
918function mdf_tooltip_init() {
919    try {
920        jQuery('.mdf_tooltip').tooltipster({
921            maxWidth: tooltip_max_width,
922            animation: 'fade',
923            delay: 200,
924            theme: 'tooltipster-' + mdf_tooltip_theme,
925            touchDevices: false,
926            trigger: 'hover',
927            contentAsHTML: true
928        });
929    } catch (e) {
930        //+++
931    }
932}
933
934
935function mdf_init_checkboxes_scroll() {
936    try {
937        if (!mdf_use_custom_scroll_bar) {
938            return;
939        }
940    } catch (e) {
941        console.log('Just an info: ' + e);
942    }
943    //+++
944    try {
945        jQuery(".mdf_filter_section_scrolled").mCustomScrollbar('destroy');
946        jQuery(".mdf_filter_section_scrolled").mCustomScrollbar({
947            scrollButtons: {
948                enable: true
949            },
950            advanced: {
951                updateOnContentResize: true,
952                updateOnBrowserResize: true
953            },
954            theme: "dark-2",
955            horizontalScroll: false,
956            mouseWheel: true,
957            scrollType: 'pixels',
958            contentTouchScroll: true
959        });
960    } catch (e) {
961        //+++
962    }
963}
964
965//by chosen js
966function mdf_init_selects() {
967    mdf_deinit_chosen_selects();
968
969    try {
970        if (mdf_use_chosen_js_w) {
971            jQuery(".mdf_widget_form select").chosen({disable_search_threshold: 10});
972	    	    	    
973        }
974        if (mdf_use_chosen_js_s) {
975            jQuery(".mdf_shortcode_container select").chosen({disable_search_threshold: 10});
976        }
977	jQuery(".mdf_widget_form select").each(function (index) {
978	    if (jQuery(this).find('option').length < 2) {
979		jQuery(this).parent('.mdf_input_container').hide();
980	    }
981	});
982	jQuery(".mdf_widget_form select").each(function (index) {
983	    if (jQuery(this).find('option').length < 2) {
984		jQuery(this).parent('.mdf_input_container').hide();
985	    }
986	});	
987    } catch (e) {
988
989    }
990}
991
992//http://fronteed.com/iCheck/
993function mdf_init_checkboxes() {
994    try {
995        if (mdf_use_custom_icheck == 0) {
996            return;
997        }
998
999        //+++
1000
1001        var selectors = ".mdf_shortcode_form input, .mdf_widget_form input";
1002
1003        jQuery(selectors).iCheck({
1004            checkboxClass: 'icheckbox_' + icheck_skin.skin + '-' + icheck_skin.color,
1005            radioClass: 'iradio_flat'
1006        });
1007
1008
1009        jQuery(selectors).on('ifChecked', function (event) {
1010            if (jQuery(this).hasClass('mdf_option_checkbox')) {
1011                jQuery(this).parent().prev("input[type=hidden]").val(1);
1012                jQuery(this).parent().next("input[type=hidden]").val(1);
1013                jQuery(this).val(1);
1014            }
1015            jQuery(this).trigger('change');
1016        });
1017
1018        jQuery(selectors).on('ifUnchecked', function (event) {
1019            if (jQuery(this).hasClass('mdf_option_checkbox')) {
1020                jQuery(this).parent().prev("input[type=hidden]").val('~');
1021                jQuery(this).parent().next("input[type=hidden]").val('~');
1022                jQuery(this).val('~');
1023            }
1024            jQuery(this).trigger('change');
1025        });
1026    } catch (e) {
1027
1028    }
1029}
1030
1031function mdf_deinit_chosen_selects() {
1032    try {
1033        if (mdf_use_chosen_js_w) {
1034            jQuery(".mdf_widget_form select").chosen('destroy').trigger("liszt:updated");
1035        }
1036        if (mdf_use_chosen_js_s) {
1037            jQuery(".mdf_shortcode_container select").chosen('destroy').trigger("liszt:updated");
1038        }
1039
1040    } catch (e) {
1041
1042    }
1043
1044}
1045
1046function mdf_show_stat_info_popup(text) {
1047    if (mdtf_overlay_skin == 'default') {
1048        jQuery("#pn_html_buffer").text(text);
1049        jQuery("#pn_html_buffer").fadeTo(200, 0.9);
1050    } else {
1051        switch (mdtf_overlay_skin) {
1052            case 'loading-balls':
1053            case 'loading-bars':
1054            case 'loading-bubbles':
1055            case 'loading-cubes':
1056            case 'loading-cylon':
1057            case 'loading-spin':
1058            case 'loading-spinning-bubbles':
1059            case 'loading-spokes':
1060
1061                jQuery('body').plainOverlay('show', {progress: function () {
1062                        return jQuery('<div id="woof_svg_load_container"><img style="height: 100%;width: 100%" src="' + mdf_plugin_url + 'images/loading-master/' + mdtf_overlay_skin + '.svg" alt=""></div>');
1063                    }});
1064                break;
1065            default:
1066                jQuery('body').plainOverlay('show', {duration: -1});
1067                break;
1068        }
1069    }
1070}
1071
1072
1073function mdf_hide_stat_info_popup() {
1074    if (mdtf_overlay_skin == 'default') {
1075        window.setTimeout(function () {
1076            jQuery("#pn_html_buffer").fadeOut(400);
1077        }, 500);
1078    } else {
1079        jQuery('body').plainOverlay('hide');
1080    }
1081
1082
1083
1084}
1085
1086function mdf_init_calendars(uniqid, act_without_button, ajax_searching, slug) {
1087    try {
1088        jQuery("#meta_data_filter_" + uniqid + " .mdf_calendar").datepicker(
1089                {
1090                    showWeek: true,
1091                    firstDay: mdf_week_first_day,
1092                    changeMonth: true,
1093                    changeYear: true,
1094                    showButtonPanel: true,
1095                    onSelect: function (selectedDate, self) {
1096                        var date = new Date(parseInt(self.currentYear, 10), parseInt(self.currentMonth, 10), parseInt(self.currentDay, 10), 23, 59, 59);
1097                        var mktime = (date.getTime() / 1000);
1098                        var css_class = 'mdf_calendar_from';
1099                        if (jQuery(this).hasClass('mdf_calendar_from')) {
1100                            css_class = 'mdf_calendar_to';
1101                            jQuery(this).parent().find('.' + css_class).datepicker("option", "minDate", selectedDate);
1102                        } else {
1103                            jQuery(this).parent().find('.' + css_class).datepicker("option", "maxDate", selectedDate);
1104                        }
1105                        jQuery(this).prev('input[type=hidden]').val(mktime);
1106
1107                        //+++
1108
1109                        if (ajax_searching) {
1110                            window.setTimeout(function () {
1111                                mdf_ajax_data_recount("meta_data_filter_" + uniqid, slug, false);
1112                            }, 300);
1113                        }
1114
1115                        if (act_without_button) {
1116                            window.setTimeout(function () {
1117                                jQuery("#meta_data_filter_" + uniqid).submit();
1118                            }, 300);
1119                        }
1120
1121                    }
1122                }
1123        );
1124        jQuery(".mdf_calendar").datepicker("option", "dateFormat", mdf_calendar_date_format);
1125        jQuery(".mdf_calendar").datepicker("option", "showAnim", 'fadeIn');
1126        //+++
1127        jQuery('body').on('keyup', ".mdf_calendar", function (e) {
1128            if (e.keyCode == 8 || e.keyCode == 46) {
1129                jQuery.datepicker._clearDate(this);
1130                jQuery(this).prev('input[type=hidden]').val("");
1131            }
1132        });
1133        //+++
1134        jQuery(".mdf_calendar").each(function () {
1135            var mktime = parseInt(jQuery(this).prev('input[type=hidden]').val(), 10);
1136            if (mktime > 0) {
1137                var date = new Date(mktime * 1000);
1138                jQuery(this).datepicker('setDate', new Date(date));
1139                //+++
1140                var css_class = 'mdf_calendar_from';
1141                var selectedDate = jQuery(this).datepicker('getDate');
1142                if (jQuery(this).hasClass('mdf_calendar_from')) {
1143                    css_class = 'mdf_calendar_to';
1144                    jQuery(this).parent().find('.' + css_class).datepicker("option", "minDate", selectedDate);
1145                } else {
1146                    jQuery(this).parent().find('.' + css_class).datepicker("option", "maxDate", selectedDate);
1147                }
1148            }
1149        });
1150    } catch (e) {
1151
1152    }
1153}
1154
1155//start range  select    
1156function mdf_init_range_select() {
1157
1158    jQuery('.mdf_range_select').on('change', function () {
1159        var parent = jQuery(this).parent('.mdf_range_select_cont');
1160        var key = parent.attr('data-key');
1161        var val = jQuery(this).val();
1162        var set_select = {};
1163        if (jQuery(this).attr('id') == key + "_from") {
1164            set_select = jQuery(parent).children("." + key + "_to");
1165            mdf_set_from_value(set_select, val, key);
1166        } else if (jQuery(this).attr('id') == key + "_to") {
1167            set_select = jQuery(parent).children("." + key + "_from");
1168            mdf_set_to_value(set_select, val, key);
1169        }
1170        return true;
1171    });
1172    mdf_init_values();
1173}
1174function mdf_init_values() {
1175
1176    jQuery('.mdf_range_select_cont').each(function () {
1177        var key = jQuery(this).attr('data-key');
1178        var select_from = jQuery(this).children("." + key + "_from");
1179        var select_to = jQuery(this).children("." + key + "_to")
1180        var min_val = select_from.val();
1181        var max_val = select_to.val();
1182
1183        if (min_val != undefined && max_val != undefined) {
1184            if ((+min_val) >= (+max_val)) {
1185                max_val = +min_val + 1
1186            }
1187
1188            mdf_set_from_value(select_to, min_val, key);
1189            mdf_set_to_value(select_from, max_val, key);
1190        }
1191
1192    })
1193}
1194
1195
1196function mdf_set_from_value(select, val, key) {
1197
1198
1199    jQuery(select).children('option').each(function () {
1200        if (+val >= +jQuery(this).val()) {
1201            if (jQuery(this).attr('selected') == 'selected') {
1202                var next = jQuery(select).parent('.mdf_range_select_cont').attr('data-step');
1203                jQuery(select).val(+val + next);
1204                jQuery(select).children('option [value="' + (+val + next) + '+"]').attr('selected', 'selected');
1205            }
1206            jQuery(this).css({'display': 'none'}
1207            )
1208        } else {
1209            jQuery(this).css({'display': 'block'})
1210        }
1211    });
1212}
1213function mdf_set_to_value(select, val, key) {
1214    jQuery(select).children('option').each(function () {
1215        if (+val <= +jQuery(this).val()) {
1216            if (jQuery(this).attr('selected') == 'selected') {
1217                var next = jQuery(select).parent('.mdf_range_select_cont').attr('data-step');
1218                select.val(+val - next);
1219                select.children('option [value="' + (+val - next) + '+"]').attr('selected', 'selected');
1220            }
1221            ;
1222            jQuery(this).css({'display': 'none'})
1223        } else {
1224            jQuery(this).css({'display': 'block'})
1225        }
1226    });
1227
1228}
1229//end range  select       
1230
1231function mdf_init_multislect_emulator() {
1232    jQuery(".dropdown dt a").on('click', function () {
1233        var is_visible = false;
1234        if (jQuery(this).parents('dl.dropdown').find('dd ul').css('display') != 'none') {
1235            is_visible = true;
1236        }
1237
1238        jQuery('body dl.dropdown').find('dd ul').hide();
1239
1240        if (!is_visible) {
1241            jQuery(this).parents('dl.dropdown').find('dd ul').slideToggle('fast');
1242        }
1243        return false;
1244    });
1245
1246    jQuery(".dropdown dd ul li a").on('click', function () {
1247        jQuery(this).parents('dl.dropdown').find('dd ul').hide();
1248        return false;
1249    });
1250
1251
1252    jQuery(document).on('click', function (e) {
1253        var $clicked = jQuery(e.target);
1254        if (!$clicked.parents().hasClass("dropdown")) {
1255            jQuery('body dl.dropdown').find('dd ul').hide();
1256        }
1257    });
1258
1259}
1260
1261//hide title of the empty section 
1262function mdf_check_empty_sections() {
1263    if (mdf_settings_data.hide_empty_title != undefined && mdf_settings_data.hide_empty_title == 1) {
1264        jQuery('.data-filter-section-title').each(function (i, elem) {
1265            if (jQuery(elem).siblings().text().trim() == "") {
1266                jQuery(this).hide();
1267            }
1268        });
1269    }
1270
1271}
1272jQuery(document).ready(function () {
1273    mdf_check_empty_sections();
1274    container_serch_panel()
1275})
1276//++++++++
1277
1278
1279function container_serch_panel() {
1280
1281    var data = {
1282        action: "mdf_search_panel",
1283        mdf_search_terms: jQuery(".hidden_page_mdf_for_ajax").val()
1284    };
1285    jQuery.post(ajaxurl, data, function (content) {
1286        if (content) {
1287            jQuery(".container_serch_panel").html(content);
1288            mdf_init_tepms_panel();
1289        }
1290    });
1291}
1292
1293// init  terms panel
1294
1295function mdf_init_tepms_panel() {
1296    jQuery('.mdf_remove_icon').on('click', function () {
1297        var remove_obj = jQuery(jQuery(this).attr('data-select'));
1298        if (remove_obj.length < 1) {
1299            jQuery(this).parent('.mdf_panel_remove').parent('.mdf_terms_panel').remove();
1300            jQuery('.mdf_search_form input.hidden_page_mdf_for_ajax').each(function (i, elem) {
1301
1302                if (jQuery(this).val() != '') {
1303                    jQuery(this).parent('.mdf_search_form').submit();
1304                    return false;
1305                }
1306            });
1307        }
1308        if (jQuery(this).attr('data-type') == "taxonomy") {
1309            if (jQuery(this).attr('data-html') == 'checkbox' || jQuery(this).attr('data-html') == 'multi_select') {
1310                remove_obj.removeAttr('checked');
1311            }
1312            if (jQuery(this).attr('data-html') == 'select') {
1313                jQuery(remove_obj.parent('select').parent('div').find('select.mdf_taxonomy')).val(-1);
1314            }
1315            remove_obj.parents('form').submit();
1316            return;
1317        } else if (jQuery(this).attr('data-type') === "meta_data") {
1318
1319            if (jQuery(this).attr('data-html') == 'checkbox') {
1320                remove_obj.val('~');
1321                jQuery(remove_obj.parent('.mdf_input_container').find("input[type='checkbox']")).removeAttr('checked');
1322            }
1323            if (jQuery(this).attr('data-html') == 'select') {
1324                remove_obj.val('~');
1325            }
1326            if (jQuery(this).attr('data-html') == 'slider') {
1327                remove_obj.val(remove_obj.attr('data-min') + '^' + remove_obj.attr('data-max'));
1328            }
1329            if (jQuery(this).attr('data-html') == 'by_author') {
1330                remove_obj.val('-1');
1331            }
1332            if (jQuery(this).attr('data-html') == 'textinput') {
1333                remove_obj.val('');
1334            }
1335            if (jQuery(this).attr('data-html') == 'range_select') {
1336                remove_obj.val(jQuery(jQuery(this).attr('data-select') + ' :first').attr('value'));
1337                var options_to = remove_obj.siblings('.mdf_range_select_to').children("option");
1338                remove_obj.siblings('.mdf_range_select_to').val(jQuery(options_to[options_to.length - 1]).attr('value'));
1339            }
1340            if (jQuery(this).attr('data-html') == 'calendar') {
1341                remove_obj.val('');
1342                remove_obj.siblings("input[type='hidden']").val('');
1343            }
1344
1345            remove_obj.parents('form').submit();
1346
1347        }
1348    });
1349}
1350
1351//labels
1352
1353function  mdf_check_labels(item) {
1354    var checkbox = jQuery(item).find('input.mdf_label_term').eq(0);
1355    var hiden_checkbox = jQuery(item).find('input.mdf_label_hiden').eq(0);
1356    if (jQuery(checkbox).is(':checked')) {
1357        jQuery(checkbox).attr("checked", false);
1358        jQuery(hiden_checkbox).val('~');
1359        jQuery(item).removeClass("checked");
1360    } else {
1361        jQuery(checkbox).attr("checked", true);
1362        jQuery(item).addClass("checked");
1363        jQuery(hiden_checkbox).val('1');
1364    }
1365
1366}
1367function  mdf_tax_check_labels(item) {
1368    var checkbox = jQuery(item).find('input.mdf_taxonomy_label').eq(0);
1369    if (jQuery(checkbox).is(':checked')) {
1370        jQuery(checkbox).attr("checked", false);
1371        jQuery(item).removeClass("checked");
1372    } else {
1373        jQuery(checkbox).attr("checked", true);
1374        jQuery(item).addClass("checked");
1375    }
1376
1377}
1378
1379function mdtf_remove_param(key, sourceURL) {
1380    var rtn = sourceURL.split("?")[0],
1381            param,
1382            params_arr = [],
1383            queryString = (sourceURL.indexOf("?") !== -1) ? sourceURL.split("?")[1] : "";
1384    if (queryString !== "") {
1385        params_arr = queryString.split("&");
1386        for (var i = params_arr.length - 1; i >= 0; i -= 1) {
1387            param = params_arr[i].split("=")[0];
1388            if (param === key) {
1389                params_arr.splice(i, 1);
1390            }
1391        }
1392        if (params_arr.length)
1393            rtn = rtn + "?" + params_arr.join("&");
1394    }
1395    return rtn;
1396}

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.