From 2421296d5839650313fa287ba34b006b9826baea Mon Sep 17 00:00:00 2001 From: Steve Sutton Date: Wed, 5 Jun 2019 17:01:01 -0400 Subject: [PATCH] Redo search to start with main member table. Updating search to use glma grid --- css/admin.css | 4 + models/admin/messages/index.php | 42 ++++--- views/admin/header.html | 6 +- views/admin/messages/index.html | 2 +- views/admin/messages/list.html | 2 + views/admin/messages/listTemplates.html | 2 + views/admin/messages/search.html | 157 ++++++++++++------------ 7 files changed, 114 insertions(+), 101 deletions(-) create mode 100644 css/admin.css diff --git a/css/admin.css b/css/admin.css new file mode 100644 index 0000000..4932a7c --- /dev/null +++ b/css/admin.css @@ -0,0 +1,4 @@ +#glm-member-db-messages-app * label { + display: block; + clear: both; +} diff --git a/models/admin/messages/index.php b/models/admin/messages/index.php index 62c0311..e32aee3 100644 --- a/models/admin/messages/index.php +++ b/models/admin/messages/index.php @@ -140,25 +140,25 @@ class GlmMembersAdmin_messages_index extends GlmDataEmailMessages // echo '
$_REQUEST: ' . print_r( $_REQUEST, true ) . '
'; if ( isset( $_REQUEST['filterMemberStatus'] ) && $filterStatus = filter_var( $_REQUEST['filterMemberStatus'], FILTER_VALIDATE_INT) ) { - $whereParts[] = " T.status = " . $filterStatus; + $whereParts[] = " T.id IN ( SELECT member FROM " . GLM_MEMBERS_PLUGIN_DB_PREFIX . "member_info WHERE status = " . $filterStatus . ")"; } else { - $whereParts[] = "T.status != " . $this->config['status_numb']['Archived']; + // $whereParts[] = "T..id IN ( SELECT member FROM " . GLM_MEMBERS_PLUGIN_DB_PREFIX . "member_info WHERE status != " . $this->config['status_numb']['Archived'] . ")"; + } + if ( isset( $_REQUEST['filterMemberCity'] ) && $filterMemberCity = filter_var( $_REQUEST['filterMemberCity'], FILTER_VALIDATE_INT) ) { + $whereParts[] = " T.id IN ( SELECT member FROM " . GLM_MEMBERS_PLUGIN_DB_PREFIX . "member_info WHERE city = " . $filterMemberCity . ")"; } if ( isset( $_REQUEST['filterMemberAccess'] ) && $filterAccess = filter_var( $_REQUEST['filterMemberAccess'], FILTER_VALIDATE_INT) ) { - $whereParts[] = " T.member IN (SELECT id FROM " . GLM_MEMBERS_PLUGIN_DB_PREFIX . "members where access = ".$filterAccess.")"; + $whereParts[] = " T.access = ".$filterAccess; + // $whereParts[] = " T.member IN (SELECT id FROM " . GLM_MEMBERS_PLUGIN_DB_PREFIX . "members where access = ".$filterAccess.")"; } if ( isset( $_REQUEST['filterMemberName'] ) && $filterMemberName = filter_var( $_REQUEST['filterMemberName'] ) ) { $textSearch = addslashes(filter_var($_REQUEST['filterMemberName'], FILTER_SANITIZE_STRING, FILTER_FLAG_NO_ENCODE_QUOTES)); - $whereParts[] = "T.member IN ( - SELECT DISTINCT( id ) - FROM " . GLM_MEMBERS_PLUGIN_DB_PREFIX . "members - WHERE name like '%$textSearch%' - )"; + $whereParts[] = "T.name like '%$textSearch%'"; } if ( isset( $_REQUEST['filterContactEmail'] ) && $filterContactEmail = filter_var( $_REQUEST['filterContactEmail'], FILTER_SANITIZE_STRING) ) { $textSearch = addslashes(filter_var($_REQUEST['filterContactEmail'], FILTER_SANITIZE_STRING, FILTER_FLAG_NO_ENCODE_QUOTES)); - $whereParts[] = "T.member IN ( + $whereParts[] = "T.id IN ( SELECT DISTINCT( ref_dest ) FROM " . GLM_MEMBERS_CONTACTS_PLUGIN_DB_PREFIX . "contacts WHERE email like '%$textSearch%' @@ -166,7 +166,7 @@ class GlmMembersAdmin_messages_index extends GlmDataEmailMessages } if ( isset( $_REQUEST['filterContactFirstName'] ) && $filterContactFirstName = filter_var( $_REQUEST['filterContactFirstName'], FILTER_SANITIZE_STRING) ) { $textSearch = addslashes(filter_var($_REQUEST['filterContactFirstName'], FILTER_SANITIZE_STRING, FILTER_FLAG_NO_ENCODE_QUOTES)); - $whereParts[] = "T.member IN ( + $whereParts[] = "T.id IN ( SELECT DISTINCT( ref_dest ) FROM " . GLM_MEMBERS_CONTACTS_PLUGIN_DB_PREFIX . "contacts WHERE fname like '%$textSearch%' @@ -174,7 +174,7 @@ class GlmMembersAdmin_messages_index extends GlmDataEmailMessages } if ( isset( $_REQUEST['filterContactLastName'] ) && $filterContactLastName = filter_var( $_REQUEST['filterContactLastName'], FILTER_SANITIZE_STRING) ) { $textSearch = addslashes(filter_var($_REQUEST['filterContactLastName'], FILTER_SANITIZE_STRING, FILTER_FLAG_NO_ENCODE_QUOTES)); - $whereParts[] = "T.member IN ( + $whereParts[] = "T.id IN ( SELECT DISTINCT( ref_dest ) FROM " . GLM_MEMBERS_CONTACTS_PLUGIN_DB_PREFIX . "contacts WHERE lname like '%$textSearch%' @@ -183,13 +183,13 @@ class GlmMembersAdmin_messages_index extends GlmDataEmailMessages // Check if this is a request to show archived members if ( isset( $_REQUEST['filterArchived'] ) ) { - $whereParts[] = " T.member IN (SELECT id FROM " . GLM_MEMBERS_PLUGIN_DB_PREFIX . "members where access = ".$this->config['access_numb']['Archived'].")"; + $whereParts[] = " T.access = ".$this->config['access_numb']['Archived']; $filterArchived = true; $haveFilter = true; // If not, don't show them } else { - $whereParts[] = " T.member IN (SELECT id FROM " . GLM_MEMBERS_PLUGIN_DB_PREFIX . "members where access != ".$this->config['access_numb']['Archived'].")"; + $whereParts[] = " T.access != ".$this->config['access_numb']['Archived']; } // If we have categories, add "selected" element default false; @@ -216,7 +216,7 @@ class GlmMembersAdmin_messages_index extends GlmDataEmailMessages $categories[$c]['selected'] = true; } - $whereParts[] = " T.member in ( + $whereParts[] = " T.id in ( SELECT DISTINCT(I.member) FROM ".GLM_MEMBERS_PLUGIN_DB_PREFIX."member_info I, ".GLM_MEMBERS_PLUGIN_DB_PREFIX."category_member_info M, @@ -239,19 +239,23 @@ class GlmMembersAdmin_messages_index extends GlmDataEmailMessages // Check if there is a member_type filter if ( isset( $_REQUEST['filterMemberTypes'] ) && $memberTypeFilter = filter_var( $_REQUEST['filterMemberTypes'], FILTER_VALIDATE_INT ) ) { - $whereParts[] = " T.member IN (SELECT id FROM " . GLM_MEMBERS_PLUGIN_DB_PREFIX . "members where member_type = $memberTypeFilter) "; + // $whereParts[] = " T.member IN (SELECT id FROM " . GLM_MEMBERS_PLUGIN_DB_PREFIX . "members where member_type = $memberTypeFilter) "; + $whereParts[] = " T.member_type = $memberTypeFilter "; $mTypeSelected = $memberTypeFilter; } if ( isset( $_REQUEST['search'] ) && filter_var( $_REQUEST['search'], FILTER_VALIDATE_BOOLEAN ) ) { // Do search - require_once GLM_MEMBERS_PLUGIN_CLASS_PATH . '/data/dataMemberInfo.php'; - $Members = new GlmDataMemberInfo( $this->wpdb, $this->config ); + require_once GLM_MEMBERS_PLUGIN_CLASS_PATH . '/data/dataMembers.php'; + $Members = new GlmDataMembers( $this->wpdb, $this->config ); + // require_once GLM_MEMBERS_PLUGIN_CLASS_PATH . '/data/dataMemberInfo.php'; + // $Members = new GlmDataMemberInfo( $this->wpdb, $this->config ); $where = implode( ' AND ', $whereParts ); // echo '
$where: ' . print_r( $where, true ) . '
'; - $searchResults = $Members->getSimpleMemberInfoList( $where ); + $searchResults = $Members->getList( $where ); + // $searchResults = $Members->getSimpleMemberInfoList( $where ); // echo '
$searchResults: ' . print_r( $searchResults, true ) . '
'; $where = "T.archived <> true"; @@ -390,7 +394,7 @@ class GlmMembersAdmin_messages_index extends GlmDataEmailMessages require_once GLM_MEMBERS_CONTACTS_PLUGIN_CLASS_PATH . '/data/dataContacts.php'; $Contacts = new GlmDataContacts( $this->wpdb, $this->config ); $whereParts = array(); - $whereParts[] = "T.ref_dest = " . $memData['member_pointer']; + $whereParts[] = "T.ref_dest = " . $memData['id']; $whereParts[] = "T.active = true"; $whereParts[] = "T.email like '%@%'"; $where = implode( " AND ", $whereParts ); diff --git a/views/admin/header.html b/views/admin/header.html index 3be4b60..25b377b 100644 --- a/views/admin/header.html +++ b/views/admin/header.html @@ -1,11 +1,11 @@ -
+
{* Navigation *} -
+
diff --git a/views/admin/messages/index.html b/views/admin/messages/index.html index 9c6bf81..00a79db 100644 --- a/views/admin/messages/index.html +++ b/views/admin/messages/index.html @@ -19,7 +19,7 @@
-
+
Add Message diff --git a/views/admin/messages/list.html b/views/admin/messages/list.html index afface5..5a999ab 100644 --- a/views/admin/messages/list.html +++ b/views/admin/messages/list.html @@ -1,6 +1,8 @@

List Messages

{include file='admin/header.html'} +Add Message + {include file='admin/messages/listMessagesTable.html'} {include file='admin/footer.html'} diff --git a/views/admin/messages/listTemplates.html b/views/admin/messages/listTemplates.html index 7aafa62..663e9ab 100644 --- a/views/admin/messages/listTemplates.html +++ b/views/admin/messages/listTemplates.html @@ -1,6 +1,8 @@

List Messages

{include file='admin/header.html'} +Add Template + diff --git a/views/admin/messages/search.html b/views/admin/messages/search.html index 1b8e624..6256514 100644 --- a/views/admin/messages/search.html +++ b/views/admin/messages/search.html @@ -41,83 +41,84 @@ -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +
+
+

{$terms.term_member_cap} Info

+ + + + +
+
+

{$terms.term_contact_cap} Info

+ + + + + + +
+
+

{$terms.term_member_cap} Profile Info

+ {* Multiselect Search Module. Set the necessary parameters for the element here *} + {assign var="multiSelectFilterID" value="filterCategories"} + {assign var="multiSelectFilterName" value="filterCategories[]"} + {assign var="multiSelectFilterData" value=$categories} + {assign var="multiSelectFilterPlaceholder" value="Filter Categories"} + {assign var="multiSelectFilterSearchTerm" value="Categories"} + {include file='admin/ui/multiSelectSearch.html'} + {* End Multiselect Search Module *} + + + + {* city need data for select *} + + + + + + + +
+ +
+ +
+
+ +
+
- - - -
- {* Multiselect Search Module. Set the necessary parameters for the element here *} - {assign var="multiSelectFilterID" value="filterCategories"} - {assign var="multiSelectFilterName" value="filterCategories[]"} - {assign var="multiSelectFilterData" value=$categories} - {assign var="multiSelectFilterPlaceholder" value="Filter Categories"} - {assign var="multiSelectFilterSearchTerm" value="Categories"} - {include file='admin/ui/multiSelectSearch.html'} - {* End Multiselect Search Module *} -
{$terms.term_member_cap} Type - -
{$terms.term_member_cap} Profile Status - -
{$terms.term_member_cap} Access - -
{$terms.term_member_cap} Name - -
Contact Email - -
Contact First Name - -
Contact Last Name - -
- -
{/if} @@ -131,8 +132,8 @@ {foreach $searchResults as $member} - {$member.member_pointer} - {$member.member_name} + {$member.id} + {$member.name} {/foreach} -- 2.17.1