parent
5696c8aa35
commit
a2f752bcf3
@ -0,0 +1,96 @@ |
||||
<?php |
||||
/** |
||||
* @copyright Copyright (c) 2016 Arthur Schiwon <blizzz@arthur-schiwon.de> |
||||
* |
||||
* @author Arthur Schiwon <blizzz@arthur-schiwon.de> |
||||
* |
||||
* @license GNU AGPL version 3 or any later version |
||||
* |
||||
* This program is free software: you can redistribute it and/or modify |
||||
* it under the terms of the GNU Affero General Public License as |
||||
* published by the Free Software Foundation, either version 3 of the |
||||
* License, or (at your option) any later version. |
||||
* |
||||
* 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 |
||||
* along with this program. If not, see <http://www.gnu.org/licenses/>. |
||||
* |
||||
*/ |
||||
|
||||
namespace OCA\Files_External\Settings; |
||||
|
||||
use OCA\Files_External\Lib\Auth\Password\GlobalAuth; |
||||
use OCA\Files_External\Service\BackendService; |
||||
use OCA\Files_External\Service\GlobalStoragesService; |
||||
use OCP\AppFramework\Http\TemplateResponse; |
||||
use OCP\Encryption\IManager; |
||||
use OCP\Settings\ISettings; |
||||
|
||||
class Admin implements ISettings { |
||||
|
||||
/** @var IManager */ |
||||
private $encryptionManager; |
||||
|
||||
/** @var GlobalStoragesService */ |
||||
private $globalStoragesService; |
||||
|
||||
/** @var BackendService */ |
||||
private $backendService; |
||||
|
||||
/** @var GlobalAuth */ |
||||
private $globalAuth; |
||||
|
||||
public function __construct( |
||||
IManager $encryptionManager, |
||||
GlobalStoragesService $globalStoragesService, |
||||
BackendService $backendService, |
||||
GlobalAuth $globalAuth |
||||
) { |
||||
$this->encryptionManager = $encryptionManager; |
||||
$this->globalStoragesService = $globalStoragesService; |
||||
$this->backendService = $backendService; |
||||
$this->globalAuth = $globalAuth; |
||||
} |
||||
|
||||
/** |
||||
* @return TemplateResponse |
||||
*/ |
||||
public function getForm() { |
||||
$parameters = [ |
||||
'encryptionEnabled' => $this->encryptionManager->isEnabled(), |
||||
'visibilityType' => BackendService::VISIBILITY_ADMIN, |
||||
'storages' => $this->globalStoragesService->getStorages(), |
||||
'backends' => $this->backendService->getAvailableBackends(), |
||||
'authMechanisms' => $this->backendService->getAuthMechanisms(), |
||||
'dependencies' => \OC_Mount_Config::dependencyMessage($this->backendService->getBackends()), |
||||
'allowUserMounting' => $this->backendService->isUserMountingAllowed(), |
||||
'globalCredentials' => $this->globalAuth->getAuth(''), |
||||
'globalCredentialsUid' => '', |
||||
]; |
||||
|
||||
return new TemplateResponse('files_external', 'settings', $parameters, ''); |
||||
} |
||||
|
||||
/** |
||||
* @return string the section ID, e.g. 'sharing' |
||||
*/ |
||||
public function getSection() { |
||||
return 'externalstorage'; |
||||
} |
||||
|
||||
/** |
||||
* @return int whether the form should be rather on the top or bottom of |
||||
* 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. |
||||
* |
||||
* E.g.: 70 |
||||
*/ |
||||
public function getPriority() { |
||||
return 5; |
||||
} |
||||
|
||||
} |
||||
@ -0,0 +1,67 @@ |
||||
<?php |
||||
/** |
||||
* @copyright Copyright (c) 2016 Arthur Schiwon <blizzz@arthur-schiwon.de> |
||||
* |
||||
* @author Arthur Schiwon <blizzz@arthur-schiwon.de> |
||||
* |
||||
* @license GNU AGPL version 3 or any later version |
||||
* |
||||
* This program is free software: you can redistribute it and/or modify |
||||
* it under the terms of the GNU Affero General Public License as |
||||
* published by the Free Software Foundation, either version 3 of the |
||||
* License, or (at your option) any later version. |
||||
* |
||||
* 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 |
||||
* along with this program. If not, see <http://www.gnu.org/licenses/>. |
||||
* |
||||
*/ |
||||
|
||||
namespace OCA\Files_External\Settings; |
||||
|
||||
use OCP\IL10N; |
||||
use OCP\Settings\ISection; |
||||
|
||||
class Section implements ISection { |
||||
/** @var IL10N */ |
||||
private $l; |
||||
|
||||
public function __construct(IL10N $l) { |
||||
$this->l = $l; |
||||
} |
||||
|
||||
/** |
||||
* returns the ID of the section. It is supposed to be a lower case string, |
||||
* e.g. 'ldap' |
||||
* |
||||
* @returns string |
||||
*/ |
||||
public function getID() { |
||||
return 'externalstorage'; |
||||
} |
||||
|
||||
/** |
||||
* returns the translated name as it should be displayed, e.g. 'LDAP / AD |
||||
* integration'. Use the L10N service to translate it. |
||||
* |
||||
* @return string |
||||
*/ |
||||
public function getName() { |
||||
return $this->l->t('External Storage'); |
||||
} |
||||
|
||||
/** |
||||
* @return int whether the form should be rather on the top or bottom of |
||||
* the settings navigation. The sections are arranged in ascending order of |
||||
* the priority values. It is required to return a value between 0 and 99. |
||||
* |
||||
* E.g.: 70 |
||||
*/ |
||||
public function getPriority() { |
||||
return 35; |
||||
} |
||||
} |
||||
@ -1,48 +0,0 @@ |
||||
<?php |
||||
/** |
||||
* @copyright Copyright (c) 2016, ownCloud, Inc. |
||||
* |
||||
* @author Joas Schilling <coding@schilljs.com> |
||||
* @author Michael Gapczynski <GapczynskiM@gmail.com> |
||||
* @author Morris Jobke <hey@morrisjobke.de> |
||||
* @author Robin Appelman <robin@icewind.nl> |
||||
* @author Robin McCorkell <robin@mccorkell.me.uk> |
||||
* |
||||
* @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/> |
||||
* |
||||
*/ |
||||
|
||||
use \OCA\Files_External\Service\BackendService; |
||||
|
||||
// we must use the same container |
||||
$appContainer = \OC_Mount_Config::$app->getContainer(); |
||||
$backendService = $appContainer->query('OCA\Files_External\Service\BackendService'); |
||||
$globalStoragesService = $appContainer->query('OCA\Files_External\Service\GlobalStoragesService'); |
||||
$globalAuth = $appContainer->query('OCA\Files_External\Lib\Auth\Password\GlobalAuth'); |
||||
|
||||
\OC_Util::addVendorScript('select2/select2'); |
||||
\OC_Util::addVendorStyle('select2/select2'); |
||||
|
||||
$tmpl = new OCP\Template('files_external', 'settings'); |
||||
$tmpl->assign('encryptionEnabled', \OC::$server->getEncryptionManager()->isEnabled()); |
||||
$tmpl->assign('visibilityType', BackendService::VISIBILITY_ADMIN); |
||||
$tmpl->assign('storages', $globalStoragesService->getStorages()); |
||||
$tmpl->assign('backends', $backendService->getAvailableBackends()); |
||||
$tmpl->assign('authMechanisms', $backendService->getAuthMechanisms()); |
||||
$tmpl->assign('dependencies', OC_Mount_Config::dependencyMessage($backendService->getBackends())); |
||||
$tmpl->assign('allowUserMounting', $backendService->isUserMountingAllowed()); |
||||
$tmpl->assign('globalCredentials', $globalAuth->getAuth('')); |
||||
$tmpl->assign('globalCredentialsUid', ''); |
||||
return $tmpl->fetchPage(); |
||||
Loading…
Reference in new issue