From eae87215971fb7086ae99c8963717a176831e967 Mon Sep 17 00:00:00 2001 From: whoalin1 Date: Wed, 7 Oct 2026 04:25:54 +0300 Subject: [PATCH] feat: allow admin delegation for System monitoring page Assisted-by: Cursor:grok-4.7 Signed-off-by: whoalin1 --- lib/Settings/AdminSettings.php | 19 +++++++++++++++++-- 1 file changed, 17 insertions(+), 2 deletions(-) diff --git a/lib/Settings/AdminSettings.php b/lib/Settings/AdminSettings.php index 692e55e5..f0b7f1a9 100644 --- a/lib/Settings/AdminSettings.php +++ b/lib/Settings/AdminSettings.php @@ -10,10 +10,14 @@ namespace OCA\ServerInfo\Settings; use OCP\AppFramework\Http\TemplateResponse; -use OCP\Settings\ISettings; +use OCP\Settings\IDelegatedSettings; use OCP\Util; -class AdminSettings implements ISettings { +/** + * Read-only System monitoring page — exposable via Admin delegation + * (same pattern as logreader). + */ +class AdminSettings implements IDelegatedSettings { #[\Override] public function getForm(): TemplateResponse { Util::addScript('serverinfo', 'serverinfo-main'); @@ -41,4 +45,15 @@ public function getSection(): string { public function getPriority(): int { return 0; } + + #[\Override] + public function getName(): ?string { + return null; // Only setting in this section + } + + #[\Override] + public function getAuthorizedAppConfig(): array { + // Page is read-only; no appconfig writes to authorize. + return []; + } }