MDL-72720 assignxxx: Implement enable_plugin() method
This commit is contained in:
@@ -274,8 +274,8 @@ class assign_plugin_manager {
|
||||
* @return string The next page to display
|
||||
*/
|
||||
public function hide_plugin($plugin) {
|
||||
set_config('disabled', 1, $this->subtype . '_' . $plugin);
|
||||
core_plugin_manager::reset_caches();
|
||||
$class = \core_plugin_manager::resolve_plugininfo_class($this->subtype);
|
||||
$class::enable_plugin($plugin, false);
|
||||
return 'view';
|
||||
}
|
||||
|
||||
@@ -333,8 +333,8 @@ class assign_plugin_manager {
|
||||
* @return string The next page to display
|
||||
*/
|
||||
public function show_plugin($plugin) {
|
||||
set_config('disabled', 0, $this->subtype . '_' . $plugin);
|
||||
core_plugin_manager::reset_caches();
|
||||
$class = \core_plugin_manager::resolve_plugininfo_class($this->subtype);
|
||||
$class::enable_plugin($plugin, true);
|
||||
return 'view';
|
||||
}
|
||||
|
||||
|
||||
@@ -63,6 +63,24 @@ class assignfeedback extends base {
|
||||
return $enabled;
|
||||
}
|
||||
|
||||
public static function enable_plugin(string $pluginname, int $enabled): bool {
|
||||
$haschanged = false;
|
||||
|
||||
$plugin = 'assignfeedback_' . $pluginname;
|
||||
$oldvalue = get_config($plugin, 'disabled');
|
||||
$disabled = !$enabled;
|
||||
// Only set value if there is no config setting or if the value is different from the previous one.
|
||||
if ($oldvalue === false || ((bool) $oldvalue != $disabled)) {
|
||||
set_config('disabled', $disabled, $plugin);
|
||||
$haschanged = true;
|
||||
|
||||
add_to_config_log('disabled', $oldvalue, $disabled, $plugin);
|
||||
\core_plugin_manager::reset_caches();
|
||||
}
|
||||
|
||||
return $haschanged;
|
||||
}
|
||||
|
||||
public function is_uninstall_allowed() {
|
||||
return true;
|
||||
}
|
||||
|
||||
@@ -63,6 +63,24 @@ class assignsubmission extends base {
|
||||
return $enabled;
|
||||
}
|
||||
|
||||
public static function enable_plugin(string $pluginname, int $enabled): bool {
|
||||
$haschanged = false;
|
||||
|
||||
$plugin = 'assignsubmission_' . $pluginname;
|
||||
$oldvalue = get_config($plugin, 'disabled');
|
||||
$disabled = !$enabled;
|
||||
// Only set value if there is no config setting or if the value is different from the previous one.
|
||||
if ($oldvalue === false || ((bool) $oldvalue != $disabled)) {
|
||||
set_config('disabled', $disabled, $plugin);
|
||||
$haschanged = true;
|
||||
|
||||
add_to_config_log('disabled', $oldvalue, $disabled, $plugin);
|
||||
\core_plugin_manager::reset_caches();
|
||||
}
|
||||
|
||||
return $haschanged;
|
||||
}
|
||||
|
||||
public function is_uninstall_allowed() {
|
||||
return true;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user