From ca161dac0ff492b3a837b6dd7de7fa2817db57f8 Mon Sep 17 00:00:00 2001 From: Chuck Scott Date: Tue, 26 Jul 2016 11:44:52 -0400 Subject: [PATCH] Fixed up problem with selected category in category search form. --- models/front/members/list.php | 28 ++++++++++++++++------------ views/front/members/list.html | 4 ++-- 2 files changed, 18 insertions(+), 14 deletions(-) diff --git a/models/front/members/list.php b/models/front/members/list.php index e161fc3f..a2dd4971 100644 --- a/models/front/members/list.php +++ b/models/front/members/list.php @@ -157,6 +157,7 @@ class GlmMembersFront_members_list extends GlmDataMemberInfo $textSearch = ''; $blankStart = false; $membersFound = false; + $catSearchSelected = false; // Check for URL parameter override of shortcode parameters if (isset($_REQUEST['categorySearch'])) { @@ -267,12 +268,13 @@ class GlmMembersFront_members_list extends GlmDataMemberInfo $textSearch = stripslashes($textSearch); } - // Get category data for search pick list and shortcode selection + // Get all category data for possible user in search pick list require_once GLM_MEMBERS_PLUGIN_CLASS_PATH.'/data/dataCategories.php'; $Categories = new GlmDataCategories($this->wpdb, $this->config); $categoryData = $Categories->getListSortedParentChild(false); - // Get any numeric categories selected in the submitted shortcode + // Get any numeric categories selected in the submitted shortcode and add to $cats array. + // This sets categories that are available for selection by the user $catSelected = ''; $cats = array(); if (isset($actionData['request']['category'])) { @@ -295,7 +297,8 @@ class GlmMembersFront_members_list extends GlmDataMemberInfo } - // Get any text categories selected in the submitted shortcode + // Get any text categories selected in the submitted shortcode and add to $cats array + // This sets categories that are available for selection by the user. if (isset($actionData['request']['category-name'])) { // Break up shortcode categories into an array to make searching easy @@ -323,7 +326,7 @@ class GlmMembersFront_members_list extends GlmDataMemberInfo } - // If there's categories specified with the shortcode + // If there's categories specified above ($cats array) if (count($cats) > 0) { /* * Restrict available categories for selection to those in shortcode or children @@ -355,6 +358,7 @@ class GlmMembersFront_members_list extends GlmDataMemberInfo } $catSelected = implode(',', $cats); + $catSelectedForQuery = $catSelected; // If we're doing category search selection Get category filter data if ($this->config['settings']['list_show_search_category']) { @@ -371,27 +375,26 @@ class GlmMembersFront_members_list extends GlmDataMemberInfo // Since we have one category selected by the user, make that default if ($c && isset($categoryData[$c])) { $categoryData[$c]['default'] = true; - $catSelected = $c; + $catSearchSelected = $c; + + // Also set that to be the only category used in the query + $catSelectedForQuery = $catSearchSelected; } } } - if (GLM_MEMBERS_PLUGIN_FRONT_DEBUG) { - glmMembersFront::addNotice("Categories Requested: $catSelected", 'Process'); - - } // If we have a category ID or IDs - if ($catSelected != '') { + if ($catSelectedForQuery != '') { $where .= $whereSep." T.id in ( SELECT DISTINCT(member_info) FROM ".GLM_MEMBERS_PLUGIN_DB_PREFIX."category_member_info M, ".GLM_MEMBERS_PLUGIN_DB_PREFIX."categories C - WHERE M.category in($catSelected) - OR (C.parent in($catSelected) AND M.category = C.id) + WHERE M.category in($catSelectedForQuery) + OR (C.parent in($catSelectedForQuery) AND M.category = C.id) )"; $whereSep = ' AND '; @@ -558,6 +561,7 @@ class GlmMembersFront_members_list extends GlmDataMemberInfo 'categories' => $categoryData, 'singleCategory' => $singleCategory, 'catSelected' => $catSelected, + 'catSearchSelected' => $catSearchSelected, 'amenities' => $amenityData, 'amenSelected' => $amenSelected, 'alphaList' => $alphaList, diff --git a/views/front/members/list.html b/views/front/members/list.html index 828baf22..db6e48a1 100644 --- a/views/front/members/list.html +++ b/views/front/members/list.html @@ -82,9 +82,9 @@ {if $settings.list_show_search_alpha} {/if} -- 2.17.1