From: Chuck Scott Date: Wed, 16 Dec 2015 21:59:27 +0000 (-0500) Subject: Updated things to better support packaging X-Git-Tag: v1.0.51^2~1 X-Git-Url: http://cvs2.gaslightmedia.com/gitweb/?a=commitdiff_plain;h=be43a1e4ae09c77a748f4576655435907e690a7d;p=WP-Plugins%2Fglm-member-db.git Updated things to better support packaging --- diff --git a/classes/data/dataMemberInfo.php b/classes/data/dataMemberInfo.php index 5c92f33d..66b1c62d 100644 --- a/classes/data/dataMemberInfo.php +++ b/classes/data/dataMemberInfo.php @@ -48,6 +48,13 @@ class GlmDataMemberInfo extends GlmDataAbstract * @access public */ public $table; + /** + * Do Post Processing flag + * + * @var $doPostProcessing + * @access public + */ + public $doPostProcessing = true; /** * Field definitions @@ -336,35 +343,6 @@ class GlmDataMemberInfo extends GlmDataAbstract } - /* - * Find the active member info record for a specific member ID - * - * @param integer $member ID of the member name - * @param string $where Optional WHERE clause for query - * - * @return integer Member info record ID or false if not found - */ - public function getActiveInfoForMember($member, $where = 'true') { - - $memberID = $member - 0; - - $sql = " - SELECT T.id - FROM ".GLM_MEMBERS_PLUGIN_DB_PREFIX. "member_info T - WHERE $where - AND member = $memberID - AND status = ".$this->config['status_numb']['Active']." - ;"; - $memberInfo = $this->wpdb->get_row($sql, ARRAY_A); - - if ($memberInfo) { - return $memberInfo['id']; - } - - return false; - - } - /* * Entry Post Processing Call-Back Method * @@ -383,7 +361,7 @@ class GlmDataMemberInfo extends GlmDataAbstract { // Only run these tests for 'l' (getList), 'g' (getEntry), 'e' (editEntry) - if ($a != 'l' && $a != 'g' && $a != 'e') { + if (!$this->doPostProcessing || ($a != 'l' && $a != 'g' && $a != 'e')) { return $r; } @@ -419,6 +397,90 @@ class GlmDataMemberInfo extends GlmDataAbstract return $r; } + /* + * Find the active member info record for a specific member ID + * + * @param integer $member ID of the member name + * @param string $where Optional WHERE clause for query + * + * @return integer Member info record ID or false if not found + */ + public function getActiveInfoForMember($member, $where = 'true') { + + $memberID = $member - 0; + + $sql = " + SELECT T.id + FROM ".GLM_MEMBERS_PLUGIN_DB_PREFIX. "member_info T + WHERE $where + AND member = $memberID + AND status = ".$this->config['status_numb']['Active']." + ;"; + $memberInfo = $this->wpdb->get_row($sql, ARRAY_A); + + if ($memberInfo) { + return $memberInfo['id']; + } + + return false; + + } + + /* + * Gets member name, address, phones, and E-Mail only from the + * currently active member info record. + * + * @param integer $memberID ID of the member + * + * @return integer Member info or false if fail + */ + public function getActiveInfoSimplified($member) { + + // Get the ID for the current info record for this member + $mInfoID = $this->getActiveInfoForMember($member); + if (!$mInfoID) { + return false; + } + + // Save current list of fields + $f = $this->fields; + + // Replace fields list with limited list - Result will still use original field names + $this->fields = array( + 'member' => $f['member'], + 'member_name' => $f['member_name'], + 'member_slug' => $f['member_slug'], + 'member_pointer' => $f['member_pointer'], + 'member_addr1' => $f['addr1'], + 'member_addr2' => $f['addr2'], + 'member_city' => $f['city'], + 'member_state' => $f['state'], + 'member_country' => $f['country'], + 'member_zip' => $f['zip'], + 'member_phone' => $f['phone'], + 'member_toll_free' => $f['toll_free'], + 'member_email' => $f['email'], + 'member_url' => $f['url'], + 'member_logo' => $f['logo'] + ); + + // Save current post processing flag and turn it off + $dpp = $this->doPostProcessing; + $this->doPostProcessing = false; + + // Get the current member info data + $mInfo = $this->getEntry($mInfoID); + + // Restore previous post processing flag + $this->doPostProcessign = $dpp; + + // Restore full fields list + $this->fields = $f; + + return $mInfo; + + } + /* * Get Apha list of first characters in member name * for those members that have active info. diff --git a/defines.php b/defines.php index 9186de5f..bd024157 100644 --- a/defines.php +++ b/defines.php @@ -11,6 +11,9 @@ define('GLM_MEMBERS_PLUGIN_NAME', 'Gaslight Media Member Database'); define('GLM_MEMBERS_PLUGIN_SHORT_NAME', 'GLM Member DB'); define('GLM_MEMBERS_PLUGIN_SLUG', 'glm-member-db'); +// Enable to display smarty template debug. +define('GLM_MEMBERS_PLUGIN_DEBUG_SMARTY', false); + // Determine which system we're running on - If not provided, assume PRODUCTION $host = getenv('GLM_HOST_ID'); if (trim($host) == '') { diff --git a/lib/smartyTemplateSupport.php b/lib/smartyTemplateSupport.php index f67015b7..2f5ce808 100644 --- a/lib/smartyTemplateSupport.php +++ b/lib/smartyTemplateSupport.php @@ -60,7 +60,7 @@ class smartyTemplateSupport { /* * Configure Smarty Templates for this site */ - $this->template->debugging = false; + $this->template->debugging = GLM_MEMBERS_PLUGIN_DEBUG_SMARTY; $this->template->setTemplateDir ( GLM_MEMBERS_PLUGIN_PATH . '/views' ); $this->template->setCompileDir ( GLM_MEMBERS_PLUGIN_PATH . '/misc/smarty/templates_c' ); $this->template->setCacheDir ( GLM_MEMBERS_PLUGIN_PATH . '/misc/smarty/cache' ); diff --git a/views/front/members/list.html b/views/front/members/list.html index 6964129a..8e935ae1 100644 --- a/views/front/members/list.html +++ b/views/front/members/list.html @@ -87,7 +87,7 @@
{else} -

+

{/if}