added ajax and php search filtering using sql queries in the ajax search file and
the headSearch js file. this should filter the categories based on user selection
}
- var activities = page.find('#activities-search');
+ var activities = page.find('#activity-search');
var counties = page.find('#county-search');
var cities = page.find('#city-search');
var regions = page.find('#region-search');
});
// categories on change
-// activities.on('change', function(){
-// $('option:selected', this).attr('selected', 'selected');
-// var activity = this.value;
-// var taxonomy = $('option:selected', this).attr('data-taxonomy');
-// jQuery.ajax({
-// type:"POST",
-// dataType: 'json',
-// url: ajaxurl,
-// data: {
-// action: "trailmaps",
-// activity: activity,
-// taxonomy: taxonomy
-// },
-// success:function(data){
-// var activity_data = data;
-//
+ activities.on('change', function(){
+ $('option:selected', this).attr('selected', 'selected');
+ var activity = this.value;
+ if(activity === ''){
+ activity = 'false';
+ }
+ jQuery.ajax({
+ type:"POST",
+ dataType: 'json',
+ url: ajaxurl,
+ data: {
+ action: "trailmaps",
+ activity: activity,
+
+ },
+ success:function(data){
+ var activity_data = data;
// option = {};
// $('#trail-counties option').not(':eq(0), :selected').remove();
// var selected = $('#trail-counties option:selected').val();
// counties.append(option);
// }
// });
-//
-//
+
+
// option = {};
// $('#trail-cities option').not(':eq(0), :selected').remove();
// var selected = $('#trail-cities option:selected').val();
// cities.append(option);
// }
// });
-//
-// if( $('#trail-activities option:selected').val() === 'default'){
-// option = {};
-// activities.empty();
-// activities.append($('<option>', {value: 'default', text: 'Activity', 'data-taxonomy': 'default'}));
-// $.each(activity_data.activities, function(index, value) {
-// var option = $('<option>', {value: value.slug, text: value.name});
-// option.attr('data-taxonomy', value.taxonomy);
-// option.attr('data-id', value.id);
-// activities.append(option);
-// });
-// }
-// }
-// });
-// });
-// parks.on('change', function(){
-// $('option:selected', this).attr('selected', 'selected');
-// var activity = this.value;
-// var taxonomy = $('option:selected', this).attr('data-taxonomy');
-// jQuery.ajax({
-// type:"POST",
-// dataType: 'json',
-// url: ajaxurl,
-// data: {
-// action: "trailmaps",
-// activity: activity,
-// taxonomy: taxonomy
-// },
-// success:function(data){
-// var activity_data = data;
-//
+
+
+ option = {};
+ parks.empty();
+ parks.append($('<option>', {value: '', text: 'Select a Park'}));
+ $.each(activity_data.categories.Parks, function(index, value) {
+ var option = $('<option>', {value: value.category, text: value.name});
+ parks.append(option);
+ });
+ option = {};
+ destinations.empty();
+ destinations.append($('<option>', {value: 'default', text: 'Select a Destination'}));
+ $.each(activity_data.categories.Destinations, function(index, value) {
+ var option = $('<option>', {value: value.category, text: value.name});
+ destinations.append(option);
+ });
+
+ }
+ });
+ });
+ parks.on('change', function(){
+ $('option:selected', this).attr('selected', 'selected');
+ var park = this.value;
+ if(park === ''){
+ park = 'false';
+ }
+
+ jQuery.ajax({
+ type:"POST",
+ dataType: 'json',
+ url: ajaxurl,
+ data: {
+ action: "trailmaps",
+ park: park,
+
+ },
+ success:function(data){
+ var park_data = data;
+
// option = {};
// $('#trail-counties option').not(':eq(0), :selected').remove();
// var selected = $('#trail-counties option:selected').val();
-//// counties.append($('<option>', {value: 'default', text: 'County', 'data-taxonomy': 'default'}));
+//// counties.append($('<option>', {value: 'default', text: 'County', 'data-taxonomy': 'default'}));
// $.each(activity_data.counties,function(index,value){
// if(value.slug !== selected){
// var option = $('<option>', {value: value.slug, text: value.name});
// counties.append(option);
// }
// });
-//
-//
+
+
// option = {};
// $('#trail-cities option').not(':eq(0), :selected').remove();
// var selected = $('#trail-cities option:selected').val();
// cities.append(option);
// }
// });
-//
-// if( $('#trail-activities option:selected').val() === 'default'){
-// option = {};
-// activities.empty();
-// activities.append($('<option>', {value: 'default', text: 'Activity', 'data-taxonomy': 'default'}));
-// $.each(activity_data.activities, function(index, value) {
-// var option = $('<option>', {value: value.slug, text: value.name});
-// option.attr('data-taxonomy', value.taxonomy);
-// option.attr('data-id', value.id);
-// activities.append(option);
-// });
-// }
-// }
-// });
-// });
-// destinations.on('change', function(){
-// $('option:selected', this).attr('selected', 'selected');
-// var activity = this.value;
-// var taxonomy = $('option:selected', this).attr('data-taxonomy');
-// jQuery.ajax({
-// type:"POST",
-// dataType: 'json',
-// url: ajaxurl,
-// data: {
-// action: "trailmaps",
-// activity: activity,
-// taxonomy: taxonomy
-// },
-// success:function(data){
-// var activity_data = data;
-//
+
+ option = {};
+ destinations.empty();
+ destinations.append($('<option>', {value: '', text: 'Select a Destination'}));
+ $.each(park_data.categories.Destinations, function(index, value) {
+ var option = $('<option>', {value: value.category, text: value.name});
+ destinations.append(option);
+ });
+
+ option = {};
+ activities.empty();
+ activities.append($('<option>', {value: '', text: 'Select an Activity'}));
+ $.each(park_data.categories.Activities, function(index, value) {
+ var option = $('<option>', {value: value.category, text: value.name});
+ activities.append(option);
+ });
+ }
+ });
+ });
+ destinations.on('change', function(){
+ $('option:selected', this).attr('selected', 'selected');
+ var destination = this.value;
+ if(destination === ''){
+ destination = 'false';
+ }
+ jQuery.ajax({
+ type:"POST",
+ dataType: 'json',
+ url: ajaxurl,
+ data: {
+ action: "trailmaps",
+ destination: destination
+ },
+ success:function(data){
+ var destination_data = data;
+
+
// option = {};
// $('#trail-counties option').not(':eq(0), :selected').remove();
// var selected = $('#trail-counties option:selected').val();
//// counties.append($('<option>', {value: 'default', text: 'County', 'data-taxonomy': 'default'}));
-// $.each(activity_data.counties,function(index,value){
+// $.each(destination_data.counties,function(index,value){
// if(value.slug !== selected){
// var option = $('<option>', {value: value.slug, text: value.name});
// option.attr('data-id', value.id);
// counties.append(option);
// }
// });
-//
-//
+
+
// option = {};
// $('#trail-cities option').not(':eq(0), :selected').remove();
// var selected = $('#trail-cities option:selected').val();
//// cities.append($('<option>', {value: 'default', text: 'City', 'data-taxonomy': 'default'}));
-// $.each(activity_data.cities, function(index, value){
+// $.each(destination_data.categories.Activities, function(index, value){
// if(value.slug !== selected){
// var option = $('<option>', {value: value.slug, text: value.name});
// option.attr('data-taxonomy', value.taxonomy);
// cities.append(option);
// }
// });
-//
-// if( $('#trail-activities option:selected').val() === 'default'){
-// option = {};
-// activities.empty();
-// activities.append($('<option>', {value: 'default', text: 'Activity', 'data-taxonomy': 'default'}));
-// $.each(activity_data.activities, function(index, value) {
-// var option = $('<option>', {value: value.slug, text: value.name});
-// option.attr('data-taxonomy', value.taxonomy);
-// option.attr('data-id', value.id);
-// activities.append(option);
-// });
-// }
-// }
-// });
-// });
+
+
+ option = {};
+ activities.empty();
+ activities.append($('<option>', {value: '', text: 'Select an Activity'}));
+ $.each(destination_data.categories.Activities, function(index, value) {
+ console.log(value);
+ var option = $('<option>', {value: value.category, text: value.name});
+ option.attr('data-taxonomy', value.taxonomy);
+ option.attr('data-id', value.id);
+ activities.append(option);
+ });
+
+ option = {};
+ parks.empty();
+ parks.append($('<option>', {value: '', text: 'Select a Park'}));
+ $.each(destination_data.categories.Parks, function(index, value) {
+ console.log(value);
+ var option = $('<option>', {value: value.category, text: value.name});
+ option.attr('data-taxonomy', value.taxonomy);
+ option.attr('data-id', value.id);
+ parks.append(option);
+ });
+ }
+ });
+ });
});
;// Load foundation
$(document).foundation();
}
- var activities = page.find('#activities-search');
+ var activities = page.find('#activity-search');
var counties = page.find('#county-search');
var cities = page.find('#city-search');
var regions = page.find('#region-search');
});
// categories on change
-// activities.on('change', function(){
-// $('option:selected', this).attr('selected', 'selected');
-// var activity = this.value;
-// var taxonomy = $('option:selected', this).attr('data-taxonomy');
-// jQuery.ajax({
-// type:"POST",
-// dataType: 'json',
-// url: ajaxurl,
-// data: {
-// action: "trailmaps",
-// activity: activity,
-// taxonomy: taxonomy
-// },
-// success:function(data){
-// var activity_data = data;
-//
+ activities.on('change', function(){
+ $('option:selected', this).attr('selected', 'selected');
+ var activity = this.value;
+ if(activity === ''){
+ activity = 'false';
+ }
+ jQuery.ajax({
+ type:"POST",
+ dataType: 'json',
+ url: ajaxurl,
+ data: {
+ action: "trailmaps",
+ activity: activity,
+
+ },
+ success:function(data){
+ var activity_data = data;
// option = {};
// $('#trail-counties option').not(':eq(0), :selected').remove();
// var selected = $('#trail-counties option:selected').val();
// counties.append(option);
// }
// });
-//
-//
+
+
// option = {};
// $('#trail-cities option').not(':eq(0), :selected').remove();
// var selected = $('#trail-cities option:selected').val();
// cities.append(option);
// }
// });
-//
-// if( $('#trail-activities option:selected').val() === 'default'){
-// option = {};
-// activities.empty();
-// activities.append($('<option>', {value: 'default', text: 'Activity', 'data-taxonomy': 'default'}));
-// $.each(activity_data.activities, function(index, value) {
-// var option = $('<option>', {value: value.slug, text: value.name});
-// option.attr('data-taxonomy', value.taxonomy);
-// option.attr('data-id', value.id);
-// activities.append(option);
-// });
-// }
-// }
-// });
-// });
-// parks.on('change', function(){
-// $('option:selected', this).attr('selected', 'selected');
-// var activity = this.value;
-// var taxonomy = $('option:selected', this).attr('data-taxonomy');
-// jQuery.ajax({
-// type:"POST",
-// dataType: 'json',
-// url: ajaxurl,
-// data: {
-// action: "trailmaps",
-// activity: activity,
-// taxonomy: taxonomy
-// },
-// success:function(data){
-// var activity_data = data;
-//
+
+
+ option = {};
+ parks.empty();
+ parks.append($('<option>', {value: '', text: 'Select a Park'}));
+ $.each(activity_data.categories.Parks, function(index, value) {
+ var option = $('<option>', {value: value.category, text: value.name});
+ parks.append(option);
+ });
+ option = {};
+ destinations.empty();
+ destinations.append($('<option>', {value: 'default', text: 'Select a Destination'}));
+ $.each(activity_data.categories.Destinations, function(index, value) {
+ var option = $('<option>', {value: value.category, text: value.name});
+ destinations.append(option);
+ });
+
+ }
+ });
+ });
+ parks.on('change', function(){
+ $('option:selected', this).attr('selected', 'selected');
+ var park = this.value;
+ if(park === ''){
+ park = 'false';
+ }
+
+ jQuery.ajax({
+ type:"POST",
+ dataType: 'json',
+ url: ajaxurl,
+ data: {
+ action: "trailmaps",
+ park: park,
+
+ },
+ success:function(data){
+ var park_data = data;
+
// option = {};
// $('#trail-counties option').not(':eq(0), :selected').remove();
// var selected = $('#trail-counties option:selected').val();
-//// counties.append($('<option>', {value: 'default', text: 'County', 'data-taxonomy': 'default'}));
+//// counties.append($('<option>', {value: 'default', text: 'County', 'data-taxonomy': 'default'}));
// $.each(activity_data.counties,function(index,value){
// if(value.slug !== selected){
// var option = $('<option>', {value: value.slug, text: value.name});
// counties.append(option);
// }
// });
-//
-//
+
+
// option = {};
// $('#trail-cities option').not(':eq(0), :selected').remove();
// var selected = $('#trail-cities option:selected').val();
// cities.append(option);
// }
// });
-//
-// if( $('#trail-activities option:selected').val() === 'default'){
-// option = {};
-// activities.empty();
-// activities.append($('<option>', {value: 'default', text: 'Activity', 'data-taxonomy': 'default'}));
-// $.each(activity_data.activities, function(index, value) {
-// var option = $('<option>', {value: value.slug, text: value.name});
-// option.attr('data-taxonomy', value.taxonomy);
-// option.attr('data-id', value.id);
-// activities.append(option);
-// });
-// }
-// }
-// });
-// });
-// destinations.on('change', function(){
-// $('option:selected', this).attr('selected', 'selected');
-// var activity = this.value;
-// var taxonomy = $('option:selected', this).attr('data-taxonomy');
-// jQuery.ajax({
-// type:"POST",
-// dataType: 'json',
-// url: ajaxurl,
-// data: {
-// action: "trailmaps",
-// activity: activity,
-// taxonomy: taxonomy
-// },
-// success:function(data){
-// var activity_data = data;
-//
+
+ option = {};
+ destinations.empty();
+ destinations.append($('<option>', {value: '', text: 'Select a Destination'}));
+ $.each(park_data.categories.Destinations, function(index, value) {
+ var option = $('<option>', {value: value.category, text: value.name});
+ destinations.append(option);
+ });
+
+ option = {};
+ activities.empty();
+ activities.append($('<option>', {value: '', text: 'Select an Activity'}));
+ $.each(park_data.categories.Activities, function(index, value) {
+ var option = $('<option>', {value: value.category, text: value.name});
+ activities.append(option);
+ });
+ }
+ });
+ });
+ destinations.on('change', function(){
+ $('option:selected', this).attr('selected', 'selected');
+ var destination = this.value;
+ if(destination === ''){
+ destination = 'false';
+ }
+ jQuery.ajax({
+ type:"POST",
+ dataType: 'json',
+ url: ajaxurl,
+ data: {
+ action: "trailmaps",
+ destination: destination
+ },
+ success:function(data){
+ var destination_data = data;
+
+
// option = {};
// $('#trail-counties option').not(':eq(0), :selected').remove();
// var selected = $('#trail-counties option:selected').val();
//// counties.append($('<option>', {value: 'default', text: 'County', 'data-taxonomy': 'default'}));
-// $.each(activity_data.counties,function(index,value){
+// $.each(destination_data.counties,function(index,value){
// if(value.slug !== selected){
// var option = $('<option>', {value: value.slug, text: value.name});
// option.attr('data-id', value.id);
// counties.append(option);
// }
// });
-//
-//
+
+
// option = {};
// $('#trail-cities option').not(':eq(0), :selected').remove();
// var selected = $('#trail-cities option:selected').val();
//// cities.append($('<option>', {value: 'default', text: 'City', 'data-taxonomy': 'default'}));
-// $.each(activity_data.cities, function(index, value){
+// $.each(destination_data.categories.Activities, function(index, value){
// if(value.slug !== selected){
// var option = $('<option>', {value: value.slug, text: value.name});
// option.attr('data-taxonomy', value.taxonomy);
// cities.append(option);
// }
// });
-//
-// if( $('#trail-activities option:selected').val() === 'default'){
-// option = {};
-// activities.empty();
-// activities.append($('<option>', {value: 'default', text: 'Activity', 'data-taxonomy': 'default'}));
-// $.each(activity_data.activities, function(index, value) {
-// var option = $('<option>', {value: value.slug, text: value.name});
-// option.attr('data-taxonomy', value.taxonomy);
-// option.attr('data-id', value.id);
-// activities.append(option);
-// });
-// }
-// }
-// });
-// });
+
+
+ option = {};
+ activities.empty();
+ activities.append($('<option>', {value: '', text: 'Select an Activity'}));
+ $.each(destination_data.categories.Activities, function(index, value) {
+ console.log(value);
+ var option = $('<option>', {value: value.category, text: value.name});
+ option.attr('data-taxonomy', value.taxonomy);
+ option.attr('data-id', value.id);
+ activities.append(option);
+ });
+
+ option = {};
+ parks.empty();
+ parks.append($('<option>', {value: '', text: 'Select a Park'}));
+ $.each(destination_data.categories.Parks, function(index, value) {
+ console.log(value);
+ var option = $('<option>', {value: value.category, text: value.name});
+ option.attr('data-taxonomy', value.taxonomy);
+ option.attr('data-id', value.id);
+ parks.append(option);
+ });
+ }
+ });
+ });
});
global $wpdb;
// on county dropdown change //////////////////////////////////////////
- if( isset($_REQUEST['county'] ) || isset($_REQUEST['region'])){
if( isset($_REQUEST['county'] ) ){
$county_id = isset($_REQUEST['county'] )? filter_var($_REQUEST['county'],FILTER_SANITIZE_STRING) : '';
);
}
- } else {
- if( isset($_REQUEST['activities'] ) ){
-
- $activity_id = isset($_REQUEST['activities'] )? filter_var($_REQUEST['activities'],FILTER_SANITIZE_STRING) : '';
-
- if($activitity_id !== 'false'){
- $where = "
- SELECT MI.city, T.name
- FROM ".GLM_MEMBERS_PLUGIN_DB_PREFIX."member_info MI,
- ".GLM_MEMBERS_PLUGIN_DB_PREFIX."members M,
- ".GLM_MEMBERS_PLUGIN_DB_PREFIX."cities T
- WHERE MI.status = 10
- AND T.id = MI.city AND MI.county = $county_id GROUP BY MI.city, T.name
- ";
- }else {
- $where = "
- SELECT MI.city, T.name
- FROM ".GLM_MEMBERS_PLUGIN_DB_PREFIX."member_info MI,
- ".GLM_MEMBERS_PLUGIN_DB_PREFIX."members M,
- ".GLM_MEMBERS_PLUGIN_DB_PREFIX."cities T
- WHERE MI.status = 10
- AND M.id = MI.member AND T.id = MI.city GROUP BY MI.city, T.name
- ";
- }
-
-
- $results = $wpdb->get_results($where, ARRAY_A);
- $cities = $results;
-
- $trail_data = array(
- 'cities' => $cities,
- 'test' => $county_id
- );
-
- // on city dropdown change //////////////////////////////////////////
- } else if( isset($_REQUEST['parks']) ){
-
- $park_id = isset($_REQUEST['parks'] )? filter_var($_REQUEST['parks'],FILTER_SANITIZE_STRING) : '';
-
- if($park_id !== 'false'){
- $where = "
- SELECT MI.city, T.name as city_name, MI.county, C.name as county_name
- FROM ".GLM_MEMBERS_PLUGIN_DB_PREFIX."member_info MI,
- ".GLM_MEMBERS_PLUGIN_DB_PREFIX."members M,
- ".GLM_MEMBERS_PLUGIN_DB_PREFIX."cities T,
- ".GLM_MEMBERS_PLUGIN_DB_PREFIX."counties C
- WHERE MI.status = 10
- AND T.id = MI.city AND MI.region = $region_id AND C.id = MI.county GROUP BY MI.city, city_name, MI.county, county_name
- ";
- }else {
- $where = "
- SELECT MI.city, T.name as city_name, MI.county, C.name as county_name
- FROM ".GLM_MEMBERS_PLUGIN_DB_PREFIX."member_info MI,
- ".GLM_MEMBERS_PLUGIN_DB_PREFIX."members M,
- ".GLM_MEMBERS_PLUGIN_DB_PREFIX."cities T,
- ".GLM_MEMBERS_PLUGIN_DB_PREFIX."counties C
- WHERE MI.status = 10
- AND M.id = MI.member AND T.id = MI.city AND C.id = MI.county GROUP BY MI.city, city_name, MI.county, county_name
- ";
- }
+
+ if( isset($_REQUEST['activity'] ) ){
+
+ $activity_id = isset($_REQUEST['activity'] )? filter_var($_REQUEST['activity'],FILTER_SANITIZE_STRING) : '';
+
+ if($activity_id !== 'false'){
+ $where = "
+ SELECT CM.category, CAT.name, CAT.parent
+ FROM ".GLM_MEMBERS_PLUGIN_DB_PREFIX."member_info MI,
+ ".GLM_MEMBERS_PLUGIN_DB_PREFIX."category_member_info CM,
+ ".GLM_MEMBERS_PLUGIN_DB_PREFIX."categories CAT
+ WHERE CM.member_info IN (SELECT member_info FROM ".GLM_MEMBERS_PLUGIN_DB_PREFIX."category_member_info WHERE category = $activity_id)
+ AND MI.status = 10 AND CM.category = CAT.id AND NOT CM.category = $activity_id
+ GROUP BY CM.category
+ ";
+ }else {
+ $where = "
+ SELECT CM.category, CAT.name, CAT.parent
+ FROM ".GLM_MEMBERS_PLUGIN_DB_PREFIX."member_info MI,
+ ".GLM_MEMBERS_PLUGIN_DB_PREFIX."category_member_info CM,
+ ".GLM_MEMBERS_PLUGIN_DB_PREFIX."categories CAT
+ WHERE MI.status = 10 AND CM.category = CAT.id
+ GROUP BY CM.category
+ ";
+ }
- $results = $wpdb->get_results($where, ARRAY_A);
+ $results = $wpdb->get_results($where, ARRAY_A);
+ foreach($results as $key=>$value){
+ $parent = $value['parent'];
+ $sql = "SELECT name FROM ".GLM_MEMBERS_PLUGIN_DB_PREFIX."categories WHERE id = $parent;";
+ $parent_name = $wpdb->get_var($sql);
+ $categories[$parent_name][] = $value;
+ }
+
+ $trail_data = array(
+ 'categories' => $categories
+ );
+
+ // on city dropdown change //////////////////////////////////////////
+ } else if( isset($_REQUEST['park']) ){
+
+ $park_id = isset($_REQUEST['park'] )? filter_var($_REQUEST['park'],FILTER_SANITIZE_STRING) : '';
+
+ if($park_id !== 'false'){
+ $where = "
+ SELECT CM.category, CAT.name, CAT.parent
+ FROM ".GLM_MEMBERS_PLUGIN_DB_PREFIX."member_info MI,
+ ".GLM_MEMBERS_PLUGIN_DB_PREFIX."category_member_info CM,
+ ".GLM_MEMBERS_PLUGIN_DB_PREFIX."categories CAT
+ WHERE CM.member_info IN (SELECT member_info FROM ".GLM_MEMBERS_PLUGIN_DB_PREFIX."category_member_info WHERE category = $park_id)
+ AND MI.status = 10 AND CM.category = CAT.id AND NOT CM.category = $park_id
+ GROUP BY CM.category
+ ";
+ }else {
+ $where = "
+ SELECT CM.category, CAT.name, CAT.parent
+ FROM ".GLM_MEMBERS_PLUGIN_DB_PREFIX."member_info MI,
+ ".GLM_MEMBERS_PLUGIN_DB_PREFIX."category_member_info CM,
+ ".GLM_MEMBERS_PLUGIN_DB_PREFIX."categories CAT
+ WHERE MI.status = 10 AND CM.category = CAT.id
+ GROUP BY CM.category
+ ";
+ }
- foreach($results as $result){
- $counties[$result['county']] = $result['county_name'];
- $cities[$result['city']] = $result['city_name'];
- }
- $trail_data = array(
- 'cities' => $cities,
- 'counties' => $counties
- );
+ $results = $wpdb->get_results($where, ARRAY_A);
+ foreach($results as $key=>$value){
+ $parent = $value['parent'];
+ $sql = "SELECT name FROM ".GLM_MEMBERS_PLUGIN_DB_PREFIX."categories WHERE id = $parent;";
+ $parent_name = $wpdb->get_var($sql);
+ $categories[$parent_name][] = $value;
+ }
+
+ $trail_data = array(
+ 'categories' => $categories
+ );
+ }else if( isset($_REQUEST['destination']) ){
+
+ $destination_id = isset($_REQUEST['destination'] )? filter_var($_REQUEST['destination'],FILTER_SANITIZE_STRING) : '';
+
+ if($destination_id !== 'false'){
+
+ $where = "
+ SELECT CM.category, CAT.name, CAT.parent
+ FROM ".GLM_MEMBERS_PLUGIN_DB_PREFIX."member_info MI,
+ ".GLM_MEMBERS_PLUGIN_DB_PREFIX."category_member_info CM,
+ ".GLM_MEMBERS_PLUGIN_DB_PREFIX."categories CAT
+ WHERE CM.member_info IN (SELECT member_info FROM ".GLM_MEMBERS_PLUGIN_DB_PREFIX."category_member_info WHERE category = $destination_id)
+ AND MI.status = 10 AND CM.category = CAT.id AND NOT CM.category = $destination_id
+ GROUP BY CM.category
+ ";
+ }else {
+ $where = "
+ SELECT CM.category, CAT.name, CAT.parent
+ FROM ".GLM_MEMBERS_PLUGIN_DB_PREFIX."member_info MI,
+ ".GLM_MEMBERS_PLUGIN_DB_PREFIX."category_member_info CM,
+ ".GLM_MEMBERS_PLUGIN_DB_PREFIX."categories CAT
+ WHERE MI.status = 10 AND CM.category = CAT.id
+ GROUP BY CM.category
+ ";
}
+
+ $results = $wpdb->get_results($where, ARRAY_A);
+ foreach($results as $key=>$value){
+ $parent = $value['parent'];
+ $sql = "SELECT name FROM ".GLM_MEMBERS_PLUGIN_DB_PREFIX."categories WHERE id = $parent;";
+ $parent_name = $wpdb->get_var($sql);
+ $categories[$parent_name][] = $value;
+ }
+
+ $trail_data = array(
+ 'categories' => $categories
+ );
}
+
echo json_encode($trail_data);
wp_die();
}