72 lines
3.4 KiB
HTML
72 lines
3.4 KiB
HTML
<!DOCTYPE html>
|
||
<html lang="de">
|
||
<head>
|
||
<meta charset="UTF-8" />
|
||
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0" />
|
||
<title>Terminverwaltung - Date-Planer</title>
|
||
<link rel="preconnect" href="https://fonts.googleapis.com" />
|
||
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin />
|
||
<link href="https://fonts.googleapis.com/css2?family=Nunito:wght@400;600;700&family=Quicksand:wght@600;700&display=swap" rel="stylesheet" />
|
||
<link rel="stylesheet" href="style.css" />
|
||
<link rel="stylesheet" href="admin.css" />
|
||
</head>
|
||
<body class="page-admin">
|
||
<main class="admin-shell">
|
||
<section id="loginView" class="login-view" aria-labelledby="loginTitle">
|
||
<p class="eyebrow">Date-Planer</p>
|
||
<h1 id="loginTitle">Terminverwaltung</h1>
|
||
<p class="login-copy">Melde dich an, um verfügbare Tage zu verwalten.</p>
|
||
<form id="loginForm" class="login-form">
|
||
<label for="passwordInput">Passwort</label>
|
||
<input id="passwordInput" name="password" type="password" autocomplete="current-password" required />
|
||
<button class="btn btn-primary" type="submit">Anmelden</button>
|
||
</form>
|
||
<p id="loginMessage" class="form-message" role="status" aria-live="polite"></p>
|
||
</section>
|
||
|
||
<section id="adminView" class="admin-view hidden" aria-labelledby="adminTitle">
|
||
<header class="admin-header">
|
||
<div>
|
||
<p class="eyebrow">Date-Planer</p>
|
||
<h1 id="adminTitle">Verfügbare Tage</h1>
|
||
</div>
|
||
<button id="logoutBtn" class="text-action" type="button">Abmelden</button>
|
||
</header>
|
||
|
||
<section class="admin-section add-date-section" aria-labelledby="addDateTitle">
|
||
<div class="section-heading">
|
||
<h2 id="addDateTitle">Verfügbare Tage planen</h2>
|
||
<p>Einmal klicken für kurz, zweimal für lang und ein drittes Mal zum Entfernen.</p>
|
||
</div>
|
||
<div class="admin-calendar" aria-label="Kalender zur Terminplanung">
|
||
<div class="calendar-header">
|
||
<button id="prevMonthBtn" class="month-nav-btn" type="button" aria-label="Vorheriger Monat">‹</button>
|
||
<h3 id="monthLabel" class="month-label">Monat Jahr</h3>
|
||
<button id="nextMonthBtn" class="month-nav-btn" type="button" aria-label="Nächster Monat">›</button>
|
||
</div>
|
||
<div class="weekday-row" id="weekdayRow"></div>
|
||
<div class="day-grid" id="dayGrid"></div>
|
||
</div>
|
||
<div class="calendar-legend" aria-label="Legende">
|
||
<span><i class="legend-dot is-short"></i>Kurz</span>
|
||
<span><i class="legend-dot is-long"></i>Lang</span>
|
||
</div>
|
||
<button id="saveDatesBtn" class="btn btn-primary" type="button">Änderungen speichern</button>
|
||
<p id="addDateMessage" class="form-message" role="status" aria-live="polite"></p>
|
||
</section>
|
||
|
||
<section class="admin-section dates-section" aria-labelledby="datesTitle">
|
||
<div class="section-heading dates-heading">
|
||
<div>
|
||
<h2 id="datesTitle">Eingetragene Tage</h2>
|
||
<p id="dateCount">Lade Termine...</p>
|
||
</div>
|
||
</div>
|
||
<ul id="datesList" class="dates-list" aria-live="polite"></ul>
|
||
<p id="emptyDates" class="empty-dates hidden">Noch keine Termine eingetragen.</p>
|
||
</section>
|
||
</section>
|
||
</main>
|
||
<script src="admin.js" defer></script>
|
||
</body>
|
||
</html> |