Fixed reference to member_slug after submit failure. Added read-only member_slug...
authorChuck Scott <cscott@gaslightmedia.com>
Thu, 6 Dec 2018 21:47:49 +0000 (16:47 -0500)
committerChuck Scott <cscott@gaslightmedia.com>
Thu, 6 Dec 2018 21:47:49 +0000 (16:47 -0500)
classes/data/dataMemberInfo.php
models/admin/member/memberInfo.php

index 91bbcf1..d8888a7 100755 (executable)
@@ -183,6 +183,18 @@ class GlmDataMemberInfo extends GlmDataAbstract
                 'use' => 'gle'
             ),
 
+            // Member Slug
+            'member_slug_view_only' => array (
+                'field' => 'member',
+                'as' => 'member_slug',
+                'type' => 'pointer',
+                    'p_table' => GLM_MEMBERS_PLUGIN_DB_PREFIX . 'members',
+                    'p_field' => 'member_slug',
+                    'p_static' => true,
+                'view_only' => true,
+                'use' => 'u'
+            ),
+
             // Member Featured
             'featured' => array (
                 'field' => 'member',
index 0cfd7eb..d3a8f95 100755 (executable)
@@ -508,16 +508,17 @@ class GlmMembersAdmin_member_memberInfo extends GlmDataMemberInfo
         }
 
         // Check if the member should be indexed, reindexed or be removed from search results
-        $nowActive = $this->isActive();
-        $url = GLM_MEMBERS_SITE_BASE_URL.$this->config['settings']['canonical_member_page'].'/'.$this->memberInfo['fieldData']['member_slug'].'/';
-        if ($nowActive && $memberUpdated) {
-            $result = apply_filters( 'glm_member_db_common_search_indexurl', $url );
-        }
-        if (!$activeTest && $this->isActive) {
-            $result = apply_filters( 'glm_member_db_common_search_removeurl', $url );
+        if ($this->memberInfoID && is_array($this->memberInfo)) {
+            $nowActive = $this->isActive();
+            $url = GLM_MEMBERS_SITE_BASE_URL.$this->config['settings']['canonical_member_page'].'/'.$this->memberInfo['fieldData']['member_slug'].'/';
+            if ($nowActive && $memberUpdated) {
+                $result = apply_filters( 'glm_member_db_common_search_indexurl', $url );
+            }
+            if (!$activeTest && $this->isActive) {
+                $result = apply_filters( 'glm_member_db_common_search_removeurl', $url );
+            }
         }
 
-
         // If have member then store the current member ID for later reference
         if ($this->memberID) {
             update_option('glmMembersDatabaseMemberID', $this->memberID);