From: Joas Schilling Date: Mon, 23 Mar 2020 16:00:41 +0000 (+0100) Subject: Fix creation of legacy routes X-Git-Tag: v19.0.0beta5~10^2~9 X-Git-Url: https://source.dussan.org/?a=commitdiff_plain;h=aad16c8508b11c54cd87122456642b8e20c774d3;p=nextcloud-server.git Fix creation of legacy routes Signed-off-by: Joas Schilling --- diff --git a/lib/private/Route/Router.php b/lib/private/Route/Router.php index 9c6e69908e7..075b81224ad 100644 --- a/lib/private/Route/Router.php +++ b/lib/private/Route/Router.php @@ -335,6 +335,7 @@ class Router implements IRouter { if ($absolute === false) { $referenceType = UrlGenerator::ABSOLUTE_PATH; } + $name = $this->fixLegacyRootName($name); return $this->getGenerator()->generate($name, $parameters, $referenceType); } catch (RouteNotFoundException $e) { $this->logger->logException($e); @@ -342,6 +343,34 @@ class Router implements IRouter { } } + protected function fixLegacyRootName(string $routeName): string { + if ($routeName === 'files.viewcontroller.showFile') { + return 'files.View.showFile'; + } + if ($routeName === 'files_sharing.sharecontroller.showShare') { + return 'files_sharing.Share.showShare'; + } + if ($routeName === 'files_sharing.sharecontroller.showAuthenticate') { + return 'files_sharing.Share.showAuthenticate'; + } + if ($routeName === 'files_sharing.sharecontroller.authenticate') { + return 'files_sharing.Share.authenticate'; + } + if ($routeName === 'files_sharing.sharecontroller.downloadShare') { + return 'files_sharing.Share.downloadShare'; + } + if ($routeName === 'files_sharing.publicpreview.directLink') { + return 'files_sharing.PublicPreview.directLink'; + } + if ($routeName === 'cloud_federation_api.requesthandlercontroller.addShare') { + return 'cloud_federation_api.RequestHandler.addShare'; + } + if ($routeName === 'cloud_federation_api.requesthandlercontroller.receiveNotification') { + return 'cloud_federation_api.RequestHandler.receiveNotification'; + } + return $routeName; + } + /** * To isolate the variable scope used inside the $file it is required in it's own method *