Advertisement
Apina

modified EE search to exclude expired events

Dec 12th, 2014
253
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.96 KB | None | 0 0
  1. function ee_create_autocomplete_search2(){
  2.  
  3. global $wpdb, $espresso_manager, $current_user, $org_options;
  4. $array = array('ee_search' => 'true');
  5. $url = add_query_arg($array, get_permalink($org_options['event_page_id']));
  6. ob_start();
  7. ?>
  8. <div id="espresso-search-form-dv" class="ui-widget">
  9. <form name="form" method="post" action="<?php echo $url ?>">
  10. <input id="ee_autocomplete" name="ee_name" class="ui-autocomplete-input ui-corner-all" />
  11. <input id="ee_search_submit" name="ee_search_submit" class="ui-button ui-button-big ui-priority-primary ui-state-default ui-state-hover ui-state-focus ui-corner-all" type="submit" value="Search" />
  12. <input id="event_id" name="event_id" type="hidden">
  13. </form>
  14. </div>
  15. <?php
  16. $ee_autocomplete_params = array();
  17. $SQL = "SELECT e.*";
  18. if ( isset($org_options['use_venue_manager']) && $org_options['use_venue_manager'] == 'Y' ) {
  19. $SQL .= ", v.city venue_city, v.state venue_state, v.name venue_name, v.address venue_address, v.city venue_city, v.state venue_state, v.zip venue_zip, v.country venue_country, v.meta venue_meta ";
  20. }
  21. $SQL .= " FROM " . EVENTS_DETAIL_TABLE . " e ";
  22. if ( isset($org_options['use_venue_manager']) && $org_options['use_venue_manager'] == 'Y' ) {
  23. $SQL .= " LEFT JOIN " . EVENTS_VENUE_REL_TABLE . " vr ON vr.event_id = e.id LEFT JOIN " . EVENTS_VENUE_TABLE . " v ON v.id = vr.venue_id ";
  24. }
  25. $SQL .= " WHERE e.is_active = 'Y' ";
  26. $SQL .= " AND e.event_status != 'D' ";
  27. $SQL .= " AND e.registration_end >= CURDATE() ";
  28. //echo '<p>$sql = '.$sql.'</p>';
  29. $events = $wpdb->get_results($SQL);
  30. $num_rows = $wpdb->num_rows;
  31.  
  32. if ($num_rows > 0) {
  33. foreach ($events as $event){
  34. $venue_city = !empty($event->venue_city) ? stripslashes_deep($event->venue_city) : '';
  35. $venue_state = !empty($event->venue_state) ? (!empty($event->venue_city) ? ', ' : '') .stripslashes_deep($event->venue_state) : '';
  36.  
  37. $venue_name = !empty($event->venue_name) ?' @' . stripslashes_deep($event->venue_name) . ' - ' . $venue_city . $venue_state . '' : '';
  38. //An Array of Objects with label and value properties:
  39. $ee_autocomplete_params[] = array(
  40. 'url' => espresso_reg_url($event->id),
  41. 'value' => stripslashes_deep($event->event_name) . $venue_name,
  42. 'id' => $event->id
  43. );
  44. //echo '{ url:"'.espresso_reg_url($event->id).'", value: "'.stripslashes_deep($event->event_name) . $venue_name .'", id: "'.$event->id.'" },';
  45. }
  46. }
  47. wp_register_script('espresso_autocomplete', (EVENT_ESPRESSO_PLUGINFULLURL . "scripts/espresso_autocomplete.js"), array( 'jquery-ui-autocomplete' ), '1.0.0', TRUE );
  48. wp_enqueue_script('espresso_autocomplete');
  49. wp_localize_script( 'espresso_autocomplete', 'ee_autocomplete_params', $ee_autocomplete_params );
  50. //Load scripts
  51. add_action('wp_footer', 'ee_load_jquery_autocomplete_scripts');
  52. $buffer = ob_get_contents();
  53. ob_end_clean();
  54. return $buffer;
  55. }
  56. add_shortcode('EVENT_SEARCH2', 'ee_create_autocomplete_search2');
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement