]> source.dussan.org Git - nextcloud-server.git/commitdiff
Throw a nice HintException when the apps are missing 4027/head
authorJoas Schilling <coding@schilljs.com>
Fri, 24 Mar 2017 14:02:49 +0000 (15:02 +0100)
committerJoas Schilling <coding@schilljs.com>
Fri, 24 Mar 2017 14:02:49 +0000 (15:02 +0100)
Signed-off-by: Joas Schilling <coding@schilljs.com>
core/routes.php

index 5243691df47642a4b70631aa39e68786d001f922..9b49b7198c3d48962f914c7bf68f0cf4c4dff502 100644 (file)
@@ -84,26 +84,46 @@ $this->create('files.viewcontroller.showFile', '/f/{fileid}')->action(function($
 
 // Call routes
 $this->create('spreed.pagecontroller.showCall', '/call/{token}')->action(function($urlParams) {
-       $app = new \OCA\Spreed\AppInfo\Application($urlParams);
-       $app->dispatch('PageController', 'index');
+       if (class_exists(\OCA\Spreed\AppInfo\Application::class, false)) {
+               $app = new \OCA\Spreed\AppInfo\Application($urlParams);
+               $app->dispatch('PageController', 'index');
+       } else {
+               throw new \OC\HintException('App spreed is not enabled');
+       }
 });
 
 // Sharing routes
 $this->create('files_sharing.sharecontroller.showShare', '/s/{token}')->action(function($urlParams) {
-       $app = new \OCA\Files_Sharing\AppInfo\Application($urlParams);
-       $app->dispatch('ShareController', 'showShare');
+       if (class_exists(\OCA\Files_Sharing\AppInfo\Application::class, false)) {
+               $app = new \OCA\Files_Sharing\AppInfo\Application($urlParams);
+               $app->dispatch('ShareController', 'showShare');
+       } else {
+               throw new \OC\HintException('App file sharing is not enabled');
+       }
 });
 $this->create('files_sharing.sharecontroller.authenticate', '/s/{token}/authenticate')->post()->action(function($urlParams) {
-       $app = new \OCA\Files_Sharing\AppInfo\Application($urlParams);
-       $app->dispatch('ShareController', 'authenticate');
+       if (class_exists(\OCA\Files_Sharing\AppInfo\Application::class, false)) {
+               $app = new \OCA\Files_Sharing\AppInfo\Application($urlParams);
+               $app->dispatch('ShareController', 'authenticate');
+       } else {
+               throw new \OC\HintException('App file sharing is not enabled');
+       }
 });
 $this->create('files_sharing.sharecontroller.showAuthenticate', '/s/{token}/authenticate')->get()->action(function($urlParams) {
-       $app = new \OCA\Files_Sharing\AppInfo\Application($urlParams);
-       $app->dispatch('ShareController', 'showAuthenticate');
+       if (class_exists(\OCA\Files_Sharing\AppInfo\Application::class, false)) {
+               $app = new \OCA\Files_Sharing\AppInfo\Application($urlParams);
+               $app->dispatch('ShareController', 'showAuthenticate');
+       } else {
+               throw new \OC\HintException('App file sharing is not enabled');
+       }
 });
 $this->create('files_sharing.sharecontroller.downloadShare', '/s/{token}/download')->get()->action(function($urlParams) {
-       $app = new \OCA\Files_Sharing\AppInfo\Application($urlParams);
-       $app->dispatch('ShareController', 'downloadShare');
+       if (class_exists(\OCA\Files_Sharing\AppInfo\Application::class, false)) {
+               $app = new \OCA\Files_Sharing\AppInfo\Application($urlParams);
+               $app->dispatch('ShareController', 'downloadShare');
+       } else {
+               throw new \OC\HintException('App file sharing is not enabled');
+       }
 });
 
 // used for heartbeat