Update sql for memberInfoid
authorSteve Sutton <steve@gaslightmedia.com>
Thu, 13 Apr 2017 15:48:18 +0000 (11:48 -0400)
committerSteve Sutton <steve@gaslightmedia.com>
Thu, 13 Apr 2017 15:48:18 +0000 (11:48 -0400)
MemberInfoId is what is in the main plugins list view. Because it is
based on the data class for member info. So updating the code here to
get the correct id set for getting member types.

models/front/fields/list.php

index 18a208b..bcb6e93 100644 (file)
@@ -58,16 +58,22 @@ class GlmMembersFront_fields_list extends GlmDataFieldsCustomFields
 
         // get the member id to pass to getList, set the where clause
         if ( isset( $actionData['request']['member'] ) ) {
-            $member_id          = $actionData['request']['member'] - 0;
-            $member_info        = new GlmDataMemberInfo($this->wpdb, $this->config);
-            $member_info_id     = $member_info->getActiveInfoIdForMember($member_id);
+            $member_info_id = $member_id = $actionData['request']['member'] - 0;
+            //$member_info        = new GlmDataMemberInfo($this->wpdb, $this->config);
+            //$member_info_id     = $member_info->getActiveInfoIdForMember($member_id);
 
             $where = "ref_dest = $member_info_id";
 
             $fields_data        = new GlmDataFieldsCustomFieldsData($this->wpdb, $this->config);
             $field_values       = $fields_data->getList($where);
 
-            $sql            = "SELECT mt.name FROM " . GLM_MEMBERS_PLUGIN_DB_PREFIX . "member_type mt, " . GLM_MEMBERS_PLUGIN_DB_PREFIX . "members m WHERE m.id = $member_id AND mt.id = m.member_type";
+            $sql = "
+            SELECT mt.name
+              FROM " . GLM_MEMBERS_PLUGIN_DB_PREFIX . "member_type mt, " . GLM_MEMBERS_PLUGIN_DB_PREFIX . "members m,
+                   " . GLM_MEMBERS_PLUGIN_DB_PREFIX . "member_info mi
+             WHERE mi.member = $member_id
+               AND m.id = mi.member
+               AND mt.id = m.member_type";
             $member_type    = $wpdb->get_var($sql);
 
             if ( isset( $field_values ) &&  is_array( $field_values ) ) {