37 lines
1.5 KiB
PHP
37 lines
1.5 KiB
PHP
<?php
|
|
require_once __DIR__ . '/includes/bootstrap.php';
|
|
header('Content-Type: application/manifest+json');
|
|
|
|
$logo = get_setting('logo_path');
|
|
$siteName = get_setting('display_name', config()['site']['name']);
|
|
|
|
// Logo-URL ohne Cache-Buster für das Icon verwenden
|
|
$logoClean = $logo ? preg_replace('/\?.*$/', '', $logo) : null;
|
|
|
|
$icons = $logoClean ? [
|
|
['src' => $logoClean, 'sizes' => 'any', 'type' => 'image/png', 'purpose' => 'any maskable'],
|
|
] : [
|
|
['src' => '/assets/icons/icon-192.png', 'sizes' => '192x192', 'type' => 'image/png', 'purpose' => 'any maskable'],
|
|
['src' => '/assets/icons/icon-512.png', 'sizes' => '512x512', 'type' => 'image/png', 'purpose' => 'any maskable'],
|
|
];
|
|
|
|
echo json_encode([
|
|
'id' => '/',
|
|
'name' => $siteName . ' Support',
|
|
'short_name' => $siteName,
|
|
'description' => $siteName . ' Ticketsystem',
|
|
'start_url' => '/home.php',
|
|
'scope' => '/',
|
|
'display' => 'standalone',
|
|
'background_color' => '#f0f4f8',
|
|
'theme_color' => '#0f6f6a',
|
|
'orientation' => 'any',
|
|
'lang' => 'de',
|
|
'icons' => $icons,
|
|
'screenshots' => [],
|
|
'shortcuts' => [
|
|
['name' => 'Neues Ticket', 'url' => '/ticket_new.php', 'description' => 'Neues Support-Ticket erstellen'],
|
|
['name' => 'Meine Tickets','url' => '/dashboard.php', 'description' => 'Meine offenen Tickets'],
|
|
],
|
|
], JSON_PRETTY_PRINT | JSON_UNESCAPED_SLASHES);
|