This commit is contained in:
2025-11-22 03:05:38 +01:00
parent d45e971ae0
commit be2bc4634d
3 changed files with 162 additions and 0 deletions

View File

@@ -0,0 +1,7 @@
// public/assets/js/dashboard.js
document.addEventListener('DOMContentLoaded', function () {
// Platzhalter für zukünftige Dashboard-Logik
// z.B. AJAX-Liste der letzten Tests, Filtern, Sortieren etc.
console.log('Dashboard JS loaded');
});

View File

@@ -0,0 +1,47 @@
<?php
// public/dashboard/index.php
require __DIR__ . '/../../config/fileload.php';
// Sprachlogik
$lang = $_GET['lang'] ?? 'de';
$lang = in_array($lang, ['de','en','it','fr'], true) ? $lang : 'de';
// User aus Session holen
$currentUser = $_SESSION['user'] ?? null;
$isLoggedIn = is_array($currentUser) && !empty($currentUser['id']);
// Wenn nicht eingeloggt → zurück zur Login-Seite mit Redirect zurück zum Dashboard
if (!$isLoggedIn) {
if (function_exists('flash_set')) {
flash_set('error', 'Bitte melde dich zuerst an.', 'login');
}
$loginUrl = '/login/?lang=' . urlencode($lang) .
'&view=login' .
'&redirect=' . urlencode('/dashboard/');
header('Location: ' . $loginUrl);
exit;
}
// Seitentitel & Description
$pageTitle = 'Dashboard usbcheck.it';
$pageDescription = 'Verwalte deine USB-Tests, Geräte und Pro-Einstellungen in deinem USBCheck-Dashboard.';
// Navigation kannst du für das Dashboard leer lassen oder anpassen
$navAnchors = [];
// Optional: spezielles Dashboard-JS laden (Platzhalter)
if (function_exists('tpl_add_script')) {
tpl_add_script('/assets/js/dashboard.js', 'footer', true, false, '', null);
}
// Layout-Start
tpl('layout_start', 'structure');
// Dashboard-Content
tpl('dashboard', 'landing', 'dashboard');
// Layout-Ende
tpl('layout_end', 'structure');