From c5b53785583eb215eb1ec889333ecf25ecb97e66 Mon Sep 17 00:00:00 2001 From: Joas Schilling Date: Mon, 8 Sep 2014 14:43:14 +0200 Subject: [PATCH] Add a method to get the absolute url for a route Fix #10926 --- lib/private/urlgenerator.php | 15 ++++++++++++++- lib/public/iurlgenerator.php | 8 ++++++++ 2 files changed, 22 insertions(+), 1 deletion(-) diff --git a/lib/private/urlgenerator.php b/lib/private/urlgenerator.php index af5d977eeab..f5ec9803edb 100644 --- a/lib/private/urlgenerator.php +++ b/lib/private/urlgenerator.php @@ -35,13 +35,26 @@ class URLGenerator implements IURLGenerator { * @internal param array $args with param=>value, will be appended to the returned url * @return string the url * - * Returns a url to the given app and file. + * Returns a url to the given route. */ public function linkToRoute($route, $parameters = array()) { $urlLinkTo = \OC::$server->getRouter()->generate($route, $parameters); return $urlLinkTo; } + /** + * Creates an absolute url using a defined route + * @param string $route + * @param array $parameters + * @internal param array $args with param=>value, will be appended to the returned url + * @return string the url + * + * Returns an absolute url to the given route. + */ + public function linkToRouteAbsolute($routeName, $arguments = array()) { + return $this->getAbsoluteURL($this->linkToRoute($routeName, $arguments)); + } + /** * Creates an url * @param string $app app diff --git a/lib/public/iurlgenerator.php b/lib/public/iurlgenerator.php index afdf1b6f299..dbbd8a3bb63 100644 --- a/lib/public/iurlgenerator.php +++ b/lib/public/iurlgenerator.php @@ -42,6 +42,14 @@ interface IURLGenerator { */ public function linkToRoute($routeName, $arguments = array()); + /** + * Returns the absolute URL for a route + * @param string $routeName the name of the route + * @param array $arguments an array with arguments which will be filled into the url + * @return string the absolute url + */ + public function linkToRouteAbsolute($routeName, $arguments = array()); + /** * Returns an URL for an image or file * @param string $appName the name of the app -- 2.39.5