2023-10-02 09:41:51 -04:00
< ? php
declare ( strict_types = 1 );
/**
2024-06-03 04:23:34 -04:00
* SPDX - FileCopyrightText : 2023 Nextcloud GmbH and Nextcloud contributors
* SPDX - License - Identifier : AGPL - 3.0 - or - later
2023-10-02 09:41:51 -04:00
*/
namespace OCA\Settings\SetupChecks ;
use OCP\IConfig ;
use OCP\IL10N ;
use OCP\SetupCheck\ISetupCheck ;
use OCP\SetupCheck\SetupResult ;
class ReadOnlyConfig implements ISetupCheck {
public function __construct (
private IL10N $l10n ,
private IConfig $config ,
) {
}
public function getName () : string {
2023-10-24 05:40:03 -04:00
return $this -> l10n -> t ( 'Configuration file access rights' );
2023-10-02 09:41:51 -04:00
}
public function getCategory () : string {
return 'config' ;
}
public function run () : SetupResult {
if ( $this -> config -> getSystemValueBool ( 'config_is_read_only' , false )) {
2023-10-16 11:23:47 -04:00
return SetupResult :: info ( $this -> l10n -> t ( 'The read-only config has been enabled. This prevents setting some configurations via the web-interface. Furthermore, the file needs to be made writable manually for every update.' ));
2023-10-02 09:41:51 -04:00
} else {
2023-10-16 11:23:47 -04:00
return SetupResult :: success ( $this -> l10n -> t ( 'Nextcloud configuration file is writable' ));
2023-10-02 09:41:51 -04:00
}
}
}