From 24e68b42b4336ef8a481e1a452285810da6e25fc Mon Sep 17 00:00:00 2001 From: Steve Sutton Date: Fri, 31 May 2019 16:43:00 -0400 Subject: [PATCH] Adding more to the search Apply the new fields in the search. Add media to email edit page. --- models/admin/messages/index.php | 50 ++++++++++++++++++-- models/admin/messages/sendMessagesEmails.php | 13 +++-- views/admin/messages/editHtmlEmail.html | 2 +- views/admin/messages/search.html | 50 +++++++++++++++++++- 4 files changed, 107 insertions(+), 8 deletions(-) diff --git a/models/admin/messages/index.php b/models/admin/messages/index.php index 12b47a9..b7c00f6 100644 --- a/models/admin/messages/index.php +++ b/models/admin/messages/index.php @@ -118,13 +118,13 @@ class GlmMembersAdmin_messages_index extends GlmDataEmailMessages switch ( $option ) { case 'search': + // echo '
$this->config: ' . print_r( $this->config, true ) . '
'; $view = 'search'; $searchResults = array(); $messages = array(); $mTypeSelected = false; - $whereParts = array( - "T.status != " . $this->config['status_numb']['Archived'] - ); + $whereParts = array(); + $catsToUse = array(); wp_enqueue_style( 'select2','https://cdnjs.cloudflare.com/ajax/libs/select2/4.0.6-rc.0/css/select2.min.css' ); wp_enqueue_script( 'select2js', 'https://cdnjs.cloudflare.com/ajax/libs/select2/4.0.6-rc.0/js/select2.min.js' ); @@ -136,6 +136,48 @@ 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; + } else { + $whereParts[] = "T.status != " . $this->config['status_numb']['Archived']; + } + + 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.")"; + } + 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%' + )"; + } + 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 ( + SELECT DISTINCT( ref_dest ) + FROM " . GLM_MEMBERS_CONTACTS_PLUGIN_DB_PREFIX . "contacts + WHERE email like '%$textSearch%' + )"; + } + 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 ( + SELECT DISTINCT( ref_dest ) + FROM " . GLM_MEMBERS_CONTACTS_PLUGIN_DB_PREFIX . "contacts + WHERE fname like '%$textSearch%' + )"; + } + 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 ( + SELECT DISTINCT( ref_dest ) + FROM " . GLM_MEMBERS_CONTACTS_PLUGIN_DB_PREFIX . "contacts + WHERE lname like '%$textSearch%' + )"; + } + // 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'].")"; @@ -223,6 +265,8 @@ class GlmMembersAdmin_messages_index extends GlmDataEmailMessages 'categories' => $categories, 'member_types' => $member_types, 'searchResults' => $searchResults, + 'accessTypes' => $this->config['access'], + 'statusTypes' => $this->config['status'], ); break; diff --git a/models/admin/messages/sendMessagesEmails.php b/models/admin/messages/sendMessagesEmails.php index f3094ec..10a55b0 100644 --- a/models/admin/messages/sendMessagesEmails.php +++ b/models/admin/messages/sendMessagesEmails.php @@ -106,7 +106,14 @@ class GlmMembersAdmin_messages_sendMessagesEmails //extends GlmDataRegistrations if ( $emailQueues ) { foreach ( $emailQueues as $email ) { - $this->sendHtmlEmail( $email['from_email'], $email['to_email'], $email['subject'], $email['message_body'], $email['reply_to_email'] ); + $this->sendHtmlEmail( + $email['from_email'], + $email['to_email'], + $email['subject'], + $email['message_body'], + $email['from_name'], + $email['reply_to_email'] + ); // Update this to processed $this->wpdb->update( GLM_MEMBERS_MESSAGES_PLUGIN_DB_PREFIX . 'email_queue', @@ -171,14 +178,14 @@ class GlmMembersAdmin_messages_sendMessagesEmails //extends GlmDataRegistrations * @access public * @return void */ - public function sendHtmlEmail( $from, $to, $subject, $htmlMessage, $replyTo = null ) + public function sendHtmlEmail( $from, $to, $subject, $htmlMessage, $fromName, $replyTo = null ) { // Set the From name using this wordpress hook. add_filter( 'wp_mail_from_name', function ( $name ) { - return $this->config['settings']['reg_org_name']; + return $fromName; } ); // Send confirmation email, set the content type to allow html by using this filter diff --git a/views/admin/messages/editHtmlEmail.html b/views/admin/messages/editHtmlEmail.html index 5df0869..f9d0568 100644 --- a/views/admin/messages/editHtmlEmail.html +++ b/views/admin/messages/editHtmlEmail.html @@ -45,7 +45,7 @@ $textAreaContent, 'message_body', json_decode('{ - "media_buttons": false, + "media_buttons": true, "quicktags": false, "textarea_name": "message_body", "editor_height": 250 diff --git a/views/admin/messages/search.html b/views/admin/messages/search.html index e7fa420..95084bd 100644 --- a/views/admin/messages/search.html +++ b/views/admin/messages/search.html @@ -36,6 +36,7 @@ {else} + {* Search Form *}
@@ -54,7 +55,7 @@ - Member Type + {$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 + + + + + -- 2.17.1