2017-05-15 23:38:12 +00:00
|
|
|
<?php
|
|
|
|
/**
|
2024-06-03 08:23:34 +00:00
|
|
|
* SPDX-FileCopyrightText: 2017 Nextcloud GmbH and Nextcloud contributors
|
|
|
|
* SPDX-License-Identifier: AGPL-3.0-or-later
|
2017-05-15 23:38:12 +00:00
|
|
|
*/
|
2019-09-17 14:33:27 +00:00
|
|
|
namespace OCA\Settings\Controller;
|
2017-05-15 23:38:12 +00:00
|
|
|
|
|
|
|
use OCP\AppFramework\Controller;
|
2024-07-25 11:14:49 +00:00
|
|
|
use OCP\AppFramework\Http\Attribute\NoAdminRequired;
|
|
|
|
use OCP\AppFramework\Http\Attribute\NoCSRFRequired;
|
2024-01-18 09:38:37 +00:00
|
|
|
use OCP\AppFramework\Http\Attribute\OpenAPI;
|
2017-05-15 23:38:12 +00:00
|
|
|
use OCP\AppFramework\Http\TemplateResponse;
|
2023-12-07 15:39:16 +00:00
|
|
|
use OCP\AppFramework\Services\IInitialState;
|
2019-05-22 08:48:51 +00:00
|
|
|
use OCP\Group\ISubAdmin;
|
|
|
|
use OCP\IGroupManager;
|
2017-05-15 23:38:12 +00:00
|
|
|
use OCP\INavigationManager;
|
|
|
|
use OCP\IRequest;
|
2019-05-22 08:48:51 +00:00
|
|
|
use OCP\IUserSession;
|
2023-12-07 15:39:16 +00:00
|
|
|
use OCP\Settings\IDeclarativeManager;
|
2017-05-15 23:38:12 +00:00
|
|
|
use OCP\Settings\IManager as ISettingsManager;
|
|
|
|
|
2024-01-18 09:38:37 +00:00
|
|
|
#[OpenAPI(scope: OpenAPI::SCOPE_IGNORE)]
|
2017-05-15 23:38:12 +00:00
|
|
|
class PersonalSettingsController extends Controller {
|
2017-05-31 10:44:52 +00:00
|
|
|
use CommonSettingsTrait;
|
2017-05-15 23:38:12 +00:00
|
|
|
|
|
|
|
public function __construct(
|
|
|
|
$appName,
|
|
|
|
IRequest $request,
|
|
|
|
INavigationManager $navigationManager,
|
2019-05-22 08:48:51 +00:00
|
|
|
ISettingsManager $settingsManager,
|
|
|
|
IUserSession $userSession,
|
|
|
|
IGroupManager $groupManager,
|
2023-12-07 15:39:16 +00:00
|
|
|
ISubAdmin $subAdmin,
|
|
|
|
IDeclarativeManager $declarativeSettingsManager,
|
|
|
|
IInitialState $initialState,
|
2017-05-15 23:38:12 +00:00
|
|
|
) {
|
|
|
|
parent::__construct($appName, $request);
|
|
|
|
$this->navigationManager = $navigationManager;
|
|
|
|
$this->settingsManager = $settingsManager;
|
2019-05-22 08:48:51 +00:00
|
|
|
$this->userSession = $userSession;
|
|
|
|
$this->subAdmin = $subAdmin;
|
|
|
|
$this->groupManager = $groupManager;
|
2023-12-07 15:39:16 +00:00
|
|
|
$this->declarativeSettingsManager = $declarativeSettingsManager;
|
|
|
|
$this->initialState = $initialState;
|
2017-05-15 23:38:12 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
/**
|
2020-06-23 18:18:38 +00:00
|
|
|
* @NoSubAdminRequired
|
2017-05-15 23:38:12 +00:00
|
|
|
*/
|
2024-07-25 11:14:49 +00:00
|
|
|
#[NoAdminRequired]
|
|
|
|
#[NoCSRFRequired]
|
2021-07-22 09:41:29 +00:00
|
|
|
public function index(string $section): TemplateResponse {
|
2024-09-27 19:40:30 +00:00
|
|
|
return $this->getIndexResponse(
|
|
|
|
'personal',
|
|
|
|
$section,
|
|
|
|
);
|
2017-05-19 10:57:45 +00:00
|
|
|
}
|
2017-05-15 23:38:12 +00:00
|
|
|
}
|