From c169e580486796897a1e13aed5ae5edc9dc23ec3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Petr=20S=CC=8Ckoda?= Date: Thu, 10 Oct 2013 09:09:17 +0200 Subject: [PATCH] MDL-42243 fix filter settings regression and support standard settings.php --- filter/censor/{filtersettings.php => settings.php} | 0 filter/emoticon/{filtersettings.php => settings.php} | 0 filter/multilang/{filtersettings.php => settings.php} | 0 filter/tex/{filtersettings.php => settings.php} | 0 filter/upgrade.txt | 4 ++++ filter/urltolink/{filtersettings.php => settings.php} | 0 lib/classes/plugininfo/filter.php | 11 +++++++++-- lib/filterlib.php | 4 ++++ 8 files changed, 17 insertions(+), 2 deletions(-) rename filter/censor/{filtersettings.php => settings.php} (100%) rename filter/emoticon/{filtersettings.php => settings.php} (100%) rename filter/multilang/{filtersettings.php => settings.php} (100%) rename filter/tex/{filtersettings.php => settings.php} (100%) rename filter/urltolink/{filtersettings.php => settings.php} (100%) diff --git a/filter/censor/filtersettings.php b/filter/censor/settings.php similarity index 100% rename from filter/censor/filtersettings.php rename to filter/censor/settings.php diff --git a/filter/emoticon/filtersettings.php b/filter/emoticon/settings.php similarity index 100% rename from filter/emoticon/filtersettings.php rename to filter/emoticon/settings.php diff --git a/filter/multilang/filtersettings.php b/filter/multilang/settings.php similarity index 100% rename from filter/multilang/filtersettings.php rename to filter/multilang/settings.php diff --git a/filter/tex/filtersettings.php b/filter/tex/settings.php similarity index 100% rename from filter/tex/filtersettings.php rename to filter/tex/settings.php diff --git a/filter/upgrade.txt b/filter/upgrade.txt index 99cffdd357c..8ece7688180 100644 --- a/filter/upgrade.txt +++ b/filter/upgrade.txt @@ -1,6 +1,10 @@ This file describes API changes in core filter API and plugins, information provided here is intended especially for developers. +=== 2.6 === + +* filtersettings.php is now deprecated, migrate to standard settings.php + === 2.5 === * legacy_filter emulation was removed diff --git a/filter/urltolink/filtersettings.php b/filter/urltolink/settings.php similarity index 100% rename from filter/urltolink/filtersettings.php rename to filter/urltolink/settings.php diff --git a/lib/classes/plugininfo/filter.php b/lib/classes/plugininfo/filter.php index 7cf227e2a43..6eb4338f864 100644 --- a/lib/classes/plugininfo/filter.php +++ b/lib/classes/plugininfo/filter.php @@ -71,13 +71,20 @@ class filter extends base { return; } - if (!$hassiteconfig or !file_exists($this->full_path('settings.php'))) { + if (!$hassiteconfig) { + return; + } + if (file_exists($this->full_path('settings.php'))) { + $fullpath = $this->full_path('settings.php'); + } else if (file_exists($this->full_path('filtersettings.php'))) { + $fullpath = $this->full_path('filtersettings.php'); + } else { return; } $section = $this->get_settings_section_name(); $settings = new admin_settingpage($section, $this->displayname, 'moodle/site:config', $this->is_enabled() === false); - include($this->full_path('filtersettings.php')); // This may also set $settings to null. + include($fullpath); // This may also set $settings to null. if ($settings) { $ADMIN->add($parentnodename, $settings); diff --git a/lib/filterlib.php b/lib/filterlib.php index 0438c21978b..a93a74b87b1 100644 --- a/lib/filterlib.php +++ b/lib/filterlib.php @@ -1124,6 +1124,10 @@ function filter_delete_all_for_context($contextid) { */ function filter_has_global_settings($filter) { global $CFG; + $settingspath = $CFG->dirroot . '/filter/' . $filter . '/settings.php'; + if (is_readable($settingspath)) { + return true; + } $settingspath = $CFG->dirroot . '/filter/' . $filter . '/filtersettings.php'; return is_readable($settingspath); }