This commit is contained in:
MLH
2025-04-07 01:13:36 +02:00
parent 3bf2aae1a3
commit cdd3e180a0
24 changed files with 5156 additions and 0 deletions

130
public/admin.html Normal file
View File

@ -0,0 +1,130 @@
<!DOCTYPE html>
<html lang="de">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Admin-Bereich - Turnierverwaltung</title>
<link rel="stylesheet" href="/css/style.css">
</head>
<body>
<nav>
<a href="/admin.html" class="active">Admin</a>
<a href="/referee.html">Schiedsrichter</a>
<a href="/spectator.html">Zuschauer</a>
<a href="#" id="logout-button" style="float: right;">Logout</a>
</nav>
<div class="container">
<h1>Admin-Bereich</h1>
<p id="welcome-message">Willkommen!</p>
<div id="login-section" class="auth-form">
<h2>Login</h2>
<form id="login-form">
<div>
<label for="login-username">Benutzername:</label>
<input type="text" id="login-username" required>
</div>
<div>
<label for="login-password">Passwort:</label>
<input type="password" id="login-password" required>
</div>
<button type="submit">Login</button>
<div id="login-error" class="error-message hidden"></div>
</form>
</div>
<div id="admin-content" class="hidden">
<section id="tournament-management" class="content-section">
<div class="section-header">
<h2>Turnierverwaltung</h2>
<button id="show-add-tournament-form">Neues Turnier hinzufügen</button>
</div>
<form id="tournament-form" class="hidden">
<h3 id="tournament-form-title">Neues Turnier hinzufügen</h3>
<input type="hidden" id="tournament-id"> <div>
<label for="tournament-name">Name:</label>
<input type="text" id="tournament-name" required>
</div>
<div>
<label for="tournament-date">Datum:</label>
<input type="date" id="tournament-date">
</div>
<div>
<label for="tournament-location">Ort:</label>
<input type="text" id="tournament-location">
</div>
<div>
<label for="tournament-type">Turnier-Typ:</label>
<select id="tournament-type" required>
<option value="knockout">KO-System</option>
<option value="group">Gruppenphase</option>
</select>
</div>
<div>
<label for="tournament-game-type">Spiel-Typ (Punkte pro Satz):</label>
<select id="tournament-game-type" required>
<option value="11_points">11 Punkte</option>
<option value="21_points">21 Punkte</option>
</select>
</div>
<div>
<label for="tournament-description">Beschreibung:</label>
<textarea id="tournament-description"></textarea>
</div>
<button type="submit" id="save-tournament-button">Speichern</button>
<button type="button" id="cancel-tournament-button" class="secondary">Abbrechen</button>
<div id="tournament-form-error" class="error-message hidden"></div>
</form>
<div id="tournament-list-message" class="hidden"></div> <table id="tournament-table">
<thead>
<tr>
<th>Name</th>
<th>Datum</th>
<th>Ort</th>
<th>Typ</th>
<th>Status</th>
<th>Aktionen</th>
</tr>
</thead>
<tbody id="tournament-list">
</tbody>
</table>
<p id="loading-tournaments" class="hidden">Lade Turniere...</p>
</section>
<section id="player-management" class="content-section">
<div class="section-header">
<h2>Spielerverwaltung</h2>
<button disabled>Neuen Spieler hinzufügen</button> </div>
<p>Funktionalität für Spieler (hinzufügen, bearbeiten, löschen, importieren, exportieren) wird hier implementiert.</p>
</section>
<section id="user-management" class="content-section">
<div class="section-header">
<h2>Benutzerverwaltung</h2>
<button disabled>Neuen Benutzer hinzufügen</button> </div>
<p>Funktionalität für Benutzer (Admins, Schiedsrichter hinzufügen/verwalten) wird hier implementiert.</p>
</section>
<section id="match-management" class="content-section">
<h2>Spielverwaltung & Ergebnisse</h2>
<p>Funktionalität für Spiele (manuell hinzufügen, Ergebnisse eintragen, Turnierbaum generieren, exportieren) wird hier implementiert.</p>
</section>
<section id="statistics-section" class="content-section">
<h2>Statistiken</h2>
<p>Anzeige von Statistiken (Spielergebnisse, Quoten etc.) wird hier implementiert.</p>
</section>
<section id="settings-section" class="content-section">
<h2>Einstellungen</h2>
<p>Einstellungen (z.B. Backup-Intervall) werden hier implementiert.</p>
</section>
</div> </div> <script src="/js/admin.js"></script>
</body>
</html>