wrapping up the Add New Member and Profile update implementation in the ajax environment
authorAnthony Talarico <talarico@gaslightmedia.com>
Sun, 3 Mar 2019 17:07:44 +0000 (12:07 -0500)
committerAnthony Talarico <talarico@gaslightmedia.com>
Sun, 3 Mar 2019 17:07:44 +0000 (12:07 -0500)
models/admin/ajax/memberManagement.php
models/admin/member/memberInfo.php
views/admin/manageDashboard/edit.html
views/admin/manageDashboard/index.html
views/admin/member/memberEdit.html
views/admin/member/memberInfo.html
views/admin/member/memberInfo/editCategory.html
views/admin/newDashboard/index.html

index d5ba7aa..905cfd4 100644 (file)
@@ -107,8 +107,8 @@ class GlmMembersAdmin_ajax_memberManagement extends glmMembersAdmin
         }
 
 
-        if($_REQUEST['option'] == 'submit'){
-            //$support->write_log($_REQUEST);
+        if($_REQUEST['model'] == 'memberProfile' ){
+            // $support->write_log($_REQUEST);
             foreach($_REQUEST['form'] as $form=>$field){
                 preg_match_all("/\\[(.*?)\\]/", $field['name'], $match); 
                 if(isset($match[1][0])) $id = $match[1][0];
index a8fcbbb..0e0c943 100755 (executable)
@@ -305,6 +305,7 @@ class GlmMembersAdmin_member_memberInfo extends GlmDataMemberInfo
         /*
          * Perform requested action
          */
+        $support = new glmPluginSupport();
         switch ($option) {
 
             // Setup to input a new member information record
@@ -317,7 +318,6 @@ class GlmMembersAdmin_member_memberInfo extends GlmDataMemberInfo
             // Process submission of a member information record update
             case 'submit':
                 $support = new glmPluginSupport();
-                // $support->write_log($_REQUEST);
                 // Check for new cities being submitted
                 $this->checkNewCities();
 
@@ -347,7 +347,7 @@ class GlmMembersAdmin_member_memberInfo extends GlmDataMemberInfo
                 if ($this->haveMemberInfo) {
                     
                     // Update the member Info data
-                    //$support->write_log( $_REQUEST );
+                    
                     $this->memberInfo = $this->updateEntry($this->memberInfoID, 'id', true);
                     if ($this->memberInfo['status']) {
                         $customFieldResults = apply_filters( 'glm-member-db-save-custom-fields', $this->memberInfoID );
@@ -373,12 +373,12 @@ class GlmMembersAdmin_member_memberInfo extends GlmDataMemberInfo
 
             // Add the new member information record
             case 'addNew':
-                
+
                 // Insert the new member info into the database
                 $this->memberName = $this->memberData['name'];
                 $this->memberInfo = $this->insertEntry();
+     
                 if ($this->memberInfo['status']) {
-
                     $this->memberInfoID = $this->memberInfo['fieldData']['id'];
                     $this->haveMemberInfo = true;
                     $memberUpdated = true;
@@ -645,6 +645,7 @@ class GlmMembersAdmin_member_memberInfo extends GlmDataMemberInfo
         $selectedCategories = array();
         $newCategory = false;
 
+        
         if (isset($_REQUEST['category']) && is_array($_REQUEST['category']) && count($_REQUEST['category']) > 0) {
 
             /*
index e7915e5..4d44db5 100644 (file)
         <div>
             <h3 class="glm-left">{$terms.term_member_cap} Profile Versions</h3>
             <span class="glm-right">
-                <a id="add-new-profile" href="{$thisUrl}?page={$thisPage}&glm_action=memberInfo&member={$memberID}" class="button button-primary glm-button glm-right">Add New {$terms.term_member_cap} Profile Version</a>
+                <a id="add-new-profile" href="{$thisUrl}?page={$thisPage}&glm_action=memberInfo&member={$memberID}" class="glm-admin-profile-edit button button-primary glm-button glm-right">Add New {$terms.term_member_cap} Profile Version</a>
             </span>
 
             <label class="glm-admin-show-archived-container">
             <tr class="alternate{if $m.status.name == 'Active'} glm-admin-table-active{/if}">
           {/if}
                 <td>
-                    <a id="edit-member-profile" href="{$thisUrl}?page={$thisPage}&glm_action=memberInfo&member={$memberID}&memberInfo={$m.id}"{if $m.status.value == $statusPending} class="glm-notice"{/if} data-memberInfo={$m.id}>
+                    <a href="{$thisUrl}?page={$thisPage}&glm_action=memberInfo&member={$memberID}&memberInfo={$m.id}" class="edit-member-profile {if $m.status.value == $statusPending} glm-notice edit-member-profile{/if} " data-memberInfo={$m.id}>
                         Edit {if $m.status.name == 'Active'}Current{else}{$m.status.name}{/if} Profile
                     </a>
                 </td>
          {/if}
         {/foreach}
       {else} <!-- haveInfoRecords -->
-            <tr><td colspan="5"><a href="{$thisUrl}?page={$thisPage}&glm_action=memberInfo&member={$memberID}">Click here to start entering information for this {$terms.term_member}.</a></td></tr>
+            <tr><td colspan="5"><a class="glm-admin-profile-edit" href="{$thisUrl}?page={$thisPage}&glm_action=memberInfo&member={$memberID}">Click here to start entering information for this {$terms.term_member}.</a></td></tr>
       {/if}
         </tbody>
     </table>
index 92bfbfc..bbb58a4 100644 (file)
         }
         $(document).on("click",".member-record-name", memberRecordHandler(editData));
 
-        $(document).on("click","#edit-member-profile",function(e){
+        $(document).on("click",".edit-member-profile",function(e){
             e.preventDefault();
             $(".edit-screen").html('');
             editData.option     = "edit";
             editData.memberInfo = $(this).data("memberinfo");
             editData.member     = memberID;
-            
+            editData.model      = "memberInfo";
             Glma.manageMember(
                 editData,
                 function(complete) {},
                 "POST"
             );
         });
-        $(document).on("click", "#add-new-profile", function(e){
+        $(document).on("click", ".glm-admin-profile-edit", function(e){
             e.preventDefault();
             $(".edit-screen").html('');
             editData.option     = "addNew";
             editData.member     = memberID;
+            editData.model      = "memberInfo";
             Glma.manageMember(
                 editData,
                 function(complete) {},
                 e.preventDefault();
                 var form = $("#member-info-form");
                 var fileForm = new FormData(form[0]);
+                var option = form.find( $("#glm-admin-option") ).val();
                 fileForm.set("action",'glm_members_admin_ajax');
                 fileForm.set("glm_action" , 'memberManagement');
-                fileForm.set("option" ,"submit");
+                fileForm.set("option" ,option);
+                fileForm.set("model" ,"memberProfile");
+                console.log(form);
                 window.Glma.manageMember(
                     fileForm,
                     function(complete) {},
index acf5010..389eb70 100644 (file)
@@ -19,7 +19,7 @@
       <form id="member-edit-form" action="{$thisUrl}?page={$thisPage}" method="post" enctype="multipart/form-data">
           <input type="hidden" name="glm_action" value="memberEdit">
         {if $addingMember}
-          <input type="hidden" name="option" value="addNew">
+          <input id="glm-admin-option" type="hidden" name="option" value="addNew">
           <input type="hidden" name="created" value="today">
         {else}
           <input type="hidden" name="option" value="submit">
index a2632da..ace01c4 100755 (executable)
@@ -82,7 +82,7 @@
         <input type="hidden" name="memberInfo" value="{$memberInfo.fieldData.id}">
         <input type="hidden" name="modify_time" value="now">
       {else}
-        <input type="hidden" name="option" value="addNew">
+        <input id="glm-admin-option" type="hidden" name="option" value="addNew">
         <input type="hidden" name="create_time" value="now">
       {/if}
       {if !$settings.enable_counties}
index a227e80..d700a4e 100644 (file)
@@ -66,7 +66,7 @@
                             {if apply_filters('glm_members_menu_members', true)}                            
                             <span data-id="{$c.id}" class="glm-dynSelect-delete catDelete">X</span>
                             {/if}                            
-                            <input type="hidden" name="category[{$c.id}]" value="{$c.id}">
+                            <input id="glm-admin-profile-categories" type="hidden" name="category[{$c.id}]" value="{$c.id}">
                         </div>                    
                         {/foreach}
                     {/if}                    
index 6e63966..80836b3 100644 (file)
@@ -30,7 +30,7 @@
             edge        : 'right',
             outDuration        : 400
         });
-        $(document).on("click","#edit-member-profile",function(e){
+        $(document).on("click",".edit-member-profile",function(e){
             e.preventDefault();
             let editData = {
                 action          : 'glm_members_admin_ajax',