Updating the custom field integration for management.
authorSteve Sutton <steve@gaslightmedia.com>
Tue, 17 Oct 2017 16:06:47 +0000 (12:06 -0400)
committerSteve Sutton <steve@gaslightmedia.com>
Tue, 17 Oct 2017 16:07:25 +0000 (12:07 -0400)
Update the controller in admin to return output as string if needed.

controllers/admin.php
models/admin/management/import.php
views/admin/management/custom.html [new file with mode: 0644]
views/admin/management/import.html
views/admin/management/memberHeader.html [new file with mode: 0644]

index cdb39ba..7c34740 100644 (file)
@@ -673,7 +673,7 @@ class glmMembersAdmin extends GlmPluginSupport
      * @return void
      * @access public
      */
-    public function controller ($menuItem, $action = false, $actionData = false)
+    public function controller( $menuItem, $action = false, $actionData = false, $returnOutput = false )
     {
 
         // Enque admin scripts and css here so that only happens when we're doing something
@@ -995,7 +995,11 @@ class glmMembersAdmin extends GlmPluginSupport
         $smarty->template->addTemplateDir($viewPath);
 
         // Generate output from model data and view
-        $smarty->template->display($viewFile);
+        if ( $returnOutput ) {
+            $output = $smarty->template->fetch( $viewFile );
+        } else {
+            $smarty->template->display( $viewFile );
+        }
 
         // If debug is requested, create debug window
         if (GLM_MEMBERS_PLUGIN_ADMIN_DEBUG) {
@@ -1009,6 +1013,10 @@ class glmMembersAdmin extends GlmPluginSupport
         // Restore timezone that was set before our code was called
         date_default_timezone_set($defaultTimeZone);
 
+        if ( $returnOutput ) {
+            return $output;
+        }
+
     }
 
 }
index 1c2a7d9..c49b128 100644 (file)
@@ -92,8 +92,10 @@ class GlmMembersAdmin_management_import
      */
     public function modelAction ($actionData = false)
     {
-
-        $templateData = array('haveImageArray' => false);
+        $templateData = array(
+            'haveImageArray' => false,
+            'thisOption'     => '',
+        );
 
         $imageBaseURL = get_option( 'glm-member-db-import-imageurl', false );
         $image        = get_option( 'glm-member-db-import-image', false );
@@ -178,8 +180,13 @@ class GlmMembersAdmin_management_import
                 require GLM_MEMBERS_PLUGIN_PATH.'/models/admin/management/import/brewbakersBrands.php';
                 break;
 
-            default:
+            case 'customfields':
+                $requestedView = 'custom.html';
+                $templateData['content']    = apply_filters( 'glm-members-customfields-edit', '', 'members' );
+                $templateData['thisOption'] = $option;
+                break;
 
+            default:
                 break;
 
         }
diff --git a/views/admin/management/custom.html b/views/admin/management/custom.html
new file mode 100644 (file)
index 0000000..15b35a3
--- /dev/null
@@ -0,0 +1,6 @@
+{include file='admin/management/header.html'}
+{include file='admin/management/memberHeader.html'}
+
+{$content}
+
+{include file='admin/footer.html'}
index 115d1f6..9e2b9a0 100644 (file)
@@ -1,5 +1,7 @@
 {include file='admin/management/header.html'}
 
+{include file='admin/management/memberHeader.html'}
+
     <h2>Data Import Step 1: Supply database access information.</h2>
 {if isset($genError)}
     <p>
diff --git a/views/admin/management/memberHeader.html b/views/admin/management/memberHeader.html
new file mode 100644 (file)
index 0000000..90631b6
--- /dev/null
@@ -0,0 +1,7 @@
+<h2 class="nav-tab-wrapper">
+    <a href="{$thisUrl}?page={$thisPage}&glm_action=import" class="nav-tab{if $thisOption == ''} nav-tab-active{/if}">Import Members</a>
+    {if apply_filters( 'glm-members-customfields-active', false )}
+        <a href="{$thisUrl}?page={$thisPage}&glm_action=import&option=customfields" class="nav-tab{if $thisOption == 'customfields'} nav-tab-active{/if}">Custom Fields</a>
+    {/if}
+</h2>
+