*/
function baseUrl($path)
{
+ if (strpos($path, 'http') === 0) return $path;
$path = trim($path, '/');
return rtrim(config('app.url'), '/') . '/' . $path;
}
+/**
+ * Get an instance of the redirector.
+ * Overrides the default laravel redirect helper.
+ * Ensures it redirects even when the app is in a subdirectory.
+ *
+ * @param string|null $to
+ * @param int $status
+ * @param array $headers
+ * @param bool $secure
+ * @return \Illuminate\Routing\Redirector|\Illuminate\Http\RedirectResponse
+ */
+function redirect($to = null, $status = 302, $headers = [], $secure = null)
+{
+ if (is_null($to)) {
+ return app('redirect');
+ }
+
+ $to = baseUrl($to);
+
+ return app('redirect')->to($to, $status, $headers, $secure);
+}
+
/**
* Generate a url with multiple parameters for sorting purposes.
* Works out the logic to set the correct sorting direction
if (count($queryStringSections) === 0) return $path;
- return $path . '?' . implode('&', $queryStringSections);
+ return baseUrl($path . '?' . implode('&', $queryStringSections));
}
\ No newline at end of file