Files
qplanner-arbeitszeit-auswer…/index.html
T
mike 1b4c99c08d Dateien nach "/" hochladen
Release v0.42.0 Modern UI
2026-06-30 09:57:21 +00:00

155 lines
5.4 KiB
HTML
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
<!doctype html>
<html lang="de">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>qPlanner Arbeitszeit-Auswertung</title>
<link rel="stylesheet" href="style.css">
</head>
<body>
<header class="topbar">
<div class="brand">
<span class="brand-icon" aria-hidden="true"></span>
<div>
<strong>qPlanner</strong>
<span>Arbeitszeit-Auswertung</span>
</div>
</div>
</header>
<main class="app">
<section class="hero">
<div class="hero-content">
<p class="eyebrow">qPlanner CSV-Auswertung</p>
<h1>Arbeitszeit-Saldo berechnen</h1>
<p class="intro">CSV-Datei hochladen, Netto-Arbeitszeiten auslesen und Plus-/Minusstunden berechnen. Samstage, Sonntage und gesetzliche Feiertage im gewählten Bundesland werden mit 0:00 Stunden Sollzeit bewertet.</p>
<section class="settings" aria-label="Einstellungen">
<label class="setting-card">
<span class="setting-icon clock" aria-hidden="true"></span>
<span class="setting-content">
<span class="setting-label">Sollzeit pro Arbeitstag (MoFr)</span>
<input id="targetTime" type="time" value="08:00" step="60">
</span>
</label>
<label class="setting-card">
<span class="setting-icon location" aria-hidden="true"></span>
<span class="setting-content">
<span class="setting-label">Bundesland / Feiertagsregel</span>
<select id="federalState">
<option value="NW">Nordrhein-Westfalen</option>
<option value="BY">Bayern</option>
<option value="BY_MARIA">Bayern inkl. Mariä Himmelfahrt</option>
<option value="NI">Niedersachsen</option>
<option value="HH">Hamburg</option>
</select>
</span>
</label>
</section>
</div>
<section id="dropZone" class="drop-zone" aria-label="CSV-Datei hochladen">
<input id="csvFile" type="file" accept=".csv,text/csv">
<div class="drop-content">
<span class="upload-icon" aria-hidden="true"></span>
<strong>CSV-Datei hier ablegen</strong>
<span>oder klicken zum Auswählen</span>
<em>Unterstützt: .csv Dateien</em>
</div>
</section>
</section>
<section id="errorBox" class="error hidden"></section>
<p id="formatHint" class="format-hint"></p>
<section id="summary" class="summary hidden" aria-live="polite">
<article class="stat-card stat-days">
<span class="stat-icon" aria-hidden="true"></span>
<span>Arbeitstage</span>
<strong id="totalDays">0</strong>
<small>Tage mit Arbeitszeit</small>
</article>
<article class="stat-card stat-work">
<span class="stat-icon" aria-hidden="true"></span>
<span>Arbeitszeit gesamt</span>
<strong id="totalWork">0:00</strong>
<small>Stunden</small>
</article>
<article class="stat-card stat-target">
<span class="stat-icon" aria-hidden="true"></span>
<span>Sollzeit gesamt</span>
<strong id="totalTarget">0:00</strong>
<small>Stunden</small>
</article>
<article class="stat-card stat-saldo">
<span class="stat-icon" aria-hidden="true"></span>
<span>Saldo gesamt</span>
<strong id="totalSaldo">±0:00</strong>
<small>Stunden</small>
</article>
</section>
<section id="results" class="results hidden">
<div class="panel table-panel">
<div class="table-header">
<div class="section-title">
<span aria-hidden="true"></span>
<h2>Monatsübersicht</h2>
</div>
<button id="exportCsv" type="button">⇩ Ergebnis als CSV exportieren</button>
</div>
<div class="table-wrap">
<table>
<thead>
<tr>
<th>Monat</th>
<th>Arbeitstage</th>
<th>Feiertage</th>
<th>Arbeitszeit</th>
<th>Sollzeit</th>
<th>Saldo</th>
</tr>
</thead>
<tbody id="monthTable"></tbody>
</table>
</div>
</div>
<details class="panel details" open>
<summary>
<span class="section-title"><span aria-hidden="true"></span><strong>Tagesdetails</strong></span>
<span class="summary-hint">ein-/ausblenden</span>
</summary>
<div class="table-wrap">
<table>
<thead>
<tr>
<th>Datum</th>
<th>Wochentag</th>
<th>Beginn</th>
<th>Ende</th>
<th>Arbeitszeit</th>
<th>Sollzeit</th>
<th>Saldo</th>
<th>Feiertag</th>
<th>Ruhepause</th>
<th>Warnungen</th>
</tr>
</thead>
<tbody id="dayTable"></tbody>
</table>
</div>
</details>
</section>
</main>
<footer class="app-footer">
<span id="appVersion">v0.42.0</span>
<span aria-hidden="true"></span>
<a href="https://git.mike-lindner.net/mike/qplanner-arbeitszeit-auswertung" target="_blank" rel="noopener noreferrer">Repository ↗</a>
</footer>
<script src="app.js"></script>
</body>
</html>