MDL-35661 Removed function plugininfo_local::get_settings_url() introduced in MDL...
authorMarina Glancy <marina@moodle.com>
Thu, 27 Sep 2012 02:18:07 +0000 (10:18 +0800)
committerMarina Glancy <marina@moodle.com>
Tue, 9 Oct 2012 01:57:59 +0000 (09:57 +0800)
Local plugins do not create settings node with particular name, there is no standard way to
return the settings url

admin/settings/plugins.php
lib/pluginlib.php

index 42ab58d..596176f 100644 (file)
@@ -402,6 +402,8 @@ if ($hassiteconfig) {
                                                         $CFG->wwwroot . '/' . $CFG->admin . '/localplugins.php'));
 }
 
+// extend settings for each local plugin. Note that their settings may be in any part of the
+// settings tree and may be visible not only for administrators. We can not use $allplugins here
 foreach (get_plugin_list('local') as $plugin => $plugindir) {
     $settings_path = "$plugindir/settings.php";
     if (file_exists($settings_path)) {
index 910686c..6d120b4 100644 (file)
@@ -2709,14 +2709,6 @@ class plugininfo_local extends plugininfo_base {
     public function get_uninstall_url() {
         return new moodle_url('/admin/localplugins.php', array('delete' => $this->name, 'sesskey' => sesskey()));
     }
-
-    public function get_settings_url() {
-        if (file_exists($this->full_path('settings.php'))) {
-            return new moodle_url('/admin/settings.php', array('section' => 'local_' . $this->name));
-        } else {
-            return parent::get_settings_url();
-        }
-    }
 }
 
 /**