From c5b53785583eb215eb1ec889333ecf25ecb97e66 Mon Sep 17 00:00:00 2001
From: Joas Schilling <nickvergessen@gmx.de>
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 af5d977eea..f5ec9803ed 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 afdf1b6f29..dbbd8a3bb6 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
-- 
GitLab