diff options
-rw-r--r-- | core/Controller/OCSController.php | 44 | ||||
-rw-r--r-- | lib/private/Route/Router.php | 5 |
2 files changed, 49 insertions, 0 deletions
diff --git a/core/Controller/OCSController.php b/core/Controller/OCSController.php new file mode 100644 index 00000000000..278a16186bf --- /dev/null +++ b/core/Controller/OCSController.php @@ -0,0 +1,44 @@ +<?php + +namespace OC\Core\Controller; + +use OC\CapabilitiesManager; +use OCP\AppFramework\Http\DataResponse; +use OCP\IRequest; + +class OCSController extends \OCP\AppFramework\OCSController { + + /** @var CapabilitiesManager */ + private $capabilitiesManager; + + /** + * OCSController constructor. + * + * @param string $appName + * @param IRequest $request + * @param CapabilitiesManager $capabilitiesManager + */ + public function __construct($appName, + IRequest $request, + CapabilitiesManager $capabilitiesManager) { + parent::__construct($appName, $request); + + $this->capabilitiesManager = $capabilitiesManager; + } + + public function getCapabilities() { + $result = []; + 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'] = $this->capabilitiesManager->getCapabilities(); + + return new DataResponse(['data' => $result]); + } +}
\ No newline at end of file diff --git a/lib/private/Route/Router.php b/lib/private/Route/Router.php index 9df74184448..59f403d66e8 100644 --- a/lib/private/Route/Router.php +++ b/lib/private/Route/Router.php @@ -163,6 +163,11 @@ class Router implements IRouter { $this->useCollection('root'); require_once __DIR__ . '/../../../settings/routes.php'; require_once __DIR__ . '/../../../core/routes.php'; + + // Also add the OCS collection + $collection = $this->getCollection('root.ocs'); + $collection->addPrefix('/ocsapp'); + $this->root->addCollection($collection); } if ($this->loaded) { // include ocs routes, must be loaded last for /ocs prefix |