Echte Karte auf Unternehmen und Kontakt (MapLibre + OpenFreeMap)
Ersetzt die schematische Karte durch MapLibre GL 6.11 (lokal eingebunden, ohne React, da die Seite statisch ist). Kacheln vom OpenFreeMap-Stil "dark", auf die Nachtblau-Palette umgefärbt; Marker mit Label, lädt beim Heranscrollen und zoomt sanft auf den Standort. Die schematische Karte bleibt als Vorschau und Fallback ohne WebGL. Datenschutzerklärung um den Kartenanbieter ergänzt. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
1 parent
5172b54339
commit
09f40da363
14 files changed
+1139
-43
No files matched your search
+19
-14
@@ -20,6 +20,7 @@ TEL_HREF = "tel:+4987114269101"
|
||||
SOS = "0160 / 836 57 53"
|
||||
SOS_HREF = "tel:+491608365753"
|
||||
MAIL = "info@kirschner-service.de"
|
||||
GEO = (12.1740033, 48.5646225) # Etzstraße 45, Ergolding (OpenStreetMap)
|
||||
MAPS = "https://www.google.com/maps/search/?api=1&query=Etzstra%C3%9Fe+45%2C+84030+Ergolding"
|
||||
|
||||
|
||||
@@ -193,7 +194,10 @@ FOOTER = f'''
|
||||
|
||||
|
||||
def page(file, title, desc, body, intro=False):
|
||||
html = head(title, desc, file, intro) + "\n<body>" + header(file) + f'\n<main id="inhalt">\n{body}\n</main>' + FOOTER + "\n</body>\n</html>\n"
|
||||
h = head(title, desc, file, intro)
|
||||
if "data-map" in body:
|
||||
h = h.replace("</head>", '<script type="module" src="assets/map.js"></script>\n</head>')
|
||||
html = h + "\n<body>" + header(file) + f'\n<main id="inhalt">\n{body}\n</main>' + FOOTER + "\n</body>\n</html>\n"
|
||||
(OUT / file).write_text(html, encoding="utf-8")
|
||||
print("geschrieben:", file, len(html))
|
||||
|
||||
@@ -446,10 +450,9 @@ UNTERNEHMEN = page_hero("Das Original seit 2003.",
|
||||
<a class="btn" href="{MAPS}" target="_blank" rel="noopener">Route planen {I_ARROW}</a>
|
||||
</div>
|
||||
</div>
|
||||
<a class="map reveal-img" href="{MAPS}" target="_blank" rel="noopener" aria-label="Standort in Google Maps öffnen (externe Seite)">
|
||||
{MAP_SVG}
|
||||
<span class="map__pin"><span>Kirschner Gebäudeservice</span><i></i></span>
|
||||
</a>
|
||||
<div class="map reveal-img" data-map data-lng="{GEO[0]}" data-lat="{GEO[1]}" data-label="Kirschner Gebäudeservice" role="region" aria-label="Karte: Kirschner Gebäudeservice, Etzstraße 45, Ergolding">
|
||||
<div class="map__placeholder" aria-hidden="true">{MAP_SVG}<span class="map__pin"><span>Kirschner Gebäudeservice</span><i></i></span></div>
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
||||
'''
|
||||
@@ -540,10 +543,9 @@ KONTAKT = page_hero("Kontakt", "", "balkone") + f'''
|
||||
<p class="lead" data-reveal>Kirschner Gebäudeservice<br>Etzstraße 45<br>84030 Ergolding</p>
|
||||
<div class="btn-row" data-reveal><a class="btn" href="{MAPS}" target="_blank" rel="noopener">Route planen {I_ARROW}</a></div>
|
||||
</div>
|
||||
<a class="map reveal-img" href="{MAPS}" target="_blank" rel="noopener" aria-label="Standort in Google Maps öffnen (externe Seite)">
|
||||
{MAP_SVG}
|
||||
<span class="map__pin"><span>Kirschner Gebäudeservice</span><i></i></span>
|
||||
</a>
|
||||
<div class="map reveal-img" data-map data-lng="{GEO[0]}" data-lat="{GEO[1]}" data-label="Kirschner Gebäudeservice" role="region" aria-label="Karte: Kirschner Gebäudeservice, Etzstraße 45, Ergolding">
|
||||
<div class="map__placeholder" aria-hidden="true">{MAP_SVG}<span class="map__pin"><span>Kirschner Gebäudeservice</span><i></i></span></div>
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
||||
'''
|
||||
@@ -594,7 +596,7 @@ IMPRESSUM = page_hero("Impressum", "Angaben gemäß § 5 Digitale-Dienste-Gesetz
|
||||
</section>'''
|
||||
page("impressum.html", "Impressum — Kirschner Gebäudeservice", "Impressum von Kirschner Gebäudeservice, Etzstraße 45, 84030 Ergolding.", IMPRESSUM)
|
||||
|
||||
DATENSCHUTZ = page_hero("Datenschutz", "Diese Website setzt keine Cookies, verwendet kein Tracking und lädt nichts von fremden Servern.", small=True) + f'''
|
||||
DATENSCHUTZ = page_hero("Datenschutz", "Diese Website setzt keine Cookies und verwendet kein Tracking.", small=True) + f'''
|
||||
<section class="section theme-light" style="padding-top: var(--s6)">
|
||||
<div class="wrap legal">
|
||||
<h2>1. Verantwortlicher</h2>
|
||||
@@ -604,10 +606,13 @@ DATENSCHUTZ = page_hero("Datenschutz", "Diese Website setzt keine Cookies, verwe
|
||||
<p>Beim Aufruf dieser Website verarbeitet unser Hosting-Anbieter technisch notwendige Daten (IP-Adresse, Datum und Uhrzeit, aufgerufene Seite, Referrer, Browser und Betriebssystem), um die Seite auszuliefern und die Sicherheit des Betriebs zu gewährleisten. Rechtsgrundlage ist Art. 6 Abs. 1 lit. f DSGVO; unser berechtigtes Interesse liegt im sicheren und stabilen Betrieb der Website.</p>
|
||||
<span class="todo">Offen: Name und Anschrift des Hosting-Anbieters, Abschluss eines Auftragsverarbeitungsvertrags (Art. 28 DSGVO) und Speicherdauer der Logfiles eintragen.</span>
|
||||
|
||||
<h2>3. Keine Cookies, kein Tracking, keine Fremdinhalte</h2>
|
||||
<p>Diese Website setzt keine Cookies und verwendet keine Analyse- oder Marketingwerkzeuge. Schriften und Skripte liegen auf unserem eigenen Server; es werden keine Inhalte von Drittanbietern nachgeladen. Lediglich im Browser-Sitzungsspeicher (sessionStorage) wird vermerkt, dass die Eröffnungsanimation bereits gezeigt wurde — dieser Eintrag enthält keine personenbezogenen Daten und wird beim Schließen des Browsers gelöscht.</p>
|
||||
<h2>3. Keine Cookies, kein Tracking</h2>
|
||||
<p>Diese Website setzt keine Cookies und verwendet keine Analyse- oder Marketingwerkzeuge. Schriften und Skripte liegen auf unserem eigenen Server. Lediglich im Browser-Sitzungsspeicher (sessionStorage) wird vermerkt, dass die Eröffnungsanimation bereits gezeigt wurde — dieser Eintrag enthält keine personenbezogenen Daten und wird beim Schließen des Browsers gelöscht.</p>
|
||||
|
||||
<h2>4. Externe Links</h2>
|
||||
<h2>4. Karte (OpenFreeMap) und externe Links</h2>
|
||||
<p>Auf den Seiten „Unternehmen" und „Kontakt" zeigen wir unseren Standort auf einer Karte. Sobald die Karte in den sichtbaren Bereich gescrollt wird, lädt Ihr Browser Kartenkacheln, Schriften und Symbole von OpenFreeMap (tiles.openfreemap.org). Dabei werden Ihre IP-Adresse sowie technische Angaben (Browser, Zeitpunkt, angeforderte Kartenausschnitte) an den Betreiber übertragen. Kartendaten: © OpenMapTiles, © OpenStreetMap-Mitwirkende.</p>
|
||||
<p>Rechtsgrundlage ist Art. 6 Abs. 1 lit. f DSGVO; unser berechtigtes Interesse liegt darin, Kunden und Bewerbern den Weg zu uns leicht auffindbar zu machen.</p>
|
||||
<span class="todo">Offen: Betreiberangaben von OpenFreeMap (Name, Anschrift, Serverstandort, Speicherdauer) prüfen und hier ergänzen; rechtlich prüfen lassen, ob das Laden ohne vorherige Einwilligung zulässig ist.</span>
|
||||
<p>Der Link „Route planen" führt zu Google Maps (Google Ireland Limited). Erst wenn Sie ihn anklicken, werden Daten an Google übertragen; dafür gilt die Datenschutzerklärung von Google.</p>
|
||||
|
||||
<h2>5. Kontakt per E-Mail oder Telefon</h2>
|
||||
@@ -623,4 +628,4 @@ DATENSCHUTZ = page_hero("Datenschutz", "Diese Website setzt keine Cookies, verwe
|
||||
<p class="mt-4"><em>Stand: September 2026. Entwurf — vor Veröffentlichung juristisch prüfen lassen.</em></p>
|
||||
</div>
|
||||
</section>'''
|
||||
page("datenschutz.html", "Datenschutz — Kirschner Gebäudeservice", "Datenschutzerklärung von Kirschner Gebäudeservice: keine Cookies, kein Tracking, keine Fremdinhalte.", DATENSCHUTZ)
|
||||
page("datenschutz.html", "Datenschutz — Kirschner Gebäudeservice", "Datenschutzerklärung von Kirschner Gebäudeservice: keine Cookies, kein Tracking.", DATENSCHUTZ)
|
||||
Reference in new issue
Block a user