Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/nextcloud/server.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
authorRoeland Jago Douma <rullzer@users.noreply.github.com>2018-10-09 21:50:37 +0300
committerGitHub <noreply@github.com>2018-10-09 21:50:37 +0300
commita9f4817b652b636a3b2f8c11b2a3e7526e0be82d (patch)
tree821152e474441aa59c8f4f476bdf91d8e4601fa0 /lib
parentab3599155f9b51cc17fca188f48269aeb44f9462 (diff)
parentc97b4274ccdc4fa841b164dedb608fdf351a0412 (diff)
Merge pull request #11622 from nextcloud/feature/11617
Add function to generate urls for OCS routes
Diffstat (limited to 'lib')
-rw-r--r--lib/private/URLGenerator.php13
-rw-r--r--lib/public/IURLGenerator.php8
2 files changed, 21 insertions, 0 deletions
diff --git a/lib/private/URLGenerator.php b/lib/private/URLGenerator.php
index 6f4f869238c..f4a83138e4c 100644
--- a/lib/private/URLGenerator.php
+++ b/lib/private/URLGenerator.php
@@ -91,6 +91,19 @@ class URLGenerator implements IURLGenerator {
return $this->getAbsoluteURL($this->linkToRoute($routeName, $arguments));
}
+ public function linkToOCSRouteAbsolute(string $routeName, array $arguments = []): string {
+ $route = \OC::$server->getRouter()->generate('ocs.'.$routeName, $arguments, false);
+
+ if (strpos($route, '/index.php') === 0) {
+ $route = substr($route, 10);
+ }
+
+ $route = substr($route, 7);
+ $route = '/ocs/v2.php' . $route;
+
+ return $this->getAbsoluteURL($route);
+ }
+
/**
* Creates an url
* @param string $app app
diff --git a/lib/public/IURLGenerator.php b/lib/public/IURLGenerator.php
index ebf35967551..368f65fe4c1 100644
--- a/lib/public/IURLGenerator.php
+++ b/lib/public/IURLGenerator.php
@@ -51,6 +51,14 @@ interface IURLGenerator {
public function linkToRouteAbsolute(string $routeName, array $arguments = array()): string;
/**
+ * @param string $routeName
+ * @param array $arguments
+ * @return string
+ * @since 15.0.0
+ */
+ public function linkToOCSRouteAbsolute(string $routeName, array $arguments = []): string;
+
+ /**
* Returns an URL for an image or file
* @param string $appName the name of the app
* @param string $file the name of the file