This repository has been archived on 2024-01-19. You can view files and clone it, but cannot push or open issues or pull requests.
epubreader/lib/Settings/Personal.php

83 lines
1.9 KiB
PHP
Raw Permalink Normal View History

<?php
/**
2023-08-02 20:04:03 +00:00
* ownCloud - Epubreader App.
*
* @author Frank de Lange
* @copyright 2014,2018 Frank de Lange
*
* This file is licensed under the Affero General Public License version 3 or
* later.
*/
namespace OCA\Epubreader\Settings;
2023-06-16 22:07:40 +00:00
use OCA\Epubreader\AppInfo\Application;
use OCP\AppFramework\Http\TemplateResponse;
use OCP\IConfig;
2023-06-16 14:58:23 +00:00
use OCP\Settings\ISettings;
2023-08-02 20:04:03 +00:00
class Personal implements ISettings
{
2023-06-16 19:20:03 +00:00
private string $userId;
private IConfig $configManager;
2023-08-02 20:04:03 +00:00
public function __construct(string $userId, IConfig $configManager)
{
2023-06-16 14:58:23 +00:00
$this->userId = $userId;
$this->configManager = $configManager;
}
2023-06-16 14:58:23 +00:00
/**
* @return TemplateResponse returns the instance with all parameters set, ready to be rendered
* @since 9.1
*/
2023-08-02 20:04:03 +00:00
public function getForm(): TemplateResponse
{
2023-06-16 14:58:23 +00:00
$parameters = [
2023-06-17 22:55:37 +00:00
'EpubEnable' => $this->configManager->getUserValue($this->userId, Application::APP_ID, 'epub_enable', 'true'),
'PdfEnable' => $this->configManager->getUserValue($this->userId, Application::APP_ID, 'pdf_enable', 'true'),
'CbxEnable' => $this->configManager->getUserValue($this->userId, Application::APP_ID, 'cbx_enable', 'true'),
2023-06-16 14:58:23 +00:00
];
2023-06-16 19:20:03 +00:00
2023-06-16 22:07:40 +00:00
return new TemplateResponse(Application::APP_ID, 'settings-personal', $parameters, '');
2023-06-16 14:58:23 +00:00
}
2023-06-16 14:58:23 +00:00
/**
2023-08-02 20:04:03 +00:00
* Print config section (ownCloud 10).
2023-06-16 14:58:23 +00:00
*/
2023-08-02 20:04:03 +00:00
public function getPanel(): TemplateResponse
{
2023-06-16 14:58:23 +00:00
return $this->getForm();
}
2023-06-16 14:58:23 +00:00
/**
* @return string the section ID, e.g. 'sharing'
* @since 9.1
*/
2023-08-02 20:04:03 +00:00
public function getSection(): string
{
2023-06-16 22:07:40 +00:00
return Application::APP_ID;
2023-06-16 14:58:23 +00:00
}
2023-06-16 14:58:23 +00:00
/**
2023-08-02 20:04:03 +00:00
* Get section ID (ownCloud 10).
2023-06-16 14:58:23 +00:00
*/
2023-08-02 20:04:03 +00:00
public function getSectionID(): string
{
2023-06-16 22:07:40 +00:00
return Application::APP_ID;
2023-06-16 14:58:23 +00:00
}
2023-06-16 14:58:23 +00:00
/**
* @return int whether the form should be rather on the top or bottom of
2023-08-02 20:04:03 +00:00
* the admin section. The forms are arranged in ascending order of the
* priority values. It is required to return a value between 0 and 100.
2023-06-16 14:58:23 +00:00
*
* E.g.: 70
* @since 9.1
*/
2023-08-02 20:04:03 +00:00
public function getPriority(): int
{
2023-06-16 14:58:23 +00:00
return 10;
}
}