1(function ($) { 2 jQuery(document).ready(function () { 3 var nonce_get = $('#directorist-search-area').attr('data-nonce'); 4 var view_columns = $('#directorist').attr('data-view-columns'); 5 var text_field = $('.search-text').attr('data-text'); 6 var category_field = $('.search-category').attr('data-cat'); 7 var location_field = $('.search-location').attr('data-loc'); 8 var address_field = $('.search-address').attr('data-address'); 9 var price_field = $('.range_single').attr('data-price'); 10 var price_range_field = $('.price-frequency').attr('data-price-range'); 11 var rating_field = $('.search-rating').attr('data-rating'); 12 var radius_field = $('.search-radius').attr('data-radius'); 13 var open_field = $('.search-open').attr('data-open'); 14 var tag_field = $('.ads-filter-tags').attr('data-tag'); 15 var custom_search_field = $('.atbdp-custom-fields-search').attr('data-custom-search-field'); 16 var website_field = $('.search-website').attr('data-website'); 17 var email_field = $('.search-email').attr('data-email'); 18 var phone_field = $('.search-phone').attr('data-phone'); 19 var fax_field = $('.search-fax').attr('data-fax'); 20 var zip_field = $('.search-zip').attr('data-zip'); 21 var reset_filters = $('.reset-filters').attr('data-reset'); 22 var apply_filter = $('.ajax-search').attr('data-apply'); 23 var directory_type = $('#directory_type').val(); 24 var map_zoom_level = $('#map_zoom_level').val(); 25 let mapColThree = $('.directorist-map-columns-three'); 26 let directoristMap = $('.directorist-map'); 27 28 // function for select2 initialization 29 function select2Initialize() { 30 // Category 31 $('#cat-type').select2({ 32 placeholder: typeof directorist.i18n_text !== 'undefined' && directorist.i18n_text.category_selection, 33 allowClear: true, 34 templateResult: function (data) { 35 // We only really care if there is an element to pull classes from 36 if (!data.element) { 37 return data.text; 38 } 39 var $element = $(data.element); 40 var $wrapper = $('<span></span>'); 41 $wrapper.addClass($element[0].className); 42 $wrapper.text(data.text); 43 return $wrapper; 44 }, 45 }); 46 47 //location 48 $('#loc-type').select2({ 49 placeholder: typeof directorist.i18n_text !== 'undefined' && directorist.i18n_text.location_selection, 50 allowClear: true, 51 templateResult: function (data) { 52 // We only really care if there is an element to pull classes from 53 if (!data.element) { 54 return data.text; 55 } 56 var $element = $(data.element); 57 var $wrapper = $('<span></span>'); 58 $wrapper.addClass($element[0].className); 59 $wrapper.text(data.text); 60 return $wrapper; 61 } 62 }); 63 } 64 65 //initialize range slider 66 var directorist_range_slider = (selector, obj) => { 67 var isDraging = false, 68 max = obj.maxValue, 69 min = obj.minValue, 70 down = 'mousedown', 71 up = 'mouseup', 72 move = 'mousemove', 73 74 div = ` 75 <div class="directorist-range-slider1" draggable="true"></div> 76 <input type='hidden' class="directorist-range-slider-minimum" name="minimum" value=${min} /> 77 <div class="directorist-range-slider-child"></div> 78 `; 79 80 var touch = "ontouchstart" in document.documentElement; 81 if (touch){ 82 down = 'touchstart'; 83 up = 'touchend'; 84 move = 'touchmove'; 85 } 86 87 //RTL 88 var isRTL = (directorist.rtl === 'true'); 89 var direction; 90 if(isRTL){ 91 direction = 'right'; 92 }else{ 93 direction = 'left'; 94 } 95 96 var slider = document.querySelectorAll(selector); 97 slider.forEach((id, index) => { 98 var sliderDataMin = min;
99 var sliderDataUnit = id.getAttribute('data-slider-unit'); 100 id.setAttribute('style', `max-width: ${obj.maxWidth}; border: ${obj.barBorder}; width: 100%; height: 4px; background: ${obj.barColor}; position: relative; border-radius: 2px;`); 101 id.innerHTML = div; 102 let slide1 = id.querySelector('.directorist-range-slider1'), 103 width = id.clientWidth; 104 105 slide1.style.background = obj.pointerColor; 106 slide1.style.border = obj.pointerBorder; 107 id.closest('.directorist-range-slider-wrap').querySelector('.directorist-range-slider-current-value').innerHTML = `<span>${min}</span> ${sliderDataUnit}`; 108 109 var x = null, 110 count = 0, 111 slid1_val = 0, 112 slid1_val2 = sliderDataMin, 113 count2 = width; 114 115 if(window.outerWidth < 600){ 116 id.classList.add('m-device'); 117 slide1.classList.add('m-device2'); 118 } 119 slide1.addEventListener(down, (event) => { 120 121 if(!touch){ 122 event.preventDefault(); 123 event.stopPropagation(); 124 } 125 x = event.clientX; 126 if (touch){ 127 x = event.touches[0].clientX; 128 } 129 isDraging = true; 130 event.target.classList.add('directorist-rs-active'); 131 }); 132 document.body.addEventListener(up, (event2) => { 133 134 if(!touch){ 135 event2.preventDefault(); 136 event2.stopPropagation(); 137 } 138 isDraging = false; 139 slid1_val2 = slid1_val; 140 slide1.classList.remove('directorist-rs-active'); 141 }); 142 143 slide1.classList.add('directorist-rs-active1'); 144 count = (width / max); 145 if(slide1.classList.contains('directorist-rs-active1')){ 146 var onLoadValue = count * min; 147 id.closest('.directorist-range-slider-wrap').querySelector('.directorist-range-slider-current-value span').innerHTML = sliderDataMin; 148 id.querySelector('.directorist-range-slider-minimum').value = sliderDataMin; 149 id.querySelector('.directorist-rs-active1').style[direction] = onLoadValue <= 0 ? 0 : onLoadValue +'px'; 150 id.querySelector('.directorist-range-slider-child').style.width = onLoadValue <= 0 ? 0 : onLoadValue +'px'; 151 } 152 153 document.body.addEventListener(move, (e) => { 154 if(isDraging){ 155 count = !isRTL ? (e.clientX + slid1_val2 * width / max - x) : (- e.clientX + slid1_val2 * width / max + x); 156 if (touch){ 157 count = !isRTL ? (e.touches[0].clientX + slid1_val2 * width / max - x) : (- e.touches[0].clientX + slid1_val2 * width / max + x); 158 } 159 if(count < 0){ 160 count = 0; 161 } else if(count > count2 - 18){ 162 count = count2 - 18; 163 } 164 } 165 if(slide1.classList.contains('directorist-rs-active')){ 166 slid1_val = Math.floor(max/ (width -18) * count); 167 id.closest('.directorist-range-slider-wrap').querySelector('.directorist-range-slider-current-value').innerHTML = `<span>${slid1_val}</span> ${sliderDataUnit}`; 168 id.querySelector('.directorist-range-slider-minimum').value = slid1_val; 169 id.closest('.directorist-range-slider-wrap').querySelector('.directorist-range-slider-value').value = slid1_val; 170 id.querySelector('.directorist-rs-active').style[direction] = count +'px'; 171 id.querySelector('.directorist-range-slider-child').style.width = count+'px'; 172 } 173 }); 174 }); 175 }; 176 177 function directorist_callingSlider() { 178 const minValueWrapper = document.querySelector('.directorist-range-slider-value'); 179 var default_args = { 180 maxValue: 1000, 181 minValue: parseInt(minValueWrapper && minValueWrapper.value), 182 maxWidth: '100%', 183 barColor: '#d4d5d9', 184 barBorder: 'none', 185 pointerColor: '#fff', 186 pointerBorder: '4px solid #444752', 187 }; 188 189 var config = ( directorist.slider_config && typeof directorist.slider_config === 'object' ) ? Object.assign( default_args, directorist.slider_config ) : default_args; 190 191 directorist_range_slider ('.directorist-range-slider', config); 192 } 193
194 $("body").on("click", '.directorist-listings-with-map-listings .directorist-viewas .directorist-viewas__item', function () { 195 var display_header = $('#display_header').val(); 196 var header_title = $('#header_title').val(); 197 var show_pagination = $('#show_pagination').val(); 198 var listings_per_page = $('#listings_per_page').val(); 199 var location_slug = $('#location_slug').val(); 200 var category_slug = $('#category_slug').val(); 201 var tag_slug = $('#tag_slug').val(); 202 var key = $('input[name="q"]').val(); 203 var location = $('.bdas-category-location').val(); 204 var category = $('.bdas-category-search').val(); 205 var open_now = []; 206 var price = []; 207 var custom_field = {}; 208 var website = $('input[name="website"]').val(); 209 var phone = $('input[name="phone"]').val(); 210 var address = $('input[name="address"]').val(); 211 var zip_code = $('input[name="zip"]').val(); 212 var email = $('input[name="email"]').val(); 213 var miles = $('.atbdrs-value').val(); 214 var cityLat = $('#cityLat').val(); 215 var cityLng = $('#cityLng').val(); 216 var tag = ""; 217 var search_by_rating = $('select[name="search_by_rating"]').val(); 218 var view_as = $(this).attr('data-view'); 219 $(this).toggleClass('active').siblings().removeClass('active'); 220 221 $(".directorist-map-wrapper").addClass('directorist-lwm-loading'); 222 $('input[name^="price["]').each(function (index, el) { 223 price.push($(el).val()) 224 }); 225 $.each($("input[name='open_now']:checked"), function () { 226 open_now.push($(this).val()); 227 }); 228 $.each($("input[name='in_tag[]']:checked"), function () { 229 tag = $(this).val(); 230 }); 231 /* $.each($("input[name='search_by_rating']:checked"), function () { 232 search_by_rating = $(this).val(); 233 }); */ 234 $('[name^="custom_field"]').each(function (index, el) { 235 var test = $(el).attr('name'); 236 var type = $(el).attr('type'); 237 var post_id = test.replace(/(custom_field\[)/, '').replace(/\]/, ''); 238 if ('radio' === type) { 239 $.each($("input[name='custom_field[" + post_id + "]']:checked"), function () { 240 value = $(this).val(); 241 custom_field[post_id] = value; 242 }); 243 } else if ('checkbox' === type) { 244 post_id = post_id.split('[]')[0]; 245 $.each($("input[name='custom_field[" + post_id + "][]']:checked"), function () { 246 var checkValue = []; 247 value = $(this).val(); 248 checkValue.push(value); 249 custom_field[post_id] = checkValue; 250 }); 251 } else { 252 var value = $(el).val(); 253 custom_field[post_id] = value; 254 } 255 }); 256 var sort_by = ""; 257 if ($(".sort-title-asc").hasClass("active")) { 258 sort_by = "title-asc"; 259 } else if ($(".sort-title-desc").hasClass("active")) { 260 sort_by = "title-desc"; 261 } else if ($(".sort-date-desc").hasClass("active")) { 262 sort_by = "date-desc"; 263 } else if ($(".sort-date-asc").hasClass("active")) { 264 sort_by = "date-asc"; 265 } else if ($(".sort-price-asc").hasClass("active")) { 266 sort_by = "price-asc"; 267 } else if ($(".sort-price-desc").hasClass("active")) { 268 sort_by = "price-desc"; 269 } else if ($(".sort-rand").hasClass("active")) { 270 sort_by = "rand"; 271 } 272 $(".directorist-map-columns-two .directorist-map-search .directorist-listing ").fadeOut(1000); 273 $.ajax({ 274 url: bdrr_submit.ajax_url, 275 type: "POST", 276 data: { 277 action: "ajax_search_listing", 278 map_height: $('#map_height').val(), 279 listings_with_map_columns: $('#listings_with_map_columns').val(), 280 view_as: view_as, 281 display_header: display_header, 282 header_title: header_title, 283 show_pagination: show_pagination, 284 listings_per_page: listings_per_page, 285 location_slug: location_slug, 286 category_slug: category_slug, 287 tag_slug: tag_slug, 288 key: key, 289 location: location, 290 category: category, 291 custom_field: custom_field, 292 price: price, 293 open_now: open_now, 294 website: website, 295 phone: phone, 296 address: address, 297 zip_code: zip_code, 298 email: email, 299 miles: miles, 300 cityLat: cityLat, 301 cityLng: cityLng, 302 tag: tag, 303 search_by_rating: search_by_rating, 304 sort_by: sort_by, 305 nonce_get: nonce_get, 306 view_columns: view_columns, 307 text_field: text_field, 308 category_field: category_field, 309 location_field: location_field, 310 address_field: address_field, 311 price_field: price_field, 312 price_range_field: price_range_field, 313 rating_field: rating_field, 314 radius_field: radius_field, 315 open_field: open_field, 316 tag_field: tag_field, 317 custom_search_field: custom_search_field, 318 website_field: website_field, 319 email_field: email_field, 320 phone_field: phone_field, 321 fax_field: fax_field,
322 zip_field: zip_field, 323 reset_filters: reset_filters, 324 apply_filter: apply_filter, 325 directory_type: $('#directory_type').val(), 326 map_zoom_level: map_zoom_level 327 }, 328 success: function (html) { 329 if($(window).width() > 1199){ 330 $(".directorist-map-wrapper").removeClass('directorist-lwm-loading'); 331 } 332 if (html.search) { 333 $(".directorist-map-search-content").empty().html(html.search); 334 } else { 335 $(".directorist-map-search-content").html('<div></div>'); 336 } 337 if (html.no_listing !== 'no_listing') { 338 $(".directorist-listing ").html(""); 339 $(".directorist-map-listing").remove(); 340 $(".directorist-ajax-search-result").show(); 341 $(".directorist-ajax-search-result").empty(); 342 $(".directorist-ajax-search-result").append(html.listings); 343 var _listing = $('.directorist-map-columns-two .directorist-listing '); 344 $('.directorist-map-columns-two .directorist-map-search').append(_listing); 345 window.dispatchEvent(new CustomEvent('directorist-reload-listings-map-archive')); 346 347 //Tweaks: OpensStreet map loading on smaller devices 348 if ($(window).width() <= 1199) { 349 $('#js-dlm-map').click(); 350 $('.directorist-map').css('visibility', 'hidden'); 351 setTimeout(() => { 352 $("#js-dlm-listings").click(); 353 $('.directorist-map').css('visibility', 'visible'); 354 $(".directorist-map-wrapper").removeClass('directorist-lwm-loading'); 355 }, 1000); 356 } 357 } else { 358 let iconURL = directorist.assets_url + 'icons/line-awesome/svgs/frown-open-solid.svg'; 359 let iconHTML = directorist.icon_markup.replace( '##URL##', iconURL ).replace( '##CLASS##', '' ); 360 $(".directorist-map-wrapper").removeClass('directorist-lwm-loading'); 361 $(".directorist-listing ").html('<div class="atbd-ajax-404error">\n' + 362 ' '+iconHTML+'\n' + 363 ' <h3>' + bdrr_submit.nothing_found_text + '</h3>\n' + 364 ' <p>' + bdrr_submit.search_changing_text + '</p>\n' + 365 ' </div>'); 366 $('.directorist-map').html(html.listings); 367 $(".directorist-listing ").addClass('bdmv-nolisting'); 368 window.dispatchEvent(new CustomEvent('directorist-reload-listings-map-archive')); 369 } 370 $('input[name="q"]').val(key); 371 $('input[name="address"]').val(address); 372 $('input[name="zip"]').val(zip_code); 373 if (category !== "") { 374 $('.bdas-category-search option[value=' + category + ']').attr("selected", true); 375 } 376 if (location !== "") { 377 $('.bdas-category-location option[value=' + location + ']').attr("selected", true); 378 } 379 select2Initialize(); 380 381 setTimeout(() => { 382 $(".dlm-filter-slide .directorist-more-filter-contents").hide(); 383 $(".directorist-map-columns-two .directorist-ad-search").css('height', 'auto'); 384 }, 0); 385 386 /* Fallback for Directorist v7.2.2 */ 387 $('.atbdp-range-slider').length ? atbd_callingSlider() : directorist_callingSlider(); 388 389 document.body.dispatchEvent(new CustomEvent('directorist-reload-map-api-field')); 390 391 let events = [ 392 new CustomEvent('directorist-search-form-nav-tab-reloaded'), 393 new CustomEvent('directorist-reload-select2-fields'), 394 new CustomEvent('directorist-reload-map-api-field'), 395 new CustomEvent('triggerSlice'), 396 ]; 397
398 events.forEach( event => { 399 document.body.dispatchEvent(event); 400 window.dispatchEvent(event); 401 }); 402 } 403 }); 404 }); 405 $("body").on("click", '.sort-by a', function () { 406 var display_header = $('#display_header').val(); 407 var header_title = $('#header_title').val(); 408 var show_pagination = $('#show_pagination').val(); 409 var listings_per_page = $('#listings_per_page').val(); 410 var location_slug = $('#location_slug').val(); 411 var category_slug = $('#category_slug').val(); 412 var tag_slug = $('#tag_slug').val(); 413 var key = $('input[name="q"]').val(); 414 var location = $('.bdas-category-location').val(); 415 var category = $('.bdas-category-search').val(); 416 var open_now = []; 417 var price = []; 418 var custom_field = {}; 419 var website = $('input[name="website"]').val(); 420 var phone = $('input[name="phone"]').val(); 421 var address = $('input[name="address"]').val(); 422 var zip_code = $('input[name="zip"]').val(); 423 var email = $('input[name="email"]').val(); 424 var miles = $('.atbdrs-value').val(); 425 var cityLat = $('#cityLat').val(); 426 var cityLng = $('#cityLng').val(); 427 var tag = ""; 428 var search_by_rating = $('select[name="search_by_rating"]').val(); 429 var view_as = ""; 430 if ($(".directorist-viewas__item--grid").hasClass("active")) { 431 view_as = "grid"; 432 } else if ($(".directorist-viewas__item--list").hasClass("active")) { 433 view_as = "list"; 434 } 435 $(".directorist-map-wrapper").addClass('directorist-lwm-loading'); 436 $('input[name^="price["]').each(function (index, el) { 437 price.push($(el).val()) 438 }); 439 $.each($("input[name='open_now']:checked"), function () { 440 open_now.push($(this).val()); 441 }); 442 $.each($("input[name='in_tag[]']:checked"), function () { 443 tag = $(this).val(); 444 }); 445 /* $.each($("input[name='search_by_rating']:checked"), function () { 446 search_by_rating = $(this).val(); 447 }); */ 448 $('[name^="custom_field"]').each(function (index, el) { 449 var test = $(el).attr('name'); 450 var type = $(el).attr('type'); 451 var post_id = test.replace(/(custom_field\[)/, '').replace(/\]/, ''); 452 if ('radio' === type) { 453 $.each($("input[name='custom_field[" + post_id + "]']:checked"), function () { 454 value = $(this).val(); 455 custom_field[post_id] = value; 456 }); 457 } else if ('checkbox' === type) { 458 post_id = post_id.split('[]')[0]; 459 $.each($("input[name='custom_field[" + post_id + "][]']:checked"), function () { 460 var checkValue = []; 461 value = $(this).val(); 462 checkValue.push(value); 463 custom_field[post_id] = checkValue; 464 }); 465 } else { 466 var value = $(el).val(); 467 custom_field[post_id] = value; 468 } 469 }); 470 var sort_by = $(this).attr('data-sort'); 471 $(".directorist-map-columns-two .directorist-map-search .directorist-listing ").fadeOut(1000); 472 $.ajax({ 473 url: bdrr_submit.ajax_url, 474 type: "POST", 475 data: { 476 action: "ajax_search_listing", 477 map_height: $('#map_height').val(), 478 listings_with_map_columns: $('#listings_with_map_columns').val(), 479 view_as: view_as, 480 display_header: display_header, 481 header_title: header_title, 482 show_pagination: show_pagination, 483 listings_per_page: listings_per_page, 484 location_slug: location_slug, 485 category_slug: category_slug, 486 tag_slug: tag_slug, 487 key: key, 488 location: location, 489 category: category, 490 custom_field: custom_field, 491 price: price, 492 open_now: open_now, 493 website: website, 494 phone: phone, 495 address: address, 496 zip_code: zip_code, 497 email: email, 498 miles: miles, 499 cityLat: cityLat, 500 cityLng: cityLng, 501 tag: tag, 502 search_by_rating: search_by_rating, 503 sort_by: sort_by, 504 nonce_get: nonce_get, 505 view_columns: view_columns, 506 text_field: text_field, 507 category_field: category_field, 508 location_field: location_field, 509 address_field: address_field, 510 price_field: price_field, 511 price_range_field: price_range_field, 512 rating_field: rating_field, 513 radius_field: radius_field, 514 open_field: open_field, 515 tag_field: tag_field, 516 custom_search_field: custom_search_field, 517 website_field: website_field, 518 email_field: email_field, 519 phone_field: phone_field, 520 fax_field: fax_field,
521 zip_field: zip_field, 522 reset_filters: reset_filters, 523 apply_filter: apply_filter, 524 directory_type: $('#directory_type').val(), 525 map_zoom_level: map_zoom_level 526 }, 527 success: function (html) { 528 if($(window).width() > 1199){ 529 $(".directorist-map-wrapper").removeClass('directorist-lwm-loading'); 530 } 531 if (html.search) { 532 $(".directorist-map-search").empty().html(html.search); 533 } else { 534 $(".directorist-map-search").html('<div></div>'); 535 } 536 if (html.no_listing !== 'no_listing') { 537 $(".directorist-listing ").html(""); 538 $(".directorist-map-listing").remove(); 539 $(".directorist-ajax-search-result").show(); 540 $(".directorist-ajax-search-result").empty(); 541 $(".directorist-ajax-search-result").append(html.listings); 542 var _listing = $('.directorist-map-columns-two .directorist-listing '); 543 $('.directorist-map-columns-two .directorist-map-search').append(_listing); 544 window.dispatchEvent(new CustomEvent('directorist-reload-listings-map-archive')); 545 546 //Tweaks: OpensStreet map loading on smaller devices 547 if ($(window).width() <= 1199) { 548 $('#js-dlm-map').click(); 549 $('.directorist-map').css('visibility', 'hidden'); 550 setTimeout(() => { 551 $("#js-dlm-listings").click(); 552 $('.directorist-map').css('visibility', 'visible'); 553 $(".directorist-map-wrapper").removeClass('directorist-lwm-loading'); 554 }, 1000); 555 } 556 } else { 557 let iconURL = directorist.assets_url + 'icons/line-awesome/svgs/frown-open-solid.svg'; 558 let iconHTML = directorist.icon_markup.replace( '##URL##', iconURL ).replace( '##CLASS##', '' ); 559 $(".directorist-map-wrapper").removeClass('directorist-lwm-loading'); 560 $(".directorist-listing ").html('<div class="atbd-ajax-404error">\n' + 561 ' '+iconHTML+'\n' + 562 ' <h3>' + bdrr_submit.nothing_found_text + '</h3>\n' + 563 ' <p>' + bdrr_submit.search_changing_text + '</p>\n' + 564 ' </div>'); 565 $('.directorist-map').html(html.listings); 566 $(".directorist-listing ").addClass('bdmv-nolisting'); 567 window.dispatchEvent(new CustomEvent('directorist-reload-listings-map-archive')); 568 } 569 select2Initialize(); 570 571 setTimeout(() => { 572 $(".dlm-filter-slide .directorist-more-filter-contents").hide(); 573 $(".directorist-map-columns-two .directorist-ad-search").css('height', 'auto'); 574 }, 0); 575 576 /* Fallback for Directorist v7.2.2 */ 577 $('.atbdp-range-slider').length ? atbd_callingSlider() : directorist_callingSlider(); 578 579 document.body.dispatchEvent(new CustomEvent('directorist-reload-map-api-field')); 580 581 let events = [ 582 new CustomEvent('directorist-search-form-nav-tab-reloaded'), 583 new CustomEvent('directorist-reload-select2-fields'), 584 new CustomEvent('directorist-reload-map-api-field'), 585 new CustomEvent('triggerSlice'), 586 ]; 587 588 events.forEach( event => { 589 document.body.dispatchEvent(event); 590 window.dispatchEvent(event); 591 }); 592 } 593 }); 594 }); 595 596 $("body").on("click", '.bdmv-directorist-type a', function () { 597 var miles = $('.atbdrs-value').val(); 598 var default_args = { 599 maxValue: 1000, 600 minValue: miles, 601 maxWidth: '100%', 602 barColor: '#d4d5d9', 603 barBorder: 'none', 604 pointerColor: '#fff', 605 pointerBorder: '4px solid #444752', 606 }; 607 608 var config = default_args; 609 610 $("#directory_type").attr('value', $(this).attr('data-id')); 611 var display_header = $('#display_header').val(); 612 var header_title = $('#header_title').val(); 613 var show_pagination = $('#show_pagination').val(); 614 var listings_per_page = $('#listings_per_page').val(); 615 var location_slug = $('#location_slug').val(); 616 var category_slug = $('#category_slug').val(); 617 var tag_slug = $('#tag_slug').val(); 618 var key = $('input[name="q"]').val(); 619 var location = $('.bdas-category-location').val(); 620 var category = $('.bdas-category-search').val(); 621 var open_now = []; 622 var price = []; 623 var custom_field = {}; 624 var website = $('input[name="website"]').val(); 625 var phone = $('input[name="phone"]').val(); 626 var address = $('input[name="address"]').val(); 627 var zip_code = $('input[name="zip"]').val(); 628 var email = $('input[name="email"]').val(); 629 var miles = $('.atbdrs-value').val(); 630 var cityLat = $('#cityLat').val(); 631 var cityLng = $('#cityLng').val(); 632 var tag = ""; 633 var search_by_rating = $('select[name="search_by_rating"]').val(); 634 var view_as = ""; 635 if ($(".directorist-viewas__item--grid").hasClass("active")) { 636 view_as = "grid"; 637 } else if ($(".directorist-viewas__item--list").hasClass("active")) { 638 view_as = "list"; 639 } 640 $(".directorist-map-wrapper").addClass('directorist-lwm-loading'); 641 $('input[name^="price["]').each(function (index, el) { 642 price.push($(el).val()) 643 }); 644 $.each($("input[name='open_now']:checked"), function () { 645 open_now.push($(this).val()); 646 }); 647 $.each($("input[name='in_tag[]']:checked"), function () { 648 tag = $(this).val(); 649 }); 650 /* $.each($("input[name='search_by_rating']:checked"), function () { 651 search_by_rating = $(this).val(); 652 }); */ 653 654 $('[name^="custom_field"]').each(function (index, el) { 655 var test = $(el).attr('name'); 656 var type = $(el).attr('type'); 657 var post_id = test.replace(/(custom_field\[)/, '').replace(/\]/, ''); 658 if ('radio' === type) { 659 $.each($("input[name='custom_field[" + post_id + "]']:checked"), function () { 660 value = $(this).val(); 661 custom_field[post_id] = value; 662 }); 663 } else if ('checkbox' === type) { 664 post_id = post_id.split('[]')[0]; 665 $.each($("input[name='custom_field[" + post_id + "][]']:checked"), function () { 666 var checkValue = []; 667 value = $(this).val(); 668 checkValue.push(value); 669 custom_field[post_id] = checkValue; 670 }); 671 } else { 672 var value = $(el).val(); 673 custom_field[post_id] = value; 674 } 675 }); 676 var sort_by = $(this).attr('data-sort'); 677 $(".directorist-map-columns-two .directorist-map-search .directorist-listing ").fadeOut(1000); 678 $.ajax({ 679 url: bdrr_submit.ajax_url, 680 type: "POST", 681 data: { 682 action: "ajax_search_listing", 683 map_height: $('#map_height').val(), 684 listings_with_map_columns: $('#listings_with_map_columns').val(), 685 view_as: view_as, 686 display_header: display_header, 687 header_title: header_title, 688 show_pagination: show_pagination, 689 listings_per_page: listings_per_page, 690 location_slug: location_slug, 691 category_slug: category_slug, 692 tag_slug: tag_slug, 693 key: key, 694 location: location, 695 category: category, 696 custom_field: custom_field, 697 price: price, 698 open_now: open_now, 699 website: website, 700 phone: phone, 701 address: address, 702 zip_code: zip_code, 703 email: email, 704 miles: miles, 705 cityLat: cityLat, 706 cityLng: cityLng, 707 tag: tag, 708 search_by_rating: search_by_rating, 709 sort_by: sort_by, 710 nonce_get: nonce_get, 711 view_columns: view_columns, 712 text_field: text_field, 713 category_field: category_field, 714 location_field: location_field, 715 address_field: address_field, 716 price_field: price_field, 717 price_range_field: price_range_field, 718 rating_field: rating_field, 719 radius_field: radius_field, 720 open_field: open_field, 721 tag_field: tag_field, 722 custom_search_field: custom_search_field, 723 website_field: website_field, 724 email_field: email_field, 725 phone_field: phone_field, 726 fax_field: fax_field,
727 zip_field: zip_field, 728 reset_filters: reset_filters, 729 apply_filter: apply_filter, 730 directory_type: $('#directory_type').val(), 731 map_zoom_level: map_zoom_level 732 }, 733 success: function (html) { 734 if($(window).width() > 1199){ 735 $(".directorist-map-wrapper").removeClass('directorist-lwm-loading'); 736 } 737 if (html.search) { 738 $(".directorist-map-search-content").empty().html(html.search); 739 } else { 740 $(".directorist-map-search-content").html('<div></div>'); 741 } 742 743 if (html.search) { 744 $(".directorist-map-search").empty().html(html.search); 745 } else { 746 $(".directorist-map-search").html('<div></div>'); 747 } 748 749 if (html.no_listing !== 'no_listing') { 750 $(".directorist-listing ").html(""); 751 $(".directorist-map-listing").remove(); 752 $(".directorist-ajax-search-result").show(); 753 $(".directorist-ajax-search-result").empty(); 754 $(".directorist-ajax-search-result").append(html.listings); 755 var _listing = $('.directorist-map-columns-two .directorist-listing '); 756 $('.directorist-map-columns-two .directorist-map-search').append(_listing); 757 window.dispatchEvent(new CustomEvent('directorist-reload-listings-map-archive')); 758 759 //Tweaks: OpensStreet map loading on smaller devices 760 if ($(window).width() <= 1199) { 761 $('#js-dlm-map').click(); 762 $('.directorist-map').css('visibility', 'hidden'); 763 setTimeout(() => { 764 $("#js-dlm-listings").click(); 765 $('.directorist-map').css('visibility', 'visible'); 766 $(".directorist-map-wrapper").removeClass('directorist-lwm-loading'); 767 }, 1000); 768 } 769 } else { 770 let iconURL = directorist.assets_url + 'icons/line-awesome/svgs/frown-open-solid.svg'; 771 let iconHTML = directorist.icon_markup.replace( '##URL##', iconURL ).replace( '##CLASS##', '' ); 772 $(".directorist-map-wrapper").removeClass('directorist-lwm-loading'); 773 $(".directorist-listing ").html('<div class="atbd-ajax-404error">\n' + 774 ' '+iconHTML+'\n' + 775 ' <h3>' + bdrr_submit.nothing_found_text + '</h3>\n' + 776 ' <p>' + bdrr_submit.search_changing_text + '</p>\n' + 777 ' </div>'); 778 $('.directorist-map').html(html.listings); 779 $(".directorist-listing ").addClass('bdmv-nolisting'); 780 781 window.dispatchEvent(new CustomEvent('directorist-reload-listings-map-archive')); 782 783 } 784 // Select2 Initialization 785 select2Initialize(); 786 787 /* Fallback for Directorist v7.2.2 */ 788 $('.atbdp-range-slider').length ? atbd_callingSlider() : directorist_callingSlider(); 789 790 $('input[name="q"]').val(key); 791 $('input[name="address"]').val(address); 792 $('input[name="zip"]').val(zip_code); 793 if (category !== "") { 794 $('.bdas-category-search option[value=' + category + ']').attr("selected", true); 795 } 796 if (location !== "") { 797 $('.bdas-category-location option[value=' + location + ']').attr("selected", true); 798 } 799 $(".dlm-filter-slide .directorist-more-filter-contents").hide(); 800 $(".directorist-map-columns-two .directorist-ad-search").css('height', 'auto'); 801 if ($(window).width() < 1199) { 802 if ($(".directorist-map-columns-two #js-dlm-search").hasClass("active")) { 803 $(".directorist-listing, .directorist-map-listing").hide(); 804 $(".directorist-map-search-content, .directorist-map-search").show(); 805 } else if ($(".directorist-map-columns-two #js-dlm-listings").hasClass("active")) { 806 $(".directorist-map-search-content, .directorist-map-listing, .directorist-ajax-search-result").hide(); 807 $('#directorist-search-area').hide(); 808 $(".directorist-listing, .directorist-map-search").show(); 809 if ($(".directorist-map-search .directorist-listing ").length === 2) { 810 $(".directorist-map-search-content + .directorist-listing ").hide(); 811 } 812 } else if ($(".directorist-map-columns-two #js-dlm-map").hasClass("active")) { 813 $(".directorist-map-search-content, .directorist-listing , .directorist-map-search").hide(); 814 $(".directorist-map-listing, .directorist-ajax-search-result").show(); 815 $(".directorist-map-columns-two .directorist-ajax-search-result .directorist-map").show(); 816 if ($(".directorist-ajax-search-result").is(":empty")) { 817 $(".directorist-ajax-search-result").hide(); 818 } 819 820 // three column 821 } else if ($(".directorist-map-columns-three #js-dlm-search").hasClass("active")) { 822 $(".directorist-map-listing, .directorist-ajax-search-result").hide(); 823 $(".directorist-map-search").show(); 824 } else if ($(".directorist-map-columns-three #js-dlm-listings").hasClass("active")) { 825 $(".directorist-map-search, .directorist-map, .directorist-ajax-search-result .directorist-map").hide(); 826 $(".directorist-map-listing, .directorist-listing , .directorist-ajax-search-result, .directorist-ajax-search-result .directorist-listing ").show(); 827 if ($(".directorist-ajax-search-result").is(":empty")) { 828 $(".directorist-ajax-search-result, .directorist-ajax-search-result .directorist-listing ").hide(); 829 } 830 } else if ($(".directorist-map-columns-three #js-dlm-map").hasClass("active")) { 831 $(".directorist-map-search, .directorist-listing ").hide(); 832 $(".directorist-map-listing, .directorist-map, .directorist-ajax-search-result, .directorist-ajax-search-result .directorist-map").show(); 833 if ($(".directorist-ajax-search-result").is(":empty")) { 834 $(".directorist-ajax-search-result, .directorist-ajax-search-result .directorist-map").hide(); 835 } 836 } 837 838 /* Fallback for Directorist v7.2.2 */ 839 $('.atbdp-range-slider').length ? atbd_callingSlider() : directorist_callingSlider(); 840 } 841 842 document.body.dispatchEvent(new CustomEvent('directorist-reload-map-api-field')); 843 844 let events = [ 845 new CustomEvent('directorist-search-form-nav-tab-reloaded'), 846 new CustomEvent('directorist-reload-select2-fields'), 847 new CustomEvent('directorist-reload-map-api-field'), 848 new CustomEvent('triggerSlice'), 849 ]; 850
851 events.forEach( event => { 852 document.body.dispatchEvent(event); 853 window.dispatchEvent(event); 854 }); 855 } 856 }); 857 }); 858 }); 859})(jQuery);
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.