<meta name="viewport" content="width=device-width">
<meta name="token" content="{{ csrf_token() }}">
<meta name="base-url" content="{{ url('/') }}">
- <meta name="theme-color" content="{{ setting('app-color') }}"/>
+ <meta name="theme-color" content="{{(setting()->getForCurrentUser('dark-mode-enabled') ? setting('app-color-dark') : setting('app-color'))}}"/>
<!-- Social Cards Meta -->
<meta property="og:title" content="{{ isset($pageTitle) ? $pageTitle . ' | ' : '' }}{{ setting('app-name') }}">
<link rel="icon" type="image/png" sizes="64x64" href="{{ setting('app-icon-64') ?: url('/icon-64.png') }}">
<link rel="icon" type="image/png" sizes="32x32" href="{{ setting('app-icon-32') ?: url('/icon-32.png') }}">
+ <!-- PWA -->
+ <link rel="manifest" href="{{ url('/manifest.json') }}" crossorigin="use-credentials">
+ <meta name="mobile-web-app-capable" content="yes">
+
@yield('head')
<!-- Custom Styles & Head Content -->
- @include('common.custom-styles')
- @include('common.custom-head')
+ @include('layouts.parts.custom-styles')
+ @include('layouts.parts.custom-head')
@stack('head')
class="@stack('body-class')">
@include('layouts.parts.base-body-start')
- @include('common.skip-to-content')
- @include('common.notifications')
- @include('common.header')
+ @include('layouts.parts.skip-to-content')
+ @include('layouts.parts.notifications')
+ @include('layouts.parts.header')
<div id="content" components="@yield('content-components')" class="block">
@yield('content')
</div>
- @include('common.footer')
+ @include('layouts.parts.footer')
<div component="back-to-top" class="back-to-top print-hidden">
<div class="inner">
Route::get('/status', [SettingControllers\StatusController::class, 'show']);
Route::get('/robots.txt', [HomeController::class, 'robots']);
Route::get('/favicon.ico', [HomeController::class, 'favicon']);
+ Route::get('/manifest.json', [HomeController::class, 'pwaManifest']);
// Authenticated routes...
Route::middleware('auth')->group(function () {
Route::post('/images/drawio', [UploadControllers\DrawioImageController::class, 'create']);
Route::get('/images/edit/{id}', [UploadControllers\ImageController::class, 'edit']);
Route::put('/images/{id}/file', [UploadControllers\ImageController::class, 'updateFile']);
+ Route::put('/images/{id}/rebuild-thumbnails', [UploadControllers\ImageController::class, 'rebuildThumbnails']);
Route::put('/images/{id}', [UploadControllers\ImageController::class, 'update']);
Route::delete('/images/{id}', [UploadControllers\ImageController::class, 'destroy']);