]> git.mjollnir.org Git - moodle.git/commitdiff
filters: MDL-7336 finish implementing delete on the admin page
authortjhunt <tjhunt>
Mon, 13 Apr 2009 07:15:19 +0000 (07:15 +0000)
committertjhunt <tjhunt>
Mon, 13 Apr 2009 07:15:19 +0000 (07:15 +0000)
admin/filters.php
lib/adminlib.php

index 4d5c8073ea24bd262e7c12f2f77d640818ceb3d9..7bab93c050841366628b6464a224e792f0debd83 100644 (file)
         break;
 
     case 'delete':
-        $filtername = $fitlernames[$filterpath];
+        if (!empty($filternames[$filterpath])) {
+            $filtername = $filternames[$filterpath];
+        } else {
+            $filtername = $filterpath;
+        }
+
         if (substr($filterpath, 0, 4) == 'mod/') {
             $mod = basename($filterpath);
             $a = new stdClass;
             $title = get_string('deletefilterareyousure', 'admin', $filtername);
             print_header($title, $title);
             print_heading($title);
-            notice_yesno(get_string('deletefilterareyousuremessage', 'admin', $filtername),
-                    admin_url('filters.php?action=delete&amp;filterpath=' . $delete . '&amp;confirm=1&amp;sesskey=' . sesskey()),
-                    $returnurl, NULL, NULL, 'post', 'get');
+            notice_yesno(get_string('deletefilterareyousuremessage', 'admin', $filtername), $CFG->wwwroot . '/' . $CFG->admin .
+                    '/filters.php?action=delete&amp;filterpath=' . $filterpath . '&amp;confirm=1&amp;sesskey=' . sesskey(),
+                    "$CFG->wwwroot/$CFG->admin/settings.php", NULL, array('section' => 'managefilters'), 'post', 'get');
             print_footer('empty');
             exit;
         }
         filter_delete_all_data($filterpath);
 
         $a = new stdClass;
-        $a->fitler = $filtername;
-        $a->directory = $filterparth;
+        $a->filter = $filtername;
+        $a->directory = $filterpath;
         print_box(get_string('deletefilterfiles', 'admin', $a), 'generalbox', 'notice');
         print_continue($returnurl);
-        admin_externalpage_print_footer();
+        print_footer('empty');
         exit;
     }
 
index d3d90e891bdc681bd15e954b23bcc1c0ae933dbc..a5b3d6b1a42f0f1ff4581b6966b43f025ff14cc4 100644 (file)
@@ -3753,7 +3753,11 @@ class admin_setting_managefilters extends admin_setting {
         $filter = $filterinfo->filter;
 
         // Filter name
-        $row[] = $this->filternames[$filter];
+        if (!empty($this->filternames[$filter])) {
+            $row[] = $this->filternames[$filter];
+        } else {
+            $row[] = '<span class="error">' . get_string('filemissing', '', $filter) . '</span>';
+        }
 
         // Disable/off/on
         $row[] = popup_form($this->action_url($filter, 'setstate') . '&amp;newstate=', $this->activechoices,
@@ -3789,6 +3793,9 @@ class admin_setting_managefilters extends admin_setting {
         }
         $row[] = $settings;
 
+        // Delete
+        $row[] = '<a href="' . $this->action_url($filter, 'delete') . '">' . $this->strdelete . '</a>';
+
         return $row;
     }
 
@@ -3807,6 +3814,7 @@ class admin_setting_managefilters extends admin_setting {
         $this->strup = get_string('up');
         $this->strdown = get_string('down');
         $this->strsettings = get_string('settings');
+        $this->strdelete = get_string('delete');
 
         $filters = filter_get_global_states();
 
@@ -3823,7 +3831,7 @@ class admin_setting_managefilters extends admin_setting {
 
         $table = new object();
         $table->head  = array(get_string('filter'), get_string('isactive', 'filters'),
-                get_string('order'), get_string('applyto', 'filters'), $this->strsettings);
+                get_string('order'), get_string('applyto', 'filters'), $this->strsettings, $this->strdelete);
         $table->align = array('left', 'left', 'center', 'left', 'left');
         $table->width = '100%';
         $table->data  = array();