1(function ($) { 2 $( document ).ready( function( $ ) { 3 /********************************************************************** 4 / 5 / BINDINGS 6 / 7 **********************************************************************/ 8 //click event types filtering 9 $('.event-type-select').click(function(event){ 10 if($(event.target).hasClass("jq-event-box")) 11 { 12 show_or_hide_filters(); 13 } 14 }); 15 16 //close filters when clicked outside 17 $("body").click(function(event){ 18 // close venue filtering if clicked anywhere outside of event filtering dropdown 19 if(!$(event.target).hasClass("event-type-select", "jq-event-box") && 20 !$(event.target).parent().hasClass("event-type-select", "jq-event-box") && 21 !$(".event-type-select.jq-event-box").hasClass("filter-closed") && 22 !$(event.target).parents("div").hasClass("venues-filtering") 23 ) 24 { 25 show_or_hide_filters(); 26 } 27 }); 28 29 //reset filters 30 $('#venue-reset-filters').click(function(){ 31 venue_reset_filters(); 32 }); 33 34 35 // filter dropdown input selected 36 $(".event-types-list li").click(function(){ 37 updateFilterTitleText(); 38 }); 39 40 /********************************************************************** 41 / 42 / AJAX FILTERING 43 / 44 **********************************************************************/ 45 $( '#view-venue-results' ).click( function( event ) { 46 $( ".spinner" ).show(); 47 $('.event-types').addClass('hide'); 48 $('#event-type-select').addClass('filter-closed'); 49 //updateFilterTitleText(); 50 51 var values = $('input:checkbox:checked').map(function () { 52 return this.value; 53 }).get(); 54 55 values = values.toString(); 56 57 $.ajax({ 58 type: 'GET', 59 url: dv.ajaxurl, 60 data: { 61 action: 'display_venues_filter', 62 event_categories: values, 63 }, 64 }).done( function( msg ) { 65 $('.spinner').hide(); 66 $('#display-venue-results').html( msg ); 67 }); 68 }); 69 70 }); 71 72 /********************************************************************** 73 / 74 / FUNCTIONS 75 / 76 **********************************************************************/ 77 78 function show_or_hide_filters() { 79 if( $('#event-type-select').hasClass('filter-closed') ){ 80 $('.event-types').removeClass('hide'); 81 $('#event-type-select').removeClass('filter-closed'); 82 } 83 else{ 84 $('.event-types').addClass('hide'); 85 $('#event-type-select').addClass('filter-closed'); 86 } 87 } 88 89 function updateFilterTitleText(){ 90 var changeFilterText = ""; 91 $(".event-types-list li input:checked").each(function(index) { 92 if(index !== 0) 93 changeFilterText = changeFilterText + ", "; 94 changeFilterText = changeFilterText + $(this).next("label").text(); 95 }) 96 97 if(changeFilterText === ""){changeFilterText = "Event Type";} 98 $("#event-type-select .ml-15.jq-event-box").text(changeFilterText); 99 }; 100 101 function venue_reset_filters() { 102 $( ".spinner" ).show(); 103 $('input:checkbox').removeAttr('checked'); 104 $('.event-types').addClass('hide'); 105 $('#event-type-select').addClass('filter-closed'); 106 107 $.ajax({ 108 type: 'GET', 109 url: dv.ajaxurl, 110 data: { 111 action: 'display_venues_filter', 112 event_categories: 'all', 113 }, 114 }).done( function( msg ) { 115 $('.spinner').hide(); 116 $('#display-venue-results').html( msg ); 117 }); 118 119 $("#event-type-select .ml-15.jq-event-box").text("Event Type"); 120 } 121})(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.