mirror of
https://github.com/slawkens/myaac.git
synced 2025-04-26 17:29:21 +02:00
Option to disable settings saving with hooks
for next.my-aac.org
This commit is contained in:
parent
43353b4f53
commit
f43a5d1221
@ -6,6 +6,11 @@ require SYSTEM . 'functions.php';
|
||||
require SYSTEM . 'init.php';
|
||||
require SYSTEM . 'login.php';
|
||||
|
||||
// event system
|
||||
require_once SYSTEM . 'hooks.php';
|
||||
$hooks = new Hooks();
|
||||
$hooks->load();
|
||||
|
||||
if(!admin()) {
|
||||
http_response_code(500);
|
||||
die('Access denied.');
|
||||
@ -23,7 +28,7 @@ if (!isset($_POST['settings'])) {
|
||||
|
||||
$settings = Settings::getInstance();
|
||||
|
||||
$settings->save($_REQUEST['plugin'], $_POST['settings']);
|
||||
$success = $settings->save($_REQUEST['plugin'], $_POST['settings']);
|
||||
|
||||
$errors = $settings->getErrors();
|
||||
if (count($errors) > 0) {
|
||||
@ -31,4 +36,6 @@ if (count($errors) > 0) {
|
||||
die(implode('<br/>', $errors));
|
||||
}
|
||||
|
||||
if ($success) {
|
||||
echo 'Saved at ' . date('H:i');
|
||||
}
|
||||
|
@ -68,6 +68,7 @@ define('HOOK_ADMIN_LOGIN_AFTER_ACCOUNT', ++$i);
|
||||
define('HOOK_ADMIN_LOGIN_AFTER_PASSWORD', ++$i);
|
||||
define('HOOK_ADMIN_LOGIN_AFTER_SIGN_IN', ++$i);
|
||||
define('HOOK_ADMIN_ACCOUNTS_SAVE_POST', ++$i);
|
||||
define('HOOK_ADMIN_SETTINGS_BEFORE_SAVE', ++$i);
|
||||
define('HOOK_EMAIL_CONFIRMED', ++$i);
|
||||
define('HOOK_GUILDS_BEFORE_GUILD_HEADER', ++$i);
|
||||
define('HOOK_GUILDS_AFTER_GUILD_HEADER', ++$i);
|
||||
|
@ -60,6 +60,16 @@ class Settings implements ArrayAccess
|
||||
}
|
||||
|
||||
$settings = $this->settingsFile[$pluginName];
|
||||
|
||||
global $hooks;
|
||||
if (!$hooks->trigger(HOOK_ADMIN_SETTINGS_BEFORE_SAVE, [
|
||||
'name' => $pluginName,
|
||||
'values' => $values,
|
||||
'settings' => $settings,
|
||||
])) {
|
||||
return false;
|
||||
}
|
||||
|
||||
if (isset($settings['callbacks']['beforeSave'])) {
|
||||
if (!$settings['callbacks']['beforeSave']($settings, $values)) {
|
||||
return false;
|
||||
|
@ -1602,7 +1602,7 @@ Sent by MyAAC,<br/>
|
||||
if ($key == 'server_path') {
|
||||
$server_path = $values[$key];
|
||||
}
|
||||
elseif (strpos($key, 'database_') !== false) {
|
||||
elseif (str_contains($key, 'database_')) {
|
||||
$database[$key] = $values[$key];
|
||||
}
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user