mirror of
https://github.com/flarum/core.git
synced 2025-08-03 15:07:53 +02:00
fix: setting key safe_mode_extensions
not exists (#3992)
This commit is contained in:
@@ -36,14 +36,18 @@ class WhenSavingSettings
|
||||
{
|
||||
if (array_key_exists('safe_mode_extensions', $event->settings)) {
|
||||
$safeModeExtensions = json_decode($event->settings['safe_mode_extensions'] ?? '[]', true);
|
||||
$sorted = [];
|
||||
|
||||
$extensions = $this->extensions->getExtensions()->filter(function ($extension) use ($safeModeExtensions) {
|
||||
return in_array($extension->getId(), $safeModeExtensions);
|
||||
});
|
||||
if ($safeModeExtensions) {
|
||||
$extensions = $this->extensions->getExtensions()->filter(function ($extension) use ($safeModeExtensions) {
|
||||
return in_array($extension->getId(), $safeModeExtensions);
|
||||
});
|
||||
|
||||
$sorted = array_map(fn (Extension $e) => $e->getId(), $this->extensions->sortDependencies($extensions->all()));
|
||||
$sorted = array_map(fn (Extension $e) => $e->getId(), $this->extensions->sortDependencies($extensions->all()));
|
||||
$sorted = array_values($sorted);
|
||||
}
|
||||
|
||||
$event->settings['safe_mode_extensions'] = json_encode(array_values($sorted));
|
||||
$event->settings['safe_mode_extensions'] = json_encode($sorted);
|
||||
}
|
||||
}
|
||||
|
||||
|
@@ -65,7 +65,7 @@ class Config implements ArrayAccess
|
||||
|
||||
public function safeModeExtensions(): ?array
|
||||
{
|
||||
return $this->data['safe_mode_extensions'];
|
||||
return $this->data['safe_mode_extensions'] ?? null;
|
||||
}
|
||||
|
||||
private function requireKeys(mixed ...$keys): void
|
||||
|
Reference in New Issue
Block a user