integrieren dienstplan csv und neue index

This commit is contained in:
Pascal 2026-01-02 10:37:39 +01:00
parent 1eba2946df
commit bc0f8874cc
8 changed files with 329 additions and 60 deletions

BIN
bilder/geraetehaus.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 490 KiB

BIN
bilder/geraetehaus.webp Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 42 KiB

24
dienstplan/dienst.html Normal file
View File

@ -0,0 +1,24 @@
<!DOCTYPE html>
<html lang="de">
<head>
<meta charset="UTF-8">
<title>Nächster Feuerwehr-Dienst</title>
<style>
.dienst {
border: 2px solid #c00;
padding: 1rem;
max-width: 400px;
font-family: Arial, sans-serif;
}
</style>
</head>
<body>
<h2>Nächster Dienst</h2>
<div id="nextDienst" class="dienst">
Wird geladen…
</div>
<script src="dienstplan.js"></script>
</body>
</html>

View File

@ -0,0 +1,4 @@
datum,tag,zeit,ort,art,beschreibung
2026-01-02,Fr,19:00,Stadt Wehlen,Theorie,Arbeitsschutz
2026-01-10,Sa,16:30,SW/Pö,Fest,Weihnachtsbaumverbrennen
2026-01-12,Mo,19:00,SW/Pö,Gemeinsamer Dienst,Maschinisten-Dienst
1 datum tag zeit ort art beschreibung
2 2026-01-02 Fr 19:00 Stadt Wehlen Theorie Arbeitsschutz
3 2026-01-10 Sa 16:30 SW/Pö Fest Weihnachtsbaumverbrennen
4 2026-01-12 Mo 19:00 SW/Pö Gemeinsamer Dienst Maschinisten-Dienst

48
dienstplan/dienstplan.js Normal file
View File

@ -0,0 +1,48 @@
fetch("dienstplan/dienstplan.csv")
.then(res => res.text())
.then(text => {
const lines = text.trim().split("\n").slice(1);
const today = new Date();
today.setHours(0, 0, 0, 0);
const dienste = lines
.map(line => {
const [datum, tag, zeit, ort, art, beschreibung] = line.split(",");
return {
datum: new Date(datum),
tag,
zeit,
ort,
art,
beschreibung
};
})
.filter(d => d.datum >= today)
.sort((a, b) => a.datum - b.datum);
const box = document.getElementById("nextDienst");
if (!dienste.length) {
box.innerHTML = "<p>Kein weiterer Dienst geplant.</p>";
return;
}
const d = dienste[0];
box.innerHTML = `
<p>
<strong>${d.datum.toLocaleDateString("de-DE")}</strong><br>
${d.tag}, ${d.zeit} Uhr
</p>
<p>
<strong>${d.art}</strong><br>
${d.beschreibung}<br>
<small class="text-muted">${d.ort}</small>
</p>
`;
})
.catch(err => {
document.getElementById("nextDienst").innerHTML =
"<p class='text-danger'>Dienstplan konnte nicht geladen werden.</p>";
console.error(err);
});

Binary file not shown.

View File

@ -13,11 +13,12 @@
crossorigin="anonymous"
/>
<!-- Deine bestehende nav.css -->
<!-- Navigation -->
<link rel="stylesheet" href="nav.css" />
</head>
<body>
<!-- NAVBAR -->
<nav class="navbar navbar-expand-lg navbar-custom">
<div class="container-fluid">
@ -29,6 +30,7 @@
/>
<span>Feuerwehr Stadt Wehlen</span>
</a>
<button
class="navbar-toggler"
type="button"
@ -40,9 +42,11 @@
>
<span class="navbar-toggler-icon"></span>
</button>
<div class="collapse navbar-collapse" id="navbarNav">
<ul class="navbar-nav ms-auto">
<li class="nav-item"><a class="nav-link" href="#">Aktuelles</a></li>
<li class="nav-item dropdown">
<a
class="nav-link dropdown-toggle"
@ -60,81 +64,114 @@
<li><a class="dropdown-item" href="#">Mitglieder</a></li>
</ul>
</li>
<li class="nav-item"><a class="nav-link" href="#">Veranstaltungen</a></li>
<li class="nav-item"><a class="nav-link" href="#">Kontakt/Impressum</a></li>
<li class="nav-item"><a class="nav-link" href="#">Kontakt / Impressum</a></li>
</ul>
</div>
</div>
</nav>
<!-- Facebook-SDK laden -->
<div id="fb-root"></div>
<script
async
defer
crossorigin="anonymous"
src="https://connect.facebook.net/de_DE/sdk.js#xfbml=1&version=v23.0"
></script>
<!-- ====== CONTENT ====== -->
<div class="container py-4">
<div class="row g-4">
<!-- NÄCHSTER DIENST -->
<div class="col-lg-6 col-md-6 col-sm-12">
<div class="info-box h-100">
<h3>Nächster Dienst</h3>
<div id="nextDienst">
<small class="text-muted">Wird geladen…</small>
</div>
</div>
</div>
<!-- VERANSTALTUNG -->
<div class="col-lg-6 col-md-6 col-sm-12">
<div class="info-box h-100">
<h3>Veranstaltung</h3>
<p>
<strong>Sonnenwendfeier</strong><br>
Datum: Sa, 21.06.<br>
Beginn: ab 11:00 Uhr<br>
Wo: Elbwiesen
</p>
</div>
</div>
<!-- Facebook-Plugin -->
<div class="fb-super-wrapper">
<div class="fb-align-center">
<div class="fb-page"
data-href="https://www.facebook.com/ffw.stadtwehlen/?locale=de_DE"
data-tabs="timeline"
data-height="700"
data-small-header="false"
data-adapt-container-width="true"
data-hide-cover="false"
data-show-facepile="false">
<blockquote cite="https://www.facebook.com/ffw.stadtwehlen/" class="fb-xfbml-parse-ignore">
<a href="https://www.facebook.com/ffw.stadtwehlen/">Feuerwehr Stadt Wehlen</a>
</blockquote>
</div>
<!--
==================================================
FACEBOOK WURDE BEWUSST AUSKOMMENTIERT
(kommt später auf eigene Unterseite)
==================================================
<div class="row justify-content-center mt-5">
<div class="col-lg-8 col-md-10">
<div class="fb-page"
data-href="https://www.facebook.com/ffw.stadtwehlen/?locale=de_DE"
data-tabs="timeline"
data-height="700">
</div>
</div>
</div>
==================================================
-->
</div>
</div>
<!-- ====== ENDE CONTENT ====== -->
<!-- FOOTER -->
<footer class="container-fluid py-4">
<div class="row text-center text-md-start">
<div class="col-md-6 mb-3">
<h6><strong><u>Datum der letzten Aktualisierung</u></strong></h6>
<p class="mb-0">13. Juni 2025</p>
<small>(Version 1.0)</small>
</div>
<div class="col-md-6">
<h6><strong><u>Kleine Statistik der FFw Stadt Wehlen</u></strong></h6>
<table class="table table-borderless text-warning mb-0">
<tbody>
<tr>
<td><strong>Aktive Kameraden/innen:</strong></td>
<td>27</td>
</tr>
<tr>
<td><strong>Jugendfeuerwehr:</strong></td>
<td>23</td>
</tr>
<tr>
<td><strong>Passive Kameraden:</strong></td>
<td>9</td>
</tr>
<tr>
<td><strong>Mitglieder Förderverein:</strong></td>
<td>172</td>
</tr>
</tbody>
</table>
</div>
<footer class="container-fluid py-4">
<div class="row text-center text-md-start">
<div class="col-md-6 mb-3">
<h6><strong><u>Datum der letzten Aktualisierung</u></strong></h6>
<p class="mb-0">13. Juni 2025</p>
<small>(Version 1.0)</small>
</div>
<div class="col-md-6">
<h6><strong><u>Kleine Statistik der FFw Stadt Wehlen</u></strong></h6>
<table class="table table-borderless text-warning mb-0">
<tbody>
<tr>
<td><strong>Aktive Kameraden/innen:</strong></td>
<td data-stat="aktive">27</td>
</tr>
<tr>
<td><strong>Jugendfeuerwehr:</strong></td>
<td data-stat="jugend">23</td>
</tr>
<tr>
<td><strong>Passive Kameraden:</strong></td>
<td data-stat="passive">9</td>
</tr>
<tr>
<td><strong>Mitglieder Förderverein:</strong></td>
<td data-stat="foerderverein">172</td>
</tr>
</tbody>
</table>
</div>
</div>
<link rel="stylesheet" href="footer.css" />
</footer>
<link rel="stylesheet" href="footer.css" />
</footer>
<!-- Bootstrap-JavaScript -->
<!-- Bootstrap-JS -->
<script
src="https://cdn.jsdelivr.net/npm/bootstrap@5.3.3/dist/js/bootstrap.bundle.min.js"
integrity="sha384-YvpcrYf0tY3lHB60NNkmXc5s9fDVZLESaAA55NDzOxhy9GkcIdslK1eN7N6jIeHz"
crossorigin="anonymous"
></script>
<!-- Dienstplan -->
<script src="dienstplan/dienstplan.js"></script>
</body>
</html>
</html>

156
index_test.html Normal file
View File

@ -0,0 +1,156 @@
<!DOCTYPE html>
<html lang="de">
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1" />
<title>Feuerwehr Stadt Wehlen</title>
<link
href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.3/dist/css/bootstrap.min.css"
rel="stylesheet"
integrity="sha384-QWTKZyjpPEjISv5WaRU9OFeRpok6YctnYmDr5pNlyT2bRjXh0JMhjY6hW+ALEwIH"
crossorigin="anonymous"
/>
<link rel="stylesheet" href="nav.css" />
<link rel="stylesheet" href="footer.css" />
<style>
/* Standard-Styling für Mobile */
.main-image {
width: 100%;
height: auto;
border-radius: 0.5rem;
box-shadow: 0 4px 12px rgba(0,0,0,0.15);
}
/* Desktop-Optimierung */
@media (min-width: 992px) {
.sticky-sidebar {
position: sticky;
top: 20px;
z-index: 10;
}
.main-image {
width: 60%;
}
}
/* Info-Boxen Styling */
.info-box {
background-color: #fff;
padding: 1.5rem;
border-radius: 0.5rem;
border-left: 5px solid #e60000;
box-shadow: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.075);
margin-bottom: 1.5rem;
}
</style>
</head>
<body>
<nav class="navbar navbar-expand-lg navbar-custom shadow-sm">
<div class="container-fluid">
<a class="navbar-brand d-flex align-items-center" href="#">
<img
src="ffw_transp_72.gif"
alt="Feuerwehr Stadt Wehlen"
style="height: 3em; width: auto; margin-right: 0.5rem;"
/>
<span>Feuerwehr Stadt Wehlen</span>
</a>
<button class="navbar-toggler" type="button" data-bs-toggle="collapse" data-bs-target="#navbarNav">
<span class="navbar-toggler-icon"></span>
</button>
<div class="collapse navbar-collapse" id="navbarNav">
<ul class="navbar-nav ms-auto">
<li class="nav-item"><a class="nav-link" href="#">Aktuelles</a></li>
<li class="nav-item dropdown">
<a class="nav-link dropdown-toggle" href="#" data-bs-toggle="dropdown">Über uns</a>
<ul class="dropdown-menu">
<li><a class="dropdown-item" href="Geschichte.html">Geschichte</a></li>
<li><a class="dropdown-item" href="technik.html">Technik</a></li>
<li><a class="dropdown-item" href="#">Mitglieder</a></li>
</ul>
</li>
<li class="nav-item"><a class="nav-link" href="#">Veranstaltungen</a></li>
<li class="nav-item"><a class="nav-link" href="#">Kontakt / Impressum</a></li>
</ul>
</div>
</div>
</nav>
<div class="container-fluid px-lg-5 py-4">
<div class="row g-4 align-items-start">
<div class="col-lg-3 col-md-4 order-2 order-lg-1">
<div class="sticky-sidebar">
<div class="info-box">
<h3 class="h5 fw-bold text-danger">Nächster Dienst</h3>
<div id="nextDienst">
<p class="mb-1"><strong>2.1.2026</strong></p>
<p class="mb-3 text-muted">Fr, 18:00 Uhr</p>
<p class="mb-0"><strong>Theorie</strong></p>
<p class="small text-secondary">Arbeitsschutz</p>
</div>
</div>
<div class="info-box">
<h3 class="h5 fw-bold text-danger">Veranstaltung</h3>
<p class="mb-0">
<strong>Sonnenwendfeier</strong><br>
Datum: Sa, 21.06.<br>
Beginn: ab 11:00 Uhr<br>
Wo: Elbwiesen
</p>
</div>
</div>
</div>
<div class="col-lg-6 col-md-8 order-1 order-lg-2 text-center">
<picture>
<source srcset="bilder/geraetehaus.webp" type="image/webp">
<img
src="bilder/geraetehaus.png"
alt="Gerätehaus der Feuerwehr Stadt Wehlen"
class="main-image mx-auto d-block"
loading="lazy"
>
</picture>
</div>
<div class="col-lg-3 d-none d-lg-block order-lg-3"></div>
</div>
</div>
<footer class="container-fluid py-4 mt-auto border-top">
<div class="row justify-content-center align-items-center">
<div class="col-lg-4 col-md-5 text-lg-end text-center mb-3 mb-lg-0">
<h6 class="fw-bold text-decoration-underline">Letzte Aktualisierung</h6>
<p class="mb-0">13. Juni 2025</p>
<small class="text-muted">(Version 1.2)</small>
</div>
<div class="col-lg-1 d-none d-lg-block"></div>
<div class="col-lg-4 col-md-5 text-lg-start text-center">
<h6 class="fw-bold text-decoration-underline">Kleine Statistik der FFw Stadt Wehlen</h6>
<p class="mb-0 small">
<strong>Aktive:</strong> 27 | <strong>Jugend:</strong> 23 | <strong>Passive:</strong> 9 | <strong>Förderverein:</strong> 172
</p>
</div>
</div>
</footer>
<script src="https://cdn.jsdelivr.net/npm/bootstrap@5.3.3/dist/js/bootstrap.bundle.min.js"></script>
<script src="dienstplan/dienstplan.js"></script>
</body>
</html>