can add, edit, delete category names in the standalone events menu
authorAnthony Talarico <talarico@gaslightmedia.com>
Thu, 3 Mar 2016 20:31:10 +0000 (15:31 -0500)
committerAnthony Talarico <talarico@gaslightmedia.com>
Thu, 3 Mar 2016 20:31:10 +0000 (15:31 -0500)
js/admin.js
models/admin/events/categories.php
views/admin/events/categories.html

index faaa1b6..1a988b6 100644 (file)
@@ -51,5 +51,9 @@ jQuery(document).ready( function () {
             jQuery("#eventAdminDetails").slideUp(600) ;
         }
     });
+    
+    function deleteCat(form){
+        alert("test");
+    }
 });
 
index a067bf4..6160d12 100644 (file)
@@ -103,6 +103,7 @@ class GlmMembersAdmin_events_categories  extends GlmDataEventsCategories
     public function modelAction($actionData = false)
     {
 
+        $table = GLM_MEMBERS_EVENTS_PLUGIN_DB_PREFIX;
         $displayData = 'Welcome to more information!<br>This is the Events Add-On "events" model with action "more" talking to you from inside WordPress.';
         $Categories = new GlmDataEventsCategories($this->wpdb, $this->config);
         $categoriesStats = $Categories->getStats();
@@ -125,6 +126,7 @@ class GlmMembersAdmin_events_categories  extends GlmDataEventsCategories
         }
         // checking if the save action is performed to save an edited name field
         if($_REQUEST['save'] == 'save'){
+            
             $catField = array_filter($_REQUEST, function($k) {
                 return preg_match('/^cat/',$k);
             }, ARRAY_FILTER_USE_KEY);
@@ -133,7 +135,6 @@ class GlmMembersAdmin_events_categories  extends GlmDataEventsCategories
                 $title = trim(filter_var($cat,FILTER_SANITIZE_STRING));
             }
           
-            $table = GLM_MEMBERS_EVENTS_PLUGIN_DB_PREFIX;
             
              // get ID of selected category
              $sql = "SELECT id
@@ -180,15 +181,21 @@ class GlmMembersAdmin_events_categories  extends GlmDataEventsCategories
     
         // Delete a category entry //////////////////////////////
         if($_REQUEST['delete'] == 'delete'){
+           $catField = array_filter($_REQUEST, function($k) {
+                return preg_match('/^cat/',$k);
+            }, ARRAY_FILTER_USE_KEY);
             
-
+            foreach($catField as $cat){
+                $title = trim(filter_var($cat,FILTER_SANITIZE_STRING));
+            }
+            // get ID of selected category
+             $sql = "DELETE FROM " . $table . "categories
+                     WHERE name = " . "'$title'". "
+                     ;";
+                   $this->wpdb->query($sql);
         }
         
         
-        
-        
-        
-        
          // Compile template data
         $templateData = array(
             'displayData' => $displayData,
index a088b32..165646c 100644 (file)
             <table>
                 <tr>                           
                     <td><input readonly name='catListField{$val}' class="catField" value="{$category}"><input class="edit" type="text" id="edit{$val}" name="edit{$val}"></td>
-                    <td><input class="button glm-button" onclick="form{$val}.submit();" type="button" value="Save"><input type="hidden" name="save" value="save"></td>
-                    <td><input class="button glm-button submit" type="button" value="Delete "><input type="hidden" name="delete" value="delete"></td>
+                    <td><input class="button glm-button" onclick="saveCat(this.form)" type="button" value="Save"><input class="save" type="hidden" name="save" value="save"></td>
+                    <td><input class="button glm-button" type="button" onclick="deleteCat(this.form)" value="Delete "><input class='delete' type="hidden" name="delete" value="delete"></td>
                 </tr>
             </table>          
         </form>
     </div>
  {assign var=val value=$val+1}
  {/foreach}
+ <script>
+     function deleteCat(form){
+         var save = document.getElementsByClassName('save');
+         for(var i = 0; i < save.length; i++){
+             save[i].setAttribute("value", 'null');
+         }
+         form.submit();
+         window.location = window.location.href;
+     }
+     function saveCat(form){
+         var remove = document.getElementsByClassName('delete');
+          for(var i = 0; i < remove.length; i++){
+             remove[i].setAttribute("value", 'null');
+         }
+         form.submit();
+     }
+</script>
\ No newline at end of file