'UptimeKuma', 'enabled' => true, 'image' => 'plugins/images/tabs/kuma.png', 'category' => 'Monitor', 'settingsArray' => __FUNCTION__ ]; if ($infoOnly) { return $homepageInformation; } $homepageSettings = [ 'debug' => true, 'settings' => [ 'Enable' => [ $this->settingsOption('enable', 'homepageUptimeKumaEnabled'), $this->settingsOption('auth', 'homepageUptimeKumaAuth'), ], 'Connection' => [ $this->settingsOption('url', 'uptimeKumaURL', ['help' => 'URL for Uptime Kuma e.g. http://kuma:3001 (no trailing slash)', 'placeholder' => 'http://kuma:3001']), $this->settingsOption('token', 'uptimeKumaToken'), ], 'Options' => [ $this->settingsOption('refresh', 'homepageUptimeKumaRefresh'), $this->settingsOption('title', 'homepageUptimeKumaHeader'), $this->settingsOption('toggle-title', 'homepageUptimeKumaHeaderToggle'), $this->settingsOption('switch', 'homepageUptimeKumaCompact', ['label' => 'Compact view', 'help' => 'Toggles the compact view of this homepage module']), $this->settingsOption('switch', 'homepageUptimeKumaShowLatency', ['label' => 'Show monitor latency']), ], ] ]; return array_merge($homepageInformation, $homepageSettings); } public function uptimeKumaHomepagePermissions($key = null) { $permissions = [ 'main' => [ 'enabled' => [ 'homepageUptimeKumaEnabled' ], 'auth' => [ 'homepageUptimeKumaAuth' ], 'not_empty' => [ 'uptimeKumaURL', 'uptimeKumaToken', ] ] ]; return $this->homepageCheckKeyPermissions($key, $permissions); } public function homepageOrderUptimeKuma() { if ($this->homepageItemPermissions($this->uptimeKumaHomepagePermissions('main'))) { return '