120 lines
4.6 KiB
PHP
120 lines
4.6 KiB
PHP
<?php
|
||
$username = $_SESSION['username'] ?? 'Gast';
|
||
$is_superuser = $_SESSION['is_superuser'] ?? false;
|
||
$is_admin = $_SESSION['is_admin'] ?? false;
|
||
|
||
$db_res = DatabaseShow(
|
||
"Benutzer",
|
||
"NACHNAME, EMAIL, ROLLE, HOME_IP",
|
||
"NAME = ?",
|
||
$username
|
||
);
|
||
|
||
?>
|
||
|
||
<div class="home-dashboard">
|
||
<div class="links-container">
|
||
|
||
<div class="link-group">
|
||
<h3 style="background-color: #007bff;">👤 Benutzerprofil</h3>
|
||
<div class="group-links" style="padding: 10px; color: inherit;">
|
||
<p style="margin: 5px 0;"><strong>Name:</strong> <code><?= htmlspecialchars($username) ?></code></p>
|
||
<?php if ($username != 'gast'): ?>
|
||
<p style="margin: 5px 0;"><strong>Nachname:</strong>
|
||
<code><?= htmlspecialchars($db_res[0]['NACHNAME']) ?></code>
|
||
</p>
|
||
<p style="margin: 5px 0;"><strong>E-Mail:</strong>
|
||
<code><?= htmlspecialchars($db_res[0]['EMAIL']) ?></code>
|
||
</p>
|
||
<p style="margin: 5px 0;"><strong>Benutzerrolle:</strong>
|
||
<code><?= htmlspecialchars($db_res[0]['ROLLE']) ?></code>
|
||
</p>
|
||
<p style="margin: 5px 0;"><strong>Home IP:</strong>
|
||
<code><?= htmlspecialchars($db_res[0]['HOME_IP']) ?></code>
|
||
</p>
|
||
<?php endif ?>
|
||
</div>
|
||
</div>
|
||
|
||
<div class="link-group">
|
||
<h3 style="background-color: #28a745;">🛡️ Status & Rechte</h3>
|
||
<div class="group-links"
|
||
style="padding: 10px; display: flex; flex-direction: row; gap: 10px; flex-wrap: wrap;">
|
||
<?php if ((new getSpecificData())->getIsAdmin()): ?>
|
||
<span
|
||
style="background: #dc3545; color: white; padding: 4px 10px; border-radius: 15px; font-size: 0.8rem; font-weight: bold;">Admin</span>
|
||
<?php endif; ?>
|
||
|
||
<?php if ((new getSpecificData())->getIsSuperuser()): ?>
|
||
<span
|
||
style="background: #ffc107; color: #000; padding: 4px 10px; border-radius: 15px; font-size: 0.8rem; font-weight: bold;">Superuser</span>
|
||
<?php endif; ?>
|
||
|
||
<?php if (!(new getSpecificData())->getIsSuperuser() && !(new getSpecificData())->getIsAdmin()): ?>
|
||
<span
|
||
style="background: #6c757d; color: white; padding: 4px 10px; border-radius: 15px; font-size: 0.8rem; font-weight: bold;">Standard-Nutzer</span>
|
||
<?php endif; ?>
|
||
</div>
|
||
</div>
|
||
|
||
<div class="link-group">
|
||
<h3 style="background-color: #17a2b8;">ℹ️ System-Info</h3>
|
||
<div class="group-links" style="padding: 10px;">
|
||
<p style="margin: 5px 0;"><strong>Datum:</strong>
|
||
<code><?= date('d.m.Y') ?><br></code>
|
||
</p>
|
||
<p style="margin: 5px 0;"><strong>Session-Status:</strong>
|
||
<code>Aktiv</code>
|
||
</p>
|
||
<?php if ($is_admin): ?>
|
||
<p style="margin: 5px 0;"><strong>Client IP:</strong>
|
||
<code><?= htmlspecialchars((new getSpecificData())->getClientIP()) ?></code>
|
||
</p>
|
||
<p style="margin: 5px 0;"><strong>Server IP:</strong>
|
||
<code><?= htmlspecialchars((new getSpecificData())->getServerIP()) ?></code>
|
||
</p>
|
||
<p style="margin: 5px 0;"><strong>Geo IP:</strong>
|
||
<code><?= htmlspecialchars((new getSpecificData())->getGeoIP((new getSpecificData())->getClientIP())) ?></code>
|
||
</p>
|
||
<p style="margin: 5px 0;"><strong>Database IP:</strong>
|
||
<code><?= htmlspecialchars((new getSpecificData())->getDatabase()) ?></code>
|
||
</p>
|
||
<p style="margin: 5px 0;"><strong>Wetter:</strong>
|
||
<code><?= htmlspecialchars((new getSpecificData())->getWeather()['aktuell']) ?></code>
|
||
</p>
|
||
<?php endif ?>
|
||
</div>
|
||
</div>
|
||
|
||
</div>
|
||
</div>
|
||
|
||
<style>
|
||
/* Zusätzliche Inline-Styles für die Feinabstimmung in der home_info */
|
||
.home-dashboard {
|
||
animation: fadeIn 0.5s ease-in-out;
|
||
}
|
||
|
||
code {
|
||
background: rgba(0, 0, 0, 0.1);
|
||
padding: 2px 5px;
|
||
border-radius: 4px;
|
||
font-family: monospace;
|
||
}
|
||
|
||
body.dark-mode code {
|
||
background: rgba(255, 255, 255, 0.1);
|
||
}
|
||
|
||
@keyframes fadeIn {
|
||
from {
|
||
opacity: 0;
|
||
transform: translateY(10px);
|
||
}
|
||
|
||
to {
|
||
opacity: 1;
|
||
transform: translateY(0);
|
||
}
|
||
}
|
||
</style>
|