Make isTalkRecordingEnabled an attribute

Signed-off-by: Pablo Zmdl <pablo@nextcloud.com>
This commit is contained in:
Pablo Zmdl 2026-01-19 12:04:04 +01:00
parent d895e0d8e1
commit 52c981f49a
5 changed files with 10 additions and 31 deletions

View file

@ -134,7 +134,7 @@ $app->get('/containers', function (Request $request, Response $response, array $
'nextcloud_memory_limit' => $configurationManager->GetNextcloudMemoryLimit(),
'is_dri_device_enabled' => $configurationManager->isDriDeviceEnabled(),
'is_nvidia_gpu_enabled' => $configurationManager->isNvidiaGpuEnabled(),
'is_talk_recording_enabled' => $configurationManager->isTalkRecordingEnabled(),
'is_talk_recording_enabled' => $configurationManager->isTalkRecordingEnabled,
'is_docker_socket_proxy_enabled' => $configurationManager->isDockerSocketProxyEnabled,
'is_whiteboard_enabled' => $configurationManager->isWhiteboardEnabled,
'community_containers' => $configurationManager->listAvailableCommunityContainers(),

View file

@ -75,7 +75,7 @@ readonly class ContainerDefinitionFetcher {
continue;
}
} elseif ($entry['container_name'] === 'nextcloud-aio-talk-recording') {
if (!$this->configurationManager->isTalkRecordingEnabled()) {
if (!$this->configurationManager->isTalkRecordingEnabled) {
continue;
}
} elseif ($entry['container_name'] === 'nextcloud-aio-imaginary') {
@ -184,7 +184,7 @@ readonly class ContainerDefinitionFetcher {
continue;
}
} elseif ($value === 'nextcloud-aio-talk-recording') {
if (!$this->configurationManager->isTalkRecordingEnabled()) {
if (!$this->configurationManager->isTalkRecordingEnabled) {
continue;
}
} elseif ($value === 'nextcloud-aio-imaginary') {

View file

@ -83,11 +83,7 @@ readonly class ConfigurationController {
$this->configurationManager->isOnlyofficeEnabled = isset($request->getParsedBody()['onlyoffice']);
$this->configurationManager->isCollaboraEnabled = isset($request->getParsedBody()['collabora']);
$this->configurationManager->isTalkEnabled = isset($request->getParsedBody()['talk']);
if (isset($request->getParsedBody()['talk-recording'])) {
$this->configurationManager->SetTalkRecordingEnabledState(1);
} else {
$this->configurationManager->SetTalkRecordingEnabledState(0);
}
$this->configurationManager->isTalkRecordingEnabled = isset($request->getParsedBody()['talk-recording']);
if (isset($request->getParsedBody()['imaginary'])) {
$this->configurationManager->SetImaginaryEnabledState(1);
} else {

View file

@ -88,6 +88,11 @@ class ConfigurationManager
set { $this->set('isTalkEnabled', $value); }
}
public bool $isTalkRecordingEnabled {
get => $this->isTalkEnabled && $this->get('isTalkRecordingEnabled', false);
set { $this->set('isTalkRecordingEnabled', $this->isTalkEnabled && $value); }
}
public function GetConfig() : array
{
if ($this->config === [] && file_exists(DataConst::GetConfigFile()))
@ -258,28 +263,6 @@ class ConfigurationManager
$this->WriteConfig($config);
}
public function isTalkRecordingEnabled() : bool {
if (!$this->isTalkEnabled()) {
return false;
}
$config = $this->GetConfig();
if (isset($config['isTalkRecordingEnabled']) && $config['isTalkRecordingEnabled'] === 1) {
return true;
} else {
return false;
}
}
public function SetTalkRecordingEnabledState(int $value) : void {
if (!$this->isTalkEnabled()) {
$value = 0;
}
$config = $this->GetConfig();
$config['isTalkRecordingEnabled'] = $value;
$this->WriteConfig($config);
}
/**
* @throws InvalidSettingConfigurationException
*/

View file

@ -572,7 +572,7 @@ readonly class DockerActionManager {
'NEXTCLOUD_MOUNT' => $this->configurationManager->GetNextcloudMount(),
'BACKUP_RESTORE_PASSWORD' => $this->configurationManager->GetBorgRestorePassword(),
'CLAMAV_ENABLED' => $this->configurationManager->isClamavEnabled ? 'yes' : '',
'TALK_RECORDING_ENABLED' => $this->configurationManager->isTalkRecordingEnabled() ? 'yes' : '',
'TALK_RECORDING_ENABLED' => $this->configurationManager->isTalkRecordingEnabled ? 'yes' : '',
'ONLYOFFICE_ENABLED' => $this->configurationManager->isOnlyofficeEnabled ? 'yes' : '',
'COLLABORA_ENABLED' => $this->configurationManager->isCollaboraEnabled ? 'yes' : '',
'TALK_ENABLED' => $this->configurationManager->isTalkEnabled ? 'yes' : '',