*/
public function getAvatar($size = 50)
{
- if ($this->image_id === 0 || $this->image_id === '0' || $this->image_id === null) return '/user_avatar.png';
- return $this->avatar->getThumb($size, $size, false);
+ if ($this->image_id === 0 || $this->image_id === '0' || $this->image_id === null) return baseUrl('/user_avatar.png');
+ return baseUrl($this->avatar->getThumb($size, $size, false));
}
/**
*/
public function getEditUrl()
{
- return '/settings/users/' . $this->id;
+ return baseUrl('/settings/users/' . $this->id);
}
/**
}
if (isset($manifest[$file])) {
- return '/' . $manifest[$file];
+ return baseUrl($manifest[$file]);
}
if (file_exists(public_path($file))) {
- return '/' . $file;
+ return baseUrl($file);
}
throw new InvalidArgumentException("File {$file} not defined in asset manifest.");
return $settingService->get($key, $default);
}
+/**
+ * Helper to create url's relative to the applications root path.
+ * @param $path
+ * @return string
+ */
+function baseUrl($path)
+{
+ $path = trim($path, '/');
+ return rtrim(config('app.url'), '/') . '/' . $path;
+}
+
/**
* Generate a url with multiple parameters for sorting purposes.
* Works out the logic to set the correct sorting direction
<!-- Styles and Fonts -->
<link rel="stylesheet" href="{{ versioned_asset('css/styles.css') }}">
<link rel="stylesheet" media="print" href="{{ versioned_asset('css/print-styles.css') }}">
- <link rel="stylesheet" href="/libs/material-design-iconic-font/css/material-design-iconic-font.min.css">
+ <link rel="stylesheet" href="{{ baseUrl('/libs/material-design-iconic-font/css/material-design-iconic-font.min.css') }}">
<!-- Scripts -->
- <script src="/libs/jquery/jquery.min.js?version=2.1.4"></script>
- <script src="/libs/jquery/jquery-ui.min.js?version=1.11.4"></script>
+ <script src="{{ baseUrl('/libs/jquery/jquery.min.js?version=2.1.4') }}"></script>
+ <script src="{{ baseUrl('/libs/jquery/jquery-ui.min.js?version=1.11.4') }}"></script>
@yield('head')
<div class="container">
<div class="row">
<div class="col-lg-4 col-sm-4" ng-non-bindable>
- <a href="/" class="logo">
+ <a href="{{ baseUrl('/') }}" class="logo">
@if(setting('app-logo', '') !== 'none')
- <img class="logo-image" src="{{ setting('app-logo', '') === '' ? '/logo.png' : setting('app-logo', '') }}" alt="Logo">
+ <img class="logo-image" src="{{ setting('app-logo', '') === '' ? baseUrl('/logo.png') : baseUrl(setting('app-logo', '')) }}" alt="Logo">
@endif
<span class="logo-text">{{ setting('app-name', 'BookStack') }}</span>
</a>
</div>
<div class="col-lg-4 col-sm-3 text-center">
- <form action="/search/all" method="GET" class="search-box">
+ <form action="{{ baseUrl('/search/all') }}" method="GET" class="search-box">
<input id="header-search-box-input" type="text" name="term" tabindex="2" value="{{ isset($searchTerm) ? $searchTerm : '' }}">
<button id="header-search-box-button" type="submit" class="text-button"><i class="zmdi zmdi-search"></i></button>
</form>
<div class="col-lg-4 col-sm-5">
<div class="float right">
<div class="links text-center">
- <a href="/books"><i class="zmdi zmdi-book"></i>Books</a>
+ <a href="{{ baseUrl('/books') }}"><i class="zmdi zmdi-book"></i>Books</a>
@if(isset($currentUser) && userCan('settings-manage'))
- <a href="/settings"><i class="zmdi zmdi-settings"></i>Settings</a>
+ <a href="{{ baseUrl('/settings') }}"><i class="zmdi zmdi-settings"></i>Settings</a>
@endif
@if(!isset($signedIn) || !$signedIn)
- <a href="/login"><i class="zmdi zmdi-sign-in"></i>Sign In</a>
+ <a href="{{ baseUrl('/login') }}"><i class="zmdi zmdi-sign-in"></i>Sign In</a>
@endif
</div>
@if(isset($signedIn) && $signedIn)
</span>
<ul>
<li>
- <a href="/user/{{$currentUser->id}}" class="text-primary"><i class="zmdi zmdi-account zmdi-hc-fw zmdi-hc-lg"></i>View Profile</a>
+ <a href="{{ baseUrl("/user/{$currentUser->id}") }}" class="text-primary"><i class="zmdi zmdi-account zmdi-hc-fw zmdi-hc-lg"></i>View Profile</a>
</li>
<li>
- <a href="/settings/users/{{$currentUser->id}}" class="text-primary"><i class="zmdi zmdi-edit zmdi-hc-fw zmdi-hc-lg"></i>Edit Profile</a>
+ <a href="{{ baseUrl("/settings/users/{$currentUser->id}") }}" class="text-primary"><i class="zmdi zmdi-edit zmdi-hc-fw zmdi-hc-lg"></i>Edit Profile</a>
</li>
<li>
- <a href="/logout" class="text-neg"><i class="zmdi zmdi-run zmdi-hc-fw zmdi-hc-lg"></i>Logout</a>
+ <a href="{{ baseUrl('/logout') }}" class="text-neg"><i class="zmdi zmdi-run zmdi-hc-fw zmdi-hc-lg"></i>Logout</a>
</li>
</ul>
</div>