1/* ----------------- Start Document ----------------- */ 2(function($){ 3"use strict"; 4 5$(document).ready(function(){ 6 // Preserve form when not refreshing page. 7 $(document).on("click", "a", function () { 8 // We're moving away to another page. Let's make sure the form persist. 9 $("div.job_listings").each(function () { 10 persist_form($(this)); 11 }); 12 }); 13 14 $(document).on("submit", "form", function () { 15 // We're moving away from current page from another form. Let's make sure the form persist. 16 $("div.job_listings").each(function () { 17 persist_form($(this)); 18 }); 19 }); 20 if ($("#listeo_core-search-form").hasClass("ajax-search")) { 21 $(".fullwidth-filters ").addClass("ajax-search"); 22 } 23 24 // Add blur event handler for location search 25 $(document).on("blur", "#location_search", function () { 26 var target = $("div#listeo-listings-container"); 27 target.triggerHandler("update_results", [1, false]); 28 }); 29 $("#listeo-listings-container").on( 30 "update_results", 31 function (event, page, append, loading_previous) { 32 var results = $("#listeo-listings-container"); 33 34 var filter = $("#listeo_core-search-form"); 35 var data = filter.serializeArray(); 36 var style = results.data("style"); 37 var grid_columns = results.data("grid_columns"); 38 var tax_region = results.data("region"); 39 var tax_category = results.data("category"); 40 var tax_service_category = results.data("service-category"); 41 var tax_rental_category = results.data("rental-category"); 42 var tax_event_category = results.data("event-category"); 43 var tax_classifieds_category = results.data("classifieds-category"); 44 var _listing_type = results.attr("data-_listing_type"); 45 46 var tax_feature = results.data("feature"); 47 var per_page = results.data("per_page"); 48 var custom_class = results.data("custom_class"); 49 var order = results.data("orderby"); 50 51 data.push({ name: "action", value: "listeo_get_listings" }); 52 data.push({ name: "page", value: page }); 53 data.push({ name: "style", value: style }); 54 data.push({ name: "grid_columns", value: grid_columns }); 55 data.push({ name: "per_page", value: per_page }); 56 data.push({ name: "custom_class", value: custom_class }); 57 data.push({ name: "order", value: order }); 58 if (_listing_type) { 59 data.push({ name: "_listing_type", value: _listing_type }); 60 } 61 62 var mapBounds = filter.find(".map-bounds"); 63 if (mapBounds.length) { 64 mapBounds.each(function () { 65 data.push({ 66 name: $(this).attr("name"), 67 value: $(this).val(), 68 }); 69 }); 70 } 71 72 var has_listing_category_search = false; 73 var has_service_category_search = false; 74 var has_rental_category_search = false; 75 var has_event_category_search = false; 76 var has_classifieds_category_search = false; 77 var has_listing_feature_search = false; 78 var has_region_search = false; 79 80 $.each(data, function (i, v) { 81 console.log(); 82 if (v.name.substring(0, 15) == "tax-listing_cat") { 83 if (v.value) { 84 has_listing_category_search = true; 85 } 86 } 87 if (v.name.substring(0, 15) == "tax-listing_cat") { 88 if (v.value) { 89 has_listing_category_search = true; 90 } 91 } 92 93 if (v.name.substring(0, 15) == "tax-listing_fea") { 94 if (v.value) { 95 has_listing_feature_search = true; 96 } 97 } 98 if (v.name.substring(0, 9) == "tax-regio") { 99 if (v.value) { 100 has_region_search = true; 101 } 102 } 103 }); 104 if (!has_region_search) { 105 if (tax_region) { 106 data.push({ name: "tax-region", value: tax_region }); 107 } 108 } 109 if (!has_listing_category_search) { 110 if (tax_category) { 111 data.push({ name: "tax-listing_category", value: tax_category }); 112 } 113 } 114 if (!has_listing_feature_search) { 115 if (tax_feature) { 116 data.push({ name: "tax-listing_feature", value: tax_feature }); 117 } 118 } 119 if (!has_rental_category_search) { 120 if (tax_rental_category) { 121 data.push({ 122 name: "tax-rental_category", 123 value: tax_rental_category, 124 }); 125 } 126 } 127 if (!has_event_category_search) { 128 if (tax_event_category) { 129 data.push({ name: "tax-event_category", value: tax_event_category }); 130 } 131 } 132 if (!has_classifieds_category_search) { 133 if (tax_classifieds_category) { 134 data.push({ 135 name: "tax-classifieds_category", 136 value: tax_classifieds_category, 137 }); 138 } 139 } 140 if (!has_service_category_search) { 141 if (tax_service_category) { 142 data.push({ 143 name: "tax-service_category", 144 value: tax_service_category, 145 }); 146 } 147 } 148 149 $.ajax({ 150 type: "post", 151 dataType: "json", 152 url: listeo_core.ajax_url, 153 data: data, 154 beforeSend: function (xhr) { 155 results.addClass("loading"); 156 }, 157 success: function (data) { 158 results.removeClass("loading"); 159 $(results).html(data.html); 160 $("div.pagination-container").html(data.pagination); 161 $(".numerical-rating").numericalRating(); 162 $(".star-rating").starRating(); 163 $("#listeo-listings-container").triggerHandler( 164 "update_results_success" 165 ); 166 $(document).trigger("ajaxContentLoaded"); 167 if (listeo_core.map_provider == "google") { 168 var map = document.getElementById("map"); 169 if (typeof map != "undefined" && map != null) { 170 // mainMap(); 171 } 172 } 173 }, 174 }); 175 } 176 ); 177 $(document) 178 .on( 179 "change", 180 ".sort-by-select .orderby, #listeo_core-search-form.ajax-search select, .ajax-search input:not(#location_search,#_price_range,.bootstrap-range-slider,.form-control,.ai-search-input)", 181 function (e) { 182 var target = $("div#listeo-listings-container"); 183 target.triggerHandler("update_results", [1, false]); 184 //job_manager_store_state( target, 1 ); 185 } 186 ) 187 .on("keyup", function (e) { 188 if (e.which === 13) { 189 e.preventDefault(); 190 $(this).trigger("change"); 191 } 192 }); 193 $(".bootstrap-range-slider").on("slideStop", function () { 194 var target = $("div#listeo-listings-container"); 195 target.triggerHandler("update_results", [1, false]); 196 }); 197 // $( '#listeo_core-search-form.ajax-search input.location_search' ).change( function() { 198 // var target = $('div#listeo-listings-container' ); 199 // target.triggerHandler( 'update_results', [ 1, false ] ); 200 // //job_manager_store_state( target, 1 ); 201 // } ); 202 203 if ($("#listeo_core-search-form:not(.main-search-form)").length) { 204 document.getElementById("listeo_core-search-form").onkeypress = function ( 205 e 206 ) { 207 var key = e.charCode || e.keyCode || 0; 208 if (key == 13) { 209 if ($("#location_search:focus").length) { 210 return false;
211 } 212 var target = $("div#listeo-listings-container"); 213 target.triggerHandler("update_results", [1, false]); 214 e.preventDefault(); 215 } 216 }; 217 } 218 219 $(document).on("click", "span.panel-disable,.slider-disable", function (e) { 220 var results = $("#listeo-listings-container"); 221 results.triggerHandler("update_results", [1, false]); 222 }); 223 224 //$(document).on('click', 'div.pagination-container a', function(e) { 225 $("div.pagination-container.ajax-search").on("click", "a", function (e) { 226 e.preventDefault(); 227 var results = $("#listeo-listings-container"); 228 var filter = $("#listeo_core-search-form"); 229 var page = $(this).parent().data("paged"); 230 console.log(page); 231 if (page == "next") { 232 var page = $(".pagination li.current").data("paged") + 1; 233 } 234 if (page == "prev") { 235 var page = $(".pagination li.current").data("paged") - 1; 236 } 237 results.triggerHandler("update_results", [page, false]); 238 239 $("body, html").animate( 240 { 241 scrollTop: $( 242 ".fs-inner-container .search,#titlebar, .ajax-search,#map-container" 243 ).offset().top, 244 }, 245 600 246 ); 247 248 return false; 249 }); 250 251 var init_layout = $("#listeo-listings-container").data("style"); 252 253 if (init_layout == "list" || init_layout == "list_old") { 254 $(".layout-switcher a").removeClass("active"); 255 $(".layout-switcher a.list").addClass("active"); 256 } else { 257 $(".layout-switcher a:not(.list)").addClass("active"); 258 } 259 260 $(".tax-listing_category #tax-listing_category").on("change", function (e) { 261 var label = $(this).find(":selected").html(); 262 $(".page-title").html(label); 263 }); 264 265 $(".layout-switcher").on("click", "a", function (e) { 266 e.preventDefault(); 267 // var page = 1; 268 var results = $("#listeo-listings-container"); 269 // results.triggerHandler("update_results", [page, false]); 270 $(".layout-switcher a").removeClass("active"); 271 $(this).addClass("active"); 272 var layout = $(this).data("layout"); 273 274 results.data("style", layout); 275 if(layout == 'grid') { 276 // add class new-grid to #listeo-listings-container 277 results.addClass("new-grid-layout-nl"); 278 results.removeClass("list-layout"); 279 } 280 if(layout == 'list' || layout == 'list_old') { 281 // remove class new-grid from #listeo-listings-container 282 results.removeClass("new-grid-layout-nl"); 283 } 284 285 if (window.resetSlidersToFirst) { 286 // Small delay to ensure layout has updated 287 setTimeout(function () { 288 resetSlidersToFirst(); 289 }, 50); 290 } 291 292 }); 293 // ------------------ End Document ------------------ // 294}); 295 296})(this.jQuery); 297/**/
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.