. /** * Tiny subplugin management. * * @package editor_tinymce * @copyright 2023 Andrew Lyons * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later */ require(__DIR__ . '/../../../config.php'); require_once("{$CFG->libdir}/adminlib.php"); $action = optional_param('action', '', PARAM_ALPHA); $plugin = optional_param('plugin', '', PARAM_PLUGIN); $PAGE->set_context(context_system::instance()); $PAGE->set_url('/lib/editor/tinymce/subplugins.php'); require_login(); require_capability('moodle/site:config', context_system::instance()); require_sesskey(); $tinymanager = \core_plugin_manager::resolve_plugininfo_class('tiny'); $pluginname = get_string('pluginname', "tiny_{$plugin}"); switch ($action) { case 'disable': if ($tinymanager::enable_plugin($plugin, 0)) { \core\notification::add( get_string('plugin_disabled', 'editor_tiny', $pluginname), \core\notification::SUCCESS ); } break; case 'enable': if ($tinymanager::enable_plugin($plugin, 1)) { \core\notification::add( get_string('plugin_enabled', 'editor_tiny', $pluginname), \core\notification::SUCCESS ); } break; default: } redirect(new moodle_url('/admin/settings.php', [ 'section' => 'editorsettingstiny', ]));