diff options
author | Tim Obert <tobert@w-commerce.de> | 2020-02-14 12:12:04 +0100 |
---|---|---|
committer | backportbot[bot] <backportbot[bot]@users.noreply.github.com> | 2020-02-23 15:45:40 +0000 |
commit | 1e81fc2dbe66dae2e9a80ef8fb40eb4934ce02b8 (patch) | |
tree | dcd5f468687ceaad17f75fac1433d34ebf0a8aec | |
parent | 51d75fc7ae04bda508861fa16cab78e3177fa1b0 (diff) | |
download | nextcloud-server-1e81fc2dbe66dae2e9a80ef8fb40eb4934ce02b8.tar.gz nextcloud-server-1e81fc2dbe66dae2e9a80ef8fb40eb4934ce02b8.zip |
Change the route generation of AuthPublicShareController.php and adjust the routes for file sharing
Signed-off-by: Tim Obert <tobert@w-commerce.de>
-rw-r--r-- | core/routes.php | 8 | ||||
-rw-r--r-- | lib/public/AppFramework/AuthPublicShareController.php | 16 |
2 files changed, 17 insertions, 7 deletions
diff --git a/core/routes.php b/core/routes.php index 5fb13bc298a..49938d6a368 100644 --- a/core/routes.php +++ b/core/routes.php @@ -88,10 +88,10 @@ $application->registerRoutes($this, [ // Legacy routes that need to be globally available while they are handled by an app ['name' => 'viewcontroller#showFile', 'url' => '/f/{fileid}', 'verb' => 'GET', 'app' => 'files'], - ['name' => 'sharecontroller#showShare', 'url' => '/s/{token}', 'verb' => 'GET', 'app' => 'files_sharing'], - ['name' => 'sharecontroller#showAuthenticate', 'url' => '/s/{token}/authenticate/{redirect}', 'verb' => 'GET', 'app' => 'files_sharing'], - ['name' => 'sharecontroller#authenticate', 'url' => '/s/{token}/authenticate/{redirect}', 'verb' => 'POST', 'app' => 'files_sharing'], - ['name' => 'sharecontroller#downloadShare', 'url' => '/s/{token}/download', 'verb' => 'GET', 'app' => 'files_sharing'], + ['name' => 'share#showShare', 'url' => '/s/{token}', 'verb' => 'GET', 'app' => 'files_sharing'], + ['name' => 'share#showAuthenticate', 'url' => '/s/{token}/authenticate/{redirect}', 'verb' => 'GET', 'app' => 'files_sharing'], + ['name' => 'share#authenticate', 'url' => '/s/{token}/authenticate/{redirect}', 'verb' => 'POST', 'app' => 'files_sharing'], + ['name' => 'share#downloadShare', 'url' => '/s/{token}/download', 'verb' => 'GET', 'app' => 'files_sharing'], ['name' => 'publicpreview#directLink', 'url' => '/s/{token}/preview', 'verb' => 'GET', 'app' => 'files_sharing'], ['name' => 'requesthandlercontroller#addShare', 'url' => '/ocm/shares', 'verb' => 'POST', 'app' => 'cloud_federation_api'], ['name' => 'requesthandlercontroller#receiveNotification', 'url' => '/ocm/notifications', 'verb' => 'POST', 'app' => 'cloud_federation_api'], diff --git a/lib/public/AppFramework/AuthPublicShareController.php b/lib/public/AppFramework/AuthPublicShareController.php index 09337ad101c..969fd0bfe60 100644 --- a/lib/public/AppFramework/AuthPublicShareController.php +++ b/lib/public/AppFramework/AuthPublicShareController.php @@ -157,13 +157,23 @@ abstract class AuthPublicShareController extends PublicShareController { } /** + * @param $string + * @return string + */ + private function camelCaseToLowerCaseUnderscored($string) + { + $value = preg_replace('/(?<=\\w)([A-Z])/', '_\\1', $string); + return mb_strtolower($value, 'utf-8'); + } + + /** * @since 14.0.0 */ private function getRoute(string $function): string { $app = strtolower($this->appName); - $class = strtolower((new \ReflectionClass($this))->getShortName()); - - return $app . '.' . $class . '.' . $function; + $class = (new \ReflectionClass($this))->getShortName(); + // $class = $this->camelCaseToLowerCaseUnderscored(substr($class, 0, strpos($class, 'Controller'))); + return $app .'.'. $class .'.'. $function; } /** |