diff options
Diffstat (limited to 'apps/dav/lib/Files/FilesHome.php')
-rw-r--r-- | apps/dav/lib/Files/FilesHome.php | 55 |
1 files changed, 16 insertions, 39 deletions
diff --git a/apps/dav/lib/Files/FilesHome.php b/apps/dav/lib/Files/FilesHome.php index 8820ef6ffb7..f8aa82cdcc9 100644 --- a/apps/dav/lib/Files/FilesHome.php +++ b/apps/dav/lib/Files/FilesHome.php @@ -1,66 +1,43 @@ <?php + /** - * @copyright Copyright (c) 2016, ownCloud, Inc. - * - * @author Morris Jobke <hey@morrisjobke.de> - * @author Roeland Jago Douma <roeland@famdouma.nl> - * @author Thomas Müller <thomas.mueller@tmit.eu> - * @author Vincent Petry <pvince81@owncloud.com> - * - * @license AGPL-3.0 - * - * This code is free software: you can redistribute it and/or modify - * it under the terms of the GNU Affero General Public License, version 3, - * as published by the Free Software Foundation. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Affero General Public License for more details. - * - * You should have received a copy of the GNU Affero General Public License, version 3, - * along with this program. If not, see <http://www.gnu.org/licenses/> - * + * SPDX-FileCopyrightText: 2016-2024 Nextcloud GmbH and Nextcloud contributors + * SPDX-FileCopyrightText: 2016 ownCloud, Inc. + * SPDX-License-Identifier: AGPL-3.0-only */ namespace OCA\DAV\Files; +use OC\Files\Filesystem; use OCA\DAV\Connector\Sabre\Directory; use OCP\Files\FileInfo; use Sabre\DAV\Exception\Forbidden; -use Sabre\HTTP\URLUtil; class FilesHome extends Directory { /** - * @var array - */ - private $principalInfo; - - /** * FilesHome constructor. * * @param array $principalInfo + * @param FileInfo $userFolder */ - public function __construct($principalInfo) { - $this->principalInfo = $principalInfo; - $view = \OC\Files\Filesystem::getView(); - $rootInfo = $view->getFileInfo(''); - if (!($rootInfo instanceof FileInfo)) { - throw new \Exception('Home does not exist'); - } - parent::__construct($view, $rootInfo); + public function __construct( + private $principalInfo, + FileInfo $userFolder, + ) { + $view = Filesystem::getView(); + parent::__construct($view, $userFolder); } - function delete() { + public function delete() { throw new Forbidden('Permission denied to delete home folder'); } - function getName() { - list(,$name) = \Sabre\Uri\split($this->principalInfo['uri']); + public function getName() { + [,$name] = \Sabre\Uri\split($this->principalInfo['uri']); return $name; } - function setName($name) { + public function setName($name) { throw new Forbidden('Permission denied to rename this folder'); } } |