diff --git a/core/Application.php b/core/Application.php index a0deaff2b9..e8c924432d 100644 --- a/core/Application.php +++ b/core/Application.php @@ -186,6 +186,9 @@ class Application extends App { $container->registerService('TwoFactorAuthManager', function(SimpleContainer $c) { return $c->query('ServerContainer')->getTwoFactorAuthManager(); }); + $container->registerService('OC\CapabilitiesManager', function(SimpleContainer $c) { + return $c->query('ServerContainer')->getCapabilitiesManager(); + }); } } diff --git a/core/Controller/OCSController.php b/core/Controller/OCSController.php index 278a16186b..750ab37eb8 100644 --- a/core/Controller/OCSController.php +++ b/core/Controller/OCSController.php @@ -1,5 +1,24 @@ + * + * @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 . + * + */ namespace OC\Core\Controller; use OC\CapabilitiesManager; @@ -26,6 +45,10 @@ class OCSController extends \OCP\AppFramework\OCSController { $this->capabilitiesManager = $capabilitiesManager; } + /** + * @NoAdminRequired + * @return DataResponse + */ public function getCapabilities() { $result = []; list($major, $minor, $micro) = \OCP\Util::getVersion(); @@ -41,4 +64,4 @@ class OCSController extends \OCP\AppFramework\OCSController { return new DataResponse(['data' => $result]); } -} \ No newline at end of file +} diff --git a/core/routes.php b/core/routes.php index 98454946d4..92ce4440ec 100644 --- a/core/routes.php +++ b/core/routes.php @@ -53,6 +53,9 @@ $application->registerRoutes($this, [ ['name' => 'TwoFactorChallenge#showChallenge', 'url' => '/login/challenge/{challengeProviderId}', 'verb' => 'GET'], ['name' => 'TwoFactorChallenge#solveChallenge', 'url' => '/login/challenge/{challengeProviderId}', 'verb' => 'POST'], ], + 'ocs' => [ + ['root' => '/cloud', 'name' => 'OCS#getCapabilities', 'url' => '/capabilities', 'verb' => 'GET'], + ], ]); // Post installation check diff --git a/lib/private/OCS/Cloud.php b/lib/private/OCS/Cloud.php index 84fcfe6e51..3a00fa3756 100644 --- a/lib/private/OCS/Cloud.php +++ b/lib/private/OCS/Cloud.php @@ -27,22 +27,6 @@ namespace OC\OCS; class Cloud { - public static function getCapabilities() { - $result = array(); - list($major, $minor, $micro) = \OCP\Util::getVersion(); - $result['version'] = array( - 'major' => $major, - 'minor' => $minor, - 'micro' => $micro, - 'string' => \OC_Util::getVersionString(), - 'edition' => \OC_Util::getEditionString(), - ); - - $result['capabilities'] = \OC::$server->getCapabilitiesManager()->getCapabilities(); - - return new Result($result); - } - public static function getCurrentUser() { $userObject = \OC::$server->getUserManager()->get(\OC_User::getUser()); $data = array( diff --git a/ocs/routes.php b/ocs/routes.php index 0606fe3e30..bb24c79eba 100644 --- a/ocs/routes.php +++ b/ocs/routes.php @@ -84,13 +84,6 @@ API::register( API::USER_AUTH ); // cloud -API::register( - 'get', - '/cloud/capabilities', - array('OC_OCS_Cloud', 'getCapabilities'), - 'core', - API::USER_AUTH - ); API::register( 'get', '/cloud/user',