Template
HSK-Vorlage aus der Olzinger-Website ableiten
Firmendaten durch Platzhalter ersetzt (Mustermann Haustechnik GmbH, Musterstraße 1, 12345 Musterstadt, 01234 567890, example.com), Design und Funktionen unverändert. - Feiertage im Öffnungsstatus per BUNDESLAND (alle 16 Länder) statt fest Bayern - Datenschutz: Aufsichtsbehörde als TODO je Bundesland - Skript-Namensraum olz -> hsk, Logo-SVG und OG-Bild neu - .webklar-preview.json von Olzinger entfernt (sonst Deploy auf olzinger) - .gitea/template: neue Repos aus der Vorlage erben die Preview-Datei nicht - README: Anleitung für neue HSK-Seiten, Platzhalter-Tabelle, Checkliste Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
1 parent
ad155124b1
commit
8da5102333
21 files changed
+238
-180
No files matched your search
@@ -0,0 +1,7 @@
|
||||
# Gitea-Vorlage: gilt nur beim „Repository aus Vorlage erstellen“.
|
||||
# Gitea entfernt diese Datei im neuen Repo.
|
||||
|
||||
[exclude]
|
||||
# Preview-Einstellung der Vorlage selbst (Subdomain hsk-vorlage) nicht mitkopieren –
|
||||
# das neue Projekt bekommt seine eigene über WOMS („Preview einschalten“).
|
||||
.webklar-preview.json
|
||||
@@ -1,4 +1,4 @@
|
||||
# Olzinger Haustechnik – Apache-Konfiguration (optional)
|
||||
# HSK-Vorlage – Apache-Konfiguration (optional)
|
||||
# Alle Blöcke sind abgesichert, damit fehlende Module keinen Serverfehler auslösen.
|
||||
|
||||
ErrorDocument 404 /404.html
|
||||
|
||||
@@ -1,11 +0,0 @@
|
||||
{
|
||||
"enabled": true,
|
||||
"type": "static",
|
||||
"branch": "main",
|
||||
"displayName": "Olzinger",
|
||||
"templateName": "webklar-preview-template",
|
||||
"projectType": "preview",
|
||||
"public": false,
|
||||
"template": false,
|
||||
"subdomain": "olzinger"
|
||||
}
|
||||
@@ -3,7 +3,7 @@
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1, viewport-fit=cover">
|
||||
<title>Seite nicht gefunden – Olzinger Haustechnik</title>
|
||||
<title>Seite nicht gefunden – Mustermann Haustechnik</title>
|
||||
<meta name="robots" content="noindex">
|
||||
<meta name="theme-color" content="#0B151E">
|
||||
<!-- Absolute Pfade, damit die Seite auch bei verschachtelten URLs korrekt lädt -->
|
||||
@@ -32,15 +32,15 @@
|
||||
<body>
|
||||
<div class="e404">
|
||||
<header class="e404__top">
|
||||
<a class="logo" href="/" aria-label="Olzinger Haustechnik – zur Startseite">
|
||||
<a class="logo" href="/" aria-label="Mustermann Haustechnik – zur Startseite">
|
||||
<svg class="logo__mark" viewBox="0 0 40 40" aria-hidden="true">
|
||||
<defs><linearGradient id="g-logo" x1="0" y1="0" x2="1" y2="0"><stop offset="0" stop-color="#2E9BEF"/><stop offset=".55" stop-color="#C2456B"/><stop offset="1" stop-color="#FF6A2B"/></linearGradient></defs>
|
||||
<path d="M11.97 31.47A14 14 0 1 1 28.03 31.47" fill="none" stroke="url(#g-logo)" stroke-width="5.5" stroke-linecap="round"/>
|
||||
<circle cx="20" cy="20" r="3.4" fill="currentColor"/>
|
||||
</svg>
|
||||
<span class="logo__text"><span class="logo__word">Olzinger</span><span class="logo__sub">Haustechnik</span></span>
|
||||
<span class="logo__text"><span class="logo__word">Mustermann</span><span class="logo__sub">Haustechnik</span></span>
|
||||
</a>
|
||||
<a class="btn btn--sm btn--warm" href="tel:+4987172617"><span class="btn__label">0871 72617</span></a>
|
||||
<a class="btn btn--sm btn--warm" href="tel:+491234567890"><span class="btn__label">01234 567890</span></a>
|
||||
</header>
|
||||
|
||||
<main class="e404__main" id="main">
|
||||
@@ -88,7 +88,7 @@
|
||||
</svg>
|
||||
</main>
|
||||
|
||||
<footer class="e404__foot">© Olzinger GmbH · Ahornstraße 112 · 84030 Ergolding · <a href="/impressum.html">Impressum</a> · <a href="/datenschutz.html">Datenschutz</a></footer>
|
||||
<footer class="e404__foot">© Mustermann Haustechnik GmbH · Musterstraße 1 · 12345 Musterstadt · <a href="/impressum.html">Impressum</a> · <a href="/datenschutz.html">Datenschutz</a></footer>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
@@ -1,9 +1,52 @@
|
||||
# Olzinger Haustechnik – Website
|
||||
# HSK-Vorlage – Website für Heizung · Sanitär · Klima
|
||||
|
||||
Maßgeschneiderter Neuauftritt für die **Olzinger GmbH** (Heizung · Sanitär · Lüftung · Regenerative Energien, Ergolding bei Landshut, seit 1985).
|
||||
Vorlage für Websites von **HSK-/SHK-Betrieben** (Heizung, Sanitär, Lüftung/Klima, regenerative Energien). Entstanden aus der Website für Olzinger Haustechnik (`WEBklar/Olzinger`). Alle Firmendaten sind hier durch **Platzhalter** ersetzt („Mustermann Haustechnik GmbH“, „Musterstadt“, `example.com`).
|
||||
|
||||
Statische Website ohne Build-Schritt: HTML, CSS und JavaScript ohne Bibliotheken, Schrift lokal eingebunden (kein CDN, keine Cookies, kein Tracking).
|
||||
|
||||
## Neue HSK-Seite aus der Vorlage anlegen
|
||||
|
||||
1. In Gitea bei `WEBklar/HSK-Vorlage` auf **„Diese Vorlage verwenden“** klicken. Besitzer: `WEBklar`, Name: z. B. `Mueller-Haustechnik`. Haken bei **„Git-Inhalt (Standardbranch)“** setzen.
|
||||
- Gitea lässt dabei `.webklar-preview.json` weg (siehe `.gitea/template`). Das neue Repo bekommt also **nicht** die Preview der Vorlage.
|
||||
- Wird stattdessen per `git clone` kopiert: `.webklar-preview.json` **vor dem ersten Push löschen**. Sonst landet die neue Seite auf `hsk-vorlage.project.webklar.com` und überschreibt die Vorlage.
|
||||
2. Im WOMS das Projekt dem Ticket bzw. Kunden zuordnen und **„Preview einschalten“** wählen.
|
||||
3. Platzhalter ersetzen (Tabelle unten), Texte anpassen und die Checkliste abarbeiten.
|
||||
|
||||
## Platzhalter
|
||||
|
||||
Am schnellsten per Suchen & Ersetzen über alle Dateien. Danach nach `Mustermann`, `Musterstadt`, `example.com`, `12345`, `01234` und `TODO` suchen. Es darf nichts übrig bleiben.
|
||||
|
||||
| Platzhalter | Bedeutung | Vorkommen |
|
||||
|---|---|---|
|
||||
| `Mustermann Haustechnik GmbH` | Firmenname mit Rechtsform | Footer, Impressum, Datenschutz, 404, Schema.org, `kontakt.php` |
|
||||
| `Mustermann Haustechnik` | Kurzname für Titel und Logo-Beschriftung | `<title>`, Open Graph, `site.webmanifest` |
|
||||
| `Mustermann` (Logo-Wort) / `Haustechnik` (Zusatz) | Logo-Schriftzug | `logo__word` / `logo__sub` in allen HTML-Dateien, `assets/img/logo.svg` (`MUSTERMANN`), `tools/og-template.html` |
|
||||
| `Musterstraße 1`, `12345 Musterstadt` | Anschrift | Hero, Kontakt, Footer, Impressum, Datenschutz, 404, Schema.org, Google-Maps-Link |
|
||||
| `Musterstadt und Umgebung` | Einzugsgebiet | Meta-Description, Open Graph, Schema.org (`areaServed`) |
|
||||
| `01234 567890` / `+491234567890` | Telefon (Anzeige / `tel:`-Link) | Navigation, Menü, Hero, Kundendienst-Karte, Kontakt, Footer, Impressum, Datenschutz, 404 |
|
||||
| `01234 567891` | Fax | Footer, Impressum, Schema.org |
|
||||
| `kontakt@example.com` | E-Mail | Kontakt, Karriere-Links, Footer, Impressum, Datenschutz, `kontakt.php`, `assets/js/contact.js` |
|
||||
| `www.example.com` | Domain | `canonical`, Open Graph, Schema.org, `sitemap.xml`, `robots.txt`, `kontakt.php`, `tools/og-template.html` |
|
||||
| `1990` / `Max Mustermann` | Gründungsjahr / Gründer | Hero, „Über uns“, Chronik, Schema.org, `assets/js/main.js` (`nowYear - 1990`) |
|
||||
| `2015` / `Erika Mustermann` | Chronik-Eintrag / Geschäftsführung | Chronik, Impressum, Datenschutz |
|
||||
| `Rund 20 Fachleute` / `"value": 20` | Mitarbeiterzahl | „Über uns“, Schema.org |
|
||||
| `Amtsgericht Musterstadt`, `HRB 12345` | Handelsregister | Impressum |
|
||||
|
||||
## Vor dem Livegang prüfen
|
||||
|
||||
- [ ] **Firmendaten** vollständig ersetzt (Suche siehe oben).
|
||||
- [ ] **Bundesland** für die Feiertage im Öffnungsstatus: `BUNDESLAND` oben in `assets/js/contact.js` (Standard `BY`). Dazu `addressRegion` in den Schema.org-Daten von `index.html`.
|
||||
- [ ] **Öffnungszeiten:** `SCHEDULE` in `assets/js/contact.js`, die Texte in allen HTML-Dateien (Status-Zeile, Kontaktbereich, Footer) und `openingHoursSpecification` in `index.html`.
|
||||
- [ ] **Leistungen:** Die 5 Karten, die Formular-Themen und `knowsAbout` (Schema.org) an das Angebot des Betriebs anpassen. Bei weniger Karten den Zähler `/ 5` in `index.html` anpassen.
|
||||
- [ ] **Über uns und Karriere:** Chronik, Mitarbeiterzahl, Ausbildungsberufe, Startmonat.
|
||||
- [ ] **Impressum:** Geschäftsführung, Registereintrag, Umsatzsteuer-ID und berufsrechtliche Angaben (Kammer, Berufsbezeichnung). Die letzten beiden sind als Kommentar in `impressum.html` vorbereitet.
|
||||
- [ ] **Datenschutz:** Hosting-Anbieter, Speicherdauer der Server-Logs, Vertrag zur Auftragsverarbeitung, zuständige Aufsichtsbehörde (Abschnitt 9). Alles als `TODO` markiert. Rechtstexte sind Entwürfe und ersetzen keine Rechtsberatung.
|
||||
- [ ] **Formular:** In `kontakt.php` Empfänger/Absender prüfen (`RECIPIENT`, `SENDER`) und einmal testweise absenden.
|
||||
- [ ] **Logo und Farben:** Für ein eigenes Logo die Logo-Marke (Thermostat-Bogen, `logo__mark`) in den HTML-Dateien, `assets/img/logo.svg`, die Favicons und `tools/og-template.html` ersetzen. Die Farben stehen als Design-Tokens am Anfang von `assets/css/main.css`.
|
||||
- [ ] **Open-Graph-Bild** neu rendern (siehe „Anpassen“). Das Bild enthält Name, Ort und Domain.
|
||||
- [ ] `sitemap.xml`: `lastmod` aktualisieren.
|
||||
- [ ] Optional: echte Fotos (Team, Projekte, Bäder) ergänzen. Die Illustrationen tragen die Seite auch ohne Fotos.
|
||||
|
||||
## Gestaltungsidee: „Wärmebild“
|
||||
|
||||
Haustechnik sieht man nicht – man spürt sie. Deshalb zeigt der Einstieg ein ruhiges, live berechnetes **Wärmebild** (WebGL) mit Isothermen wie bei einer Thermografie-Kamera. Eine langsam wandernde Wärmequelle hält das Bild in Bewegung – ohne Maus- oder Touch-Effekte. Durch die Seite zieht sich das Motiv **warm trifft kalt** (Vorlauf/Rücklauf): Farbverlauf Blau → Magenta → Orange, das Logo als Thermostat-Skala.
|
||||
@@ -14,11 +57,11 @@ Grundsatz: wenig Text, wenig Bewegung, gut bedienbar am Handy.
|
||||
|
||||
| Bereich | Besonderheit |
|
||||
|---|---|
|
||||
| Hero | Ruhiges WebGL-Wärmebild, Live-Öffnungsstatus (inkl. bayerischer Feiertage), Anfrage- und Telefon-Button |
|
||||
| Hero | Ruhiges WebGL-Wärmebild, Live-Öffnungsstatus (inkl. Feiertage des Bundeslands), Anfrage- und Telefon-Button |
|
||||
| Leistungen | 5 Karten mit Illustrationen; am Desktop als Kartenstapel, unter 900 px wischbare Karten mit Zähler (1 / 5) und Pfeilen |
|
||||
| Energie-Haus | Hausschnitt: Wärmepumpe, Solarthermie, Speicher, Fußbodenheizung, Bad, Lüftung – der gewählte Kreislauf wird hervorgehoben |
|
||||
| Heizungs-Finder | 4 Fragen → Empfehlung (Wärmepumpe / Pellets / Hybrid); Ergebnis lässt sich ins Kontaktformular übernehmen |
|
||||
| Über uns | Kurze Chronik 1985 → heute |
|
||||
| Über uns | Kurze Chronik vom Gründungsjahr bis heute |
|
||||
| Karriere | Ausbildung Anlagenmechaniker SHK, Initiativbewerbung |
|
||||
| Kontakt | Kontaktkarten, Öffnungszeiten mit „Heute“-Markierung, Formular |
|
||||
| Footer | Adresse, Kontakt, Öffnungszeiten, Links |
|
||||
@@ -44,16 +87,6 @@ Den kompletten Ordnerinhalt auf den Webspace laden (z. B. per FTP). Voraussetzun
|
||||
- `404.html` nutzt absolute Pfade (`/assets/...`) – liegt die Seite in einem Unterordner, Pfade dort anpassen.
|
||||
- CSS und JS werden eine Woche gecacht. Nach Änderungen an `main.css` oder den Skripten die Versionsnummer `?v=…` in allen HTML-Dateien hochzählen, damit Besucher nicht alte Dateien sehen.
|
||||
|
||||
## Vor dem Livegang prüfen (TODO)
|
||||
|
||||
Die Firmendaten stammen aus öffentlich zugänglichen Quellen. Bitte bestätigen bzw. ergänzen:
|
||||
|
||||
- [ ] **Impressum:** Umsatzsteuer-ID und berufsrechtliche Angaben (Kammer, Berufsbezeichnung) – als Kommentar in `impressum.html` vorbereitet.
|
||||
- [ ] **Datenschutz:** Hosting-Anbieter, Speicherdauer der Server-Logs, Vertrag zur Auftragsverarbeitung – als `TODO` in `datenschutz.html` markiert. Rechtstexte sind Entwürfe und ersetzen keine Rechtsberatung.
|
||||
- [ ] **Inhalte:** Mitarbeiterzahl (≈ 25), Ausbildungsstart (September), Leistungsliste, Texte zur Karriere.
|
||||
- [ ] **Formular:** In `kontakt.php` Empfänger/Absender prüfen (`RECIPIENT`, `SENDER`); einmal testweise absenden.
|
||||
- [ ] Optional: echte Fotos (Team, Projekte, Bäder) ergänzen – die Illustrationen sind so gestaltet, dass sie auch ohne Fotos tragen.
|
||||
|
||||
## Struktur
|
||||
|
||||
```
|
||||
@@ -71,12 +104,14 @@ assets/js/contact.js Öffnungszeiten live, Feiertage, Kontaktformular
|
||||
assets/fonts/ Instrument Sans (OFL, lokal)
|
||||
assets/img/ Favicon, Logo, Open-Graph-Bild
|
||||
tools/og-template.html Vorlage zum Neu-Rendern des Open-Graph-Bilds
|
||||
.gitea/template Regeln für „Diese Vorlage verwenden“ (nur in der Vorlage)
|
||||
```
|
||||
|
||||
## Anpassen
|
||||
|
||||
- **Farben, Abstände, Schriften:** Design-Tokens am Anfang von `assets/css/main.css` (`--warm`, `--cool`, `--ink`, `--paper` …).
|
||||
- **Öffnungszeiten:** in `assets/js/contact.js` (`SCHEDULE`) sowie in `index.html` (Text und Schema.org-Daten).
|
||||
- **Öffnungszeiten:** in `assets/js/contact.js` (`SCHEDULE`) sowie in den HTML-Dateien (Text und Schema.org-Daten).
|
||||
- **Feiertage:** `BUNDESLAND` in `assets/js/contact.js`. Es zählen nur landesweite Feiertage. Die Ausnahme ist Bayern: Dort zählt Mariä Himmelfahrt mit (gilt in Gemeinden mit überwiegend katholischer Bevölkerung).
|
||||
- **Heizungs-Finder:** Gewichtung in `assets/js/finder.js` (`evaluate`), Texte in `TEXTS`.
|
||||
- **Open-Graph-Bild:** `tools/og-template.html` im Browser öffnen (über einen lokalen Server) und einen Screenshot mit 1200 × 630 px als `assets/img/og-image.jpg` speichern.
|
||||
|
||||
|
||||
+1
-1
@@ -1,5 +1,5 @@
|
||||
/* ==========================================================================
|
||||
Olzinger Haustechnik – Stylesheet
|
||||
HSK-Vorlage – Stylesheet
|
||||
Gestaltung: Wärmebild-Ästhetik · warm (Vorlauf) trifft kalt (Rücklauf)
|
||||
========================================================================== */
|
||||
|
||||
|
||||
+2
-2
@@ -1,4 +1,4 @@
|
||||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 260 56" role="img" aria-label="Olzinger Haustechnik">
|
||||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 290 56" role="img" aria-label="Mustermann Haustechnik">
|
||||
<defs>
|
||||
<linearGradient id="g" x1="0" y1="0" x2="1" y2="0">
|
||||
<stop offset="0" stop-color="#2E9BEF"/>
|
||||
@@ -8,6 +8,6 @@
|
||||
</defs>
|
||||
<path d="M17.1 43.6A19 19 0 1 1 38.9 43.6" fill="none" stroke="url(#g)" stroke-width="7" stroke-linecap="round"/>
|
||||
<circle cx="28" cy="28" r="4.4" fill="#0B151E"/>
|
||||
<text x="62" y="31" font-family="Instrument Sans, Arial, sans-serif" font-weight="700" font-size="26" letter-spacing="1" fill="#0B151E">OLZINGER</text>
|
||||
<text x="62" y="31" font-family="Instrument Sans, Arial, sans-serif" font-weight="700" font-size="26" letter-spacing="1" fill="#0B151E">MUSTERMANN</text>
|
||||
<text x="63" y="47" font-family="Instrument Sans, Arial, sans-serif" font-weight="500" font-size="10.5" letter-spacing="3.2" fill="#4D5963">HAUSTECHNIK</text>
|
||||
</svg>
|
||||
|
Before Width: | Height: | Size: 833 B After Width: | Height: | Size: 837 B |
Binary file not shown.
|
Before Width: | Height: | Size: 94 KiB After Width: | Height: | Size: 103 KiB |
+38
-11
@@ -1,10 +1,14 @@
|
||||
/* ==========================================================================
|
||||
Olzinger – Öffnungszeiten (live, inkl. bayerischer Feiertage) & Kontaktformular
|
||||
HSK-Vorlage – Öffnungszeiten (live, inkl. Feiertage des Bundeslands) & Kontaktformular
|
||||
========================================================================== */
|
||||
(function (w, d) {
|
||||
'use strict';
|
||||
|
||||
/* ---------- Öffnungszeiten ---------- */
|
||||
// Bundesland des Betriebs für die Feiertage:
|
||||
// BW BY BE BB HB HH HE MV NI NW RP SL SN ST SH TH
|
||||
var BUNDESLAND = 'BY';
|
||||
|
||||
// Minuten seit Mitternacht; Index = Wochentag (0 = Sonntag)
|
||||
var SCHEDULE = {
|
||||
0: [],
|
||||
@@ -31,23 +35,46 @@
|
||||
return Date.UTC(y, month - 1, day);
|
||||
}
|
||||
|
||||
// Gesetzliche Feiertage in Bayern (Gemeinde mit überwiegend katholischer Bevölkerung)
|
||||
// Gesetzliche Feiertage: bundesweit plus die des eingestellten Bundeslands.
|
||||
// Nur landesweite Feiertage; Fronleichnam in Teilen von Sachsen/Thüringen und
|
||||
// Mariä Himmelfahrt in Bayern gelten nicht überall (BY: hier mitgezählt, wie in
|
||||
// Gemeinden mit überwiegend katholischer Bevölkerung).
|
||||
var REGIONAL = {
|
||||
dreikoenige: ['BW', 'BY', 'ST'],
|
||||
frauentag: ['BE', 'MV'],
|
||||
fronleichnam: ['BW', 'BY', 'HE', 'NW', 'RP', 'SL'],
|
||||
mariae: ['BY', 'SL'],
|
||||
kindertag: ['TH'],
|
||||
reformation: ['BB', 'HB', 'HH', 'MV', 'NI', 'SN', 'ST', 'SH', 'TH'],
|
||||
allerheiligen: ['BW', 'BY', 'NW', 'RP', 'SL'],
|
||||
busstag: ['SN']
|
||||
};
|
||||
function inLand(key) { return REGIONAL[key].indexOf(BUNDESLAND) > -1; }
|
||||
|
||||
var holidayCache = {};
|
||||
function holidays(y) {
|
||||
if (holidayCache[y]) return holidayCache[y];
|
||||
var DAY = 864e5, e = easter(y), map = {};
|
||||
var add = function (t, name) { var dt = new Date(t); map[dt.getUTCMonth() + 1 + '-' + dt.getUTCDate()] = name; };
|
||||
add(Date.UTC(y, 0, 1), 'Neujahr');
|
||||
add(Date.UTC(y, 0, 6), 'Heilige Drei Könige');
|
||||
if (inLand('dreikoenige')) add(Date.UTC(y, 0, 6), 'Heilige Drei Könige');
|
||||
if (inLand('frauentag')) add(Date.UTC(y, 2, 8), 'Internationaler Frauentag');
|
||||
add(e - 2 * DAY, 'Karfreitag');
|
||||
add(e + 1 * DAY, 'Ostermontag');
|
||||
add(Date.UTC(y, 4, 1), 'Tag der Arbeit');
|
||||
add(e + 39 * DAY, 'Christi Himmelfahrt');
|
||||
add(e + 50 * DAY, 'Pfingstmontag');
|
||||
add(e + 60 * DAY, 'Fronleichnam');
|
||||
add(Date.UTC(y, 7, 15), 'Mariä Himmelfahrt');
|
||||
if (inLand('fronleichnam')) add(e + 60 * DAY, 'Fronleichnam');
|
||||
if (inLand('mariae')) add(Date.UTC(y, 7, 15), 'Mariä Himmelfahrt');
|
||||
if (inLand('kindertag')) add(Date.UTC(y, 8, 20), 'Weltkindertag');
|
||||
add(Date.UTC(y, 9, 3), 'Tag der Deutschen Einheit');
|
||||
add(Date.UTC(y, 10, 1), 'Allerheiligen');
|
||||
if (inLand('reformation')) add(Date.UTC(y, 9, 31), 'Reformationstag');
|
||||
if (inLand('allerheiligen')) add(Date.UTC(y, 10, 1), 'Allerheiligen');
|
||||
if (inLand('busstag')) {
|
||||
// Mittwoch vor dem 23. November
|
||||
var nov23 = Date.UTC(y, 10, 23);
|
||||
add(nov23 - (((new Date(nov23).getUTCDay() + 4) % 7) || 7) * DAY, 'Buß- und Bettag');
|
||||
}
|
||||
add(Date.UTC(y, 11, 25), '1. Weihnachtstag');
|
||||
add(Date.UTC(y, 11, 26), '2. Weihnachtstag');
|
||||
return (holidayCache[y] = map);
|
||||
@@ -124,7 +151,7 @@
|
||||
var ts = form.querySelector('[data-ts]');
|
||||
if (ts) ts.value = String(Date.now());
|
||||
|
||||
var RECIPIENT = 'kontakt@olzinger.de';
|
||||
var RECIPIENT = 'kontakt@example.com';
|
||||
var fields = {
|
||||
name: form.querySelector('[name="name"]'),
|
||||
email: form.querySelector('[name="email"]'),
|
||||
@@ -164,8 +191,8 @@
|
||||
Array.prototype.forEach.call(radios, function (r) { r.checked = (r.value === topic); });
|
||||
}
|
||||
|
||||
w.addEventListener('olz:topic', function (e) { selectTopic(e.detail); });
|
||||
w.addEventListener('olz:prefill', function (e) {
|
||||
w.addEventListener('hsk:topic', function (e) { selectTopic(e.detail); });
|
||||
w.addEventListener('hsk:prefill', function (e) {
|
||||
var det = e.detail || {};
|
||||
selectTopic(det.topic);
|
||||
if (det.message && fields.message) {
|
||||
@@ -186,7 +213,7 @@
|
||||
String(data.get('message') || '')
|
||||
];
|
||||
return 'mailto:' + RECIPIENT +
|
||||
'?subject=' + encodeURIComponent('Anfrage über olzinger.de – ' + topic) +
|
||||
'?subject=' + encodeURIComponent('Anfrage über example.com – ' + topic) +
|
||||
'&body=' + encodeURIComponent(lines.join('\n'));
|
||||
}
|
||||
|
||||
@@ -213,7 +240,7 @@
|
||||
setStatus('error', 'Bitte prüfen Sie Ihre Angaben – einige Felder sind unvollständig.');
|
||||
} else {
|
||||
w.location.href = buildMail(data);
|
||||
setStatus('info', '<strong>Fast geschafft:</strong> Ihr E-Mail-Programm öffnet sich mit Ihrer vorbereiteten Anfrage – bitte dort nur noch auf „Senden“ klicken. Alternativ erreichen Sie uns unter <a href="tel:+4987172617">0871 72617</a>.');
|
||||
setStatus('info', '<strong>Fast geschafft:</strong> Ihr E-Mail-Programm öffnet sich mit Ihrer vorbereiteten Anfrage – bitte dort nur noch auf „Senden“ klicken. Alternativ erreichen Sie uns unter <a href="tel:+491234567890">01234 567890</a>.');
|
||||
}
|
||||
};
|
||||
|
||||
|
||||
+2
-2
@@ -1,5 +1,5 @@
|
||||
/* ==========================================================================
|
||||
Olzinger – Heizungs-Finder
|
||||
HSK-Vorlage – Heizungs-Finder
|
||||
Vier Fragen → erste, unverbindliche Empfehlung (Wärmepumpe / Pellets / Hybrid).
|
||||
Das Ergebnis kann direkt ins Kontaktformular übernommen werden.
|
||||
========================================================================== */
|
||||
@@ -193,7 +193,7 @@
|
||||
var applyBtn = result.querySelector('[data-finder-apply]');
|
||||
if (applyBtn) {
|
||||
applyBtn.addEventListener('click', function () {
|
||||
w.dispatchEvent(new CustomEvent('olz:prefill', {
|
||||
w.dispatchEvent(new CustomEvent('hsk:prefill', {
|
||||
detail: { topic: applyBtn.getAttribute('data-topic'), message: applyBtn.getAttribute('data-message') }
|
||||
}));
|
||||
});
|
||||
|
||||
+1
-1
@@ -1,5 +1,5 @@
|
||||
/* ==========================================================================
|
||||
Olzinger – Energie-Haus
|
||||
HSK-Vorlage – Energie-Haus
|
||||
Tabs + Hotspots steuern, welches System im Hausschnitt hervorgehoben wird.
|
||||
========================================================================== */
|
||||
(function (w, d) {
|
||||
|
||||
+6
-6
@@ -1,5 +1,5 @@
|
||||
/* ==========================================================================
|
||||
Olzinger – Hauptskript
|
||||
HSK-Vorlage – Hauptskript
|
||||
Navigation, mobiles Menü, dezente Einblendungen, Leistungs-Karussell (mobil)
|
||||
und Kartenstapel (Desktop). Bewusst ohne Bibliotheken.
|
||||
========================================================================== */
|
||||
@@ -12,17 +12,17 @@
|
||||
|
||||
var reduce = w.matchMedia('(prefers-reduced-motion: reduce)').matches;
|
||||
var hasIO = 'IntersectionObserver' in w;
|
||||
w.__olzReady = true;
|
||||
w.__hskReady = true;
|
||||
|
||||
/* ---------- Dynamische Jahreszahlen ---------- */
|
||||
var nowYear = new Date().getFullYear();
|
||||
$$('[data-current-year]').forEach(function (el) { el.textContent = nowYear; });
|
||||
$$('[data-years]').forEach(function (el) { el.textContent = nowYear - 1985; });
|
||||
$$('[data-years]').forEach(function (el) { el.textContent = nowYear - 1990; });
|
||||
|
||||
/* ---------- Wärmebild (ruhiger Hintergrund im Hero) ---------- */
|
||||
var canvas = $('[data-thermal]');
|
||||
if (canvas && w.OlzThermal) {
|
||||
var thermal = w.OlzThermal.init(canvas, {
|
||||
if (canvas && w.HskThermal) {
|
||||
var thermal = w.HskThermal.init(canvas, {
|
||||
hero: $('[data-hero]'),
|
||||
calm: $('.hero__aside'),
|
||||
reduceMotion: reduce
|
||||
@@ -64,7 +64,7 @@
|
||||
d.addEventListener('click', function (e) {
|
||||
var a = e.target.closest('a[href*="#"]');
|
||||
if (!a) return;
|
||||
if (a.dataset.topic) w.dispatchEvent(new CustomEvent('olz:topic', { detail: a.dataset.topic }));
|
||||
if (a.dataset.topic) w.dispatchEvent(new CustomEvent('hsk:topic', { detail: a.dataset.topic }));
|
||||
if (menuOpen) setMenu(false);
|
||||
});
|
||||
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/* ==========================================================================
|
||||
Olzinger – „Wärmebild“ (WebGL)
|
||||
HSK-Vorlage – „Wärmebild“ (WebGL)
|
||||
Ein ruhiges thermografisches Feld mit Isothermen als Hero-Hintergrund.
|
||||
Eine langsam wandernde Wärmequelle hält das Bild lebendig – ganz ohne
|
||||
Maus- oder Touch-Interaktion. Hinter Fließtext wird die Wärme gedämpft.
|
||||
@@ -283,5 +283,5 @@
|
||||
|
||||
function d() { return document; }
|
||||
|
||||
w.OlzThermal = { init: init };
|
||||
w.HskThermal = { init: init };
|
||||
})(window);
|
||||
+20
-18
@@ -3,10 +3,10 @@
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1, viewport-fit=cover">
|
||||
<title>Datenschutz – Olzinger Haustechnik</title>
|
||||
<meta name="description" content="Datenschutzerklärung der Olzinger GmbH – Haustechnik in Ergolding bei Landshut.">
|
||||
<title>Datenschutz – Mustermann Haustechnik</title>
|
||||
<meta name="description" content="Datenschutzerklärung der Mustermann Haustechnik GmbH – Haustechnik in Musterstadt und Umgebung.">
|
||||
<meta name="robots" content="noindex, follow">
|
||||
<link rel="canonical" href="https://www.olzinger.de/datenschutz.html">
|
||||
<link rel="canonical" href="https://www.example.com/datenschutz.html">
|
||||
<meta name="theme-color" content="#0B151E">
|
||||
<meta name="format-detection" content="telephone=no">
|
||||
<link rel="icon" href="assets/img/favicon.svg" type="image/svg+xml">
|
||||
@@ -18,7 +18,7 @@
|
||||
(function (d, w) {
|
||||
var h = d.documentElement;
|
||||
h.className = h.className.replace('no-js', 'js');
|
||||
w.setTimeout(function () { if (!w.__olzReady) { h.classList.remove('js'); h.classList.add('no-js'); } }, 4500);
|
||||
w.setTimeout(function () { if (!w.__hskReady) { h.classList.remove('js'); h.classList.add('no-js'); } }, 4500);
|
||||
})(document, window);
|
||||
</script>
|
||||
<script src="assets/js/contact.js?v=20261004" defer></script>
|
||||
@@ -30,6 +30,8 @@
|
||||
zugeschnitten (keine Cookies, kein Tracking, lokal eingebundene Schriften und Skripte).
|
||||
Sie ersetzt keine Rechtsberatung – bitte vor dem Livegang prüfen lassen und den
|
||||
Hosting-Anbieter (TODO) ergänzen.
|
||||
HSK-VORLAGE: Firmendaten sind Platzhalter; zuständige Aufsichtsbehörde (Abschnitt 9)
|
||||
nach dem Bundesland des Betriebs eintragen.
|
||||
-->
|
||||
<a class="skip-link" href="#main">Zum Inhalt springen</a>
|
||||
|
||||
@@ -43,13 +45,13 @@
|
||||
|
||||
<header class="nav" data-nav>
|
||||
<div class="nav__bar">
|
||||
<a class="logo" href="index.html" aria-label="Olzinger Haustechnik – zur Startseite">
|
||||
<a class="logo" href="index.html" aria-label="Mustermann Haustechnik – zur Startseite">
|
||||
<svg class="logo__mark" viewBox="0 0 40 40" aria-hidden="true">
|
||||
<defs><linearGradient id="g-logo" x1="0" y1="0" x2="1" y2="0"><stop offset="0" stop-color="#2E9BEF"/><stop offset=".55" stop-color="#C2456B"/><stop offset="1" stop-color="#FF6A2B"/></linearGradient></defs>
|
||||
<path d="M11.97 31.47A14 14 0 1 1 28.03 31.47" fill="none" stroke="url(#g-logo)" stroke-width="5.5" stroke-linecap="round"/>
|
||||
<circle cx="20" cy="20" r="3.4" fill="currentColor"/>
|
||||
</svg>
|
||||
<span class="logo__text"><span class="logo__word">Olzinger</span><span class="logo__sub">Haustechnik</span></span>
|
||||
<span class="logo__text"><span class="logo__word">Mustermann</span><span class="logo__sub">Haustechnik</span></span>
|
||||
</a>
|
||||
<nav class="nav__links" aria-label="Hauptnavigation">
|
||||
<a href="index.html#leistungen">Leistungen</a>
|
||||
@@ -59,7 +61,7 @@
|
||||
<a href="index.html#karriere">Karriere</a>
|
||||
</nav>
|
||||
<div class="nav__actions">
|
||||
<a class="nav__phone" href="tel:+4987172617" aria-label="Anrufen: 0871 72617"><svg class="icon" aria-hidden="true"><use href="#i-phone"/></svg><span>0871 72617</span></a>
|
||||
<a class="nav__phone" href="tel:+491234567890" aria-label="Anrufen: 01234 567890"><svg class="icon" aria-hidden="true"><use href="#i-phone"/></svg><span>01234 567890</span></a>
|
||||
<a class="btn btn--sm btn--warm" href="index.html#kontakt"><span class="btn__label">Anfrage stellen</span></a>
|
||||
<button class="nav__toggle" type="button" aria-expanded="false" aria-controls="menu" data-menu-toggle>
|
||||
<span class="nav__toggle-lines" aria-hidden="true"><i></i><i></i></span>
|
||||
@@ -79,8 +81,8 @@
|
||||
<a href="index.html#kontakt">Kontakt</a>
|
||||
</nav>
|
||||
<div class="menu__foot">
|
||||
<a href="tel:+4987172617"><svg class="icon" aria-hidden="true"><use href="#i-phone"/></svg>0871 72617</a>
|
||||
<a href="mailto:kontakt@olzinger.de"><svg class="icon" aria-hidden="true"><use href="#i-mail"/></svg>kontakt@olzinger.de</a>
|
||||
<a href="tel:+491234567890"><svg class="icon" aria-hidden="true"><use href="#i-phone"/></svg>01234 567890</a>
|
||||
<a href="mailto:kontakt@example.com"><svg class="icon" aria-hidden="true"><use href="#i-mail"/></svg>kontakt@example.com</a>
|
||||
<p class="status status--dark" data-status><span class="status__dot" aria-hidden="true"></span><span class="status__text">Mo–Do 7–16:30 Uhr · Fr 7–11:30 Uhr</span></p>
|
||||
</div>
|
||||
</div>
|
||||
@@ -111,10 +113,10 @@
|
||||
<h2 id="verantwortlicher">1. Verantwortlicher</h2>
|
||||
<p>Verantwortlich für die Datenverarbeitung auf dieser Website im Sinne der Datenschutz-Grundverordnung (DSGVO) ist:</p>
|
||||
<div class="legal__card">
|
||||
<p><strong>Olzinger GmbH</strong></p>
|
||||
<p>Ahornstraße 112, 84030 Ergolding</p>
|
||||
<p>Vertreten durch die Geschäftsführer Franz Ramsauer und Robert Straub</p>
|
||||
<p>Telefon: <a href="tel:+4987172617">0871 72617</a> · E-Mail: <a href="mailto:kontakt@olzinger.de">kontakt@olzinger.de</a></p>
|
||||
<p><strong>Mustermann Haustechnik GmbH</strong></p>
|
||||
<p>Musterstraße 1, 12345 Musterstadt</p>
|
||||
<p>Vertreten durch die Geschäftsführerin Erika Mustermann</p>
|
||||
<p>Telefon: <a href="tel:+491234567890">01234 567890</a> · E-Mail: <a href="mailto:kontakt@example.com">kontakt@example.com</a></p>
|
||||
</div>
|
||||
|
||||
<h2 id="ueberblick">2. Datenschutz auf einen Blick</h2>
|
||||
@@ -155,7 +157,7 @@
|
||||
|
||||
<h2 id="rechte">9. Ihre Rechte</h2>
|
||||
<p>Sie haben jederzeit das Recht auf Auskunft (Art. 15 DSGVO), Berichtigung (Art. 16 DSGVO), Löschung (Art. 17 DSGVO), Einschränkung der Verarbeitung (Art. 18 DSGVO), Datenübertragbarkeit (Art. 20 DSGVO) sowie das Recht, einer Verarbeitung auf Grundlage von Art. 6 Abs. 1 lit. f DSGVO zu widersprechen (Art. 21 DSGVO). Eine erteilte Einwilligung können Sie jederzeit mit Wirkung für die Zukunft widerrufen (Art. 7 Abs. 3 DSGVO). Wenden Sie sich dazu einfach an die oben genannten Kontaktdaten.</p>
|
||||
<p>Außerdem haben Sie das Recht, sich bei einer Datenschutz-Aufsichtsbehörde zu beschweren (Art. 77 DSGVO). Für uns zuständig ist das Bayerische Landesamt für Datenschutzaufsicht (BayLDA), Promenade 18, 91522 Ansbach.</p>
|
||||
<p>Außerdem haben Sie das Recht, sich bei einer Datenschutz-Aufsichtsbehörde zu beschweren (Art. 77 DSGVO). Für uns zuständig ist die Datenschutz-Aufsichtsbehörde des Bundeslandes, in dem unser Betrieb seinen Sitz hat. <!-- TODO: Behörde mit Anschrift nennen, z. B. Bayern: Bayerisches Landesamt für Datenschutzaufsicht (BayLDA), Promenade 18, 91522 Ansbach --></p>
|
||||
|
||||
<h2>10. Verschlüsselung</h2>
|
||||
<p>Diese Website nutzt aus Sicherheitsgründen eine SSL- bzw. TLS-Verschlüsselung. Eine verschlüsselte Verbindung erkennen Sie am Schloss-Symbol in der Adresszeile Ihres Browsers und daran, dass die Adresse mit „https://“ beginnt.</p>
|
||||
@@ -171,12 +173,12 @@
|
||||
<div class="container">
|
||||
<div class="footer__grid">
|
||||
<div class="footer__col">
|
||||
<h2 class="footer__h">Olzinger GmbH</h2>
|
||||
<address>Ahornstraße 112<br>84030 Ergolding</address>
|
||||
<h2 class="footer__h">Mustermann Haustechnik GmbH</h2>
|
||||
<address>Musterstraße 1<br>12345 Musterstadt</address>
|
||||
</div>
|
||||
<div class="footer__col">
|
||||
<h2 class="footer__h">Kontakt</h2>
|
||||
<p><a href="tel:+4987172617">Tel. 0871 72617</a><br>Fax 0871 74963<br><a href="mailto:kontakt@olzinger.de">kontakt@olzinger.de</a></p>
|
||||
<p><a href="tel:+491234567890">Tel. 01234 567890</a><br>Fax 01234 567891<br><a href="mailto:kontakt@example.com">kontakt@example.com</a></p>
|
||||
</div>
|
||||
<div class="footer__col">
|
||||
<h2 class="footer__h">Öffnungszeiten</h2>
|
||||
@@ -194,7 +196,7 @@
|
||||
</nav>
|
||||
</div>
|
||||
<div class="footer__bottom">
|
||||
<p>© <span data-current-year>2026</span> Olzinger GmbH</p>
|
||||
<p>© <span data-current-year>2026</span> Mustermann Haustechnik GmbH</p>
|
||||
<ul>
|
||||
<li><a href="impressum.html">Impressum</a></li>
|
||||
<li><a href="datenschutz.html" aria-current="page">Datenschutz</a></li>
|
||||
|
||||
+27
-28
@@ -3,10 +3,10 @@
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1, viewport-fit=cover">
|
||||
<title>Impressum – Olzinger Haustechnik</title>
|
||||
<meta name="description" content="Impressum der Olzinger GmbH – Haustechnik in Ergolding bei Landshut.">
|
||||
<title>Impressum – Mustermann Haustechnik</title>
|
||||
<meta name="description" content="Impressum der Mustermann Haustechnik GmbH – Haustechnik in Musterstadt und Umgebung.">
|
||||
<meta name="robots" content="noindex, follow">
|
||||
<link rel="canonical" href="https://www.olzinger.de/impressum.html">
|
||||
<link rel="canonical" href="https://www.example.com/impressum.html">
|
||||
<meta name="theme-color" content="#0B151E">
|
||||
<meta name="format-detection" content="telephone=no">
|
||||
<link rel="icon" href="assets/img/favicon.svg" type="image/svg+xml">
|
||||
@@ -18,7 +18,7 @@
|
||||
(function (d, w) {
|
||||
var h = d.documentElement;
|
||||
h.className = h.className.replace('no-js', 'js');
|
||||
w.setTimeout(function () { if (!w.__olzReady) { h.classList.remove('js'); h.classList.add('no-js'); } }, 4500);
|
||||
w.setTimeout(function () { if (!w.__hskReady) { h.classList.remove('js'); h.classList.add('no-js'); } }, 4500);
|
||||
})(document, window);
|
||||
</script>
|
||||
<script src="assets/js/contact.js?v=20261004" defer></script>
|
||||
@@ -26,10 +26,9 @@
|
||||
</head>
|
||||
<body class="page">
|
||||
<!--
|
||||
HINWEIS: Bitte vor dem Livegang prüfen und ergänzen.
|
||||
Die Angaben wurden aus öffentlich zugänglichen Quellen (u. a. dem bisherigen Impressum
|
||||
auf olzinger.de) übernommen. Mit „TODO“ markierte Punkte bitte aus dem bestehenden
|
||||
Impressum übernehmen bzw. bestätigen.
|
||||
HSK-VORLAGE: Alle Firmendaten sind Platzhalter (Mustermann Haustechnik GmbH, Musterstadt,
|
||||
example.com). Vor dem Livegang durch die echten Angaben des Betriebs ersetzen
|
||||
(bestehendes Impressum, Handelsregister) und die mit „TODO“ markierten Punkte ergänzen.
|
||||
-->
|
||||
<a class="skip-link" href="#main">Zum Inhalt springen</a>
|
||||
|
||||
@@ -43,13 +42,13 @@
|
||||
|
||||
<header class="nav" data-nav>
|
||||
<div class="nav__bar">
|
||||
<a class="logo" href="index.html" aria-label="Olzinger Haustechnik – zur Startseite">
|
||||
<a class="logo" href="index.html" aria-label="Mustermann Haustechnik – zur Startseite">
|
||||
<svg class="logo__mark" viewBox="0 0 40 40" aria-hidden="true">
|
||||
<defs><linearGradient id="g-logo" x1="0" y1="0" x2="1" y2="0"><stop offset="0" stop-color="#2E9BEF"/><stop offset=".55" stop-color="#C2456B"/><stop offset="1" stop-color="#FF6A2B"/></linearGradient></defs>
|
||||
<path d="M11.97 31.47A14 14 0 1 1 28.03 31.47" fill="none" stroke="url(#g-logo)" stroke-width="5.5" stroke-linecap="round"/>
|
||||
<circle cx="20" cy="20" r="3.4" fill="currentColor"/>
|
||||
</svg>
|
||||
<span class="logo__text"><span class="logo__word">Olzinger</span><span class="logo__sub">Haustechnik</span></span>
|
||||
<span class="logo__text"><span class="logo__word">Mustermann</span><span class="logo__sub">Haustechnik</span></span>
|
||||
</a>
|
||||
<nav class="nav__links" aria-label="Hauptnavigation">
|
||||
<a href="index.html#leistungen">Leistungen</a>
|
||||
@@ -59,7 +58,7 @@
|
||||
<a href="index.html#karriere">Karriere</a>
|
||||
</nav>
|
||||
<div class="nav__actions">
|
||||
<a class="nav__phone" href="tel:+4987172617" aria-label="Anrufen: 0871 72617"><svg class="icon" aria-hidden="true"><use href="#i-phone"/></svg><span>0871 72617</span></a>
|
||||
<a class="nav__phone" href="tel:+491234567890" aria-label="Anrufen: 01234 567890"><svg class="icon" aria-hidden="true"><use href="#i-phone"/></svg><span>01234 567890</span></a>
|
||||
<a class="btn btn--sm btn--warm" href="index.html#kontakt"><span class="btn__label">Anfrage stellen</span></a>
|
||||
<button class="nav__toggle" type="button" aria-expanded="false" aria-controls="menu" data-menu-toggle>
|
||||
<span class="nav__toggle-lines" aria-hidden="true"><i></i><i></i></span>
|
||||
@@ -79,8 +78,8 @@
|
||||
<a href="index.html#kontakt">Kontakt</a>
|
||||
</nav>
|
||||
<div class="menu__foot">
|
||||
<a href="tel:+4987172617"><svg class="icon" aria-hidden="true"><use href="#i-phone"/></svg>0871 72617</a>
|
||||
<a href="mailto:kontakt@olzinger.de"><svg class="icon" aria-hidden="true"><use href="#i-mail"/></svg>kontakt@olzinger.de</a>
|
||||
<a href="tel:+491234567890"><svg class="icon" aria-hidden="true"><use href="#i-phone"/></svg>01234 567890</a>
|
||||
<a href="mailto:kontakt@example.com"><svg class="icon" aria-hidden="true"><use href="#i-mail"/></svg>kontakt@example.com</a>
|
||||
<p class="status status--dark" data-status><span class="status__dot" aria-hidden="true"></span><span class="status__text">Mo–Do 7–16:30 Uhr · Fr 7–11:30 Uhr</span></p>
|
||||
</div>
|
||||
</div>
|
||||
@@ -107,24 +106,24 @@
|
||||
<div class="legal__body" data-reveal>
|
||||
<h2 id="anbieter">Angaben gemäß § 5 DDG</h2>
|
||||
<div class="legal__card">
|
||||
<p><strong>Olzinger GmbH</strong></p>
|
||||
<p>Ahornstraße 112<br>84030 Ergolding</p>
|
||||
<p><strong>Mustermann Haustechnik GmbH</strong></p>
|
||||
<p>Musterstraße 1<br>12345 Musterstadt</p>
|
||||
</div>
|
||||
<h3>Vertreten durch die Geschäftsführer</h3>
|
||||
<p>Franz Ramsauer<br>Robert Straub</p>
|
||||
<h3>Vertreten durch die Geschäftsführerin</h3>
|
||||
<p>Erika Mustermann</p>
|
||||
|
||||
<h2 id="kontakt">Kontakt</h2>
|
||||
<p>
|
||||
Telefon: <a href="tel:+4987172617">0871 72617</a><br>
|
||||
Telefax: 0871 74963<br>
|
||||
E-Mail: <a href="mailto:kontakt@olzinger.de">kontakt@olzinger.de</a>
|
||||
Telefon: <a href="tel:+491234567890">01234 567890</a><br>
|
||||
Telefax: 01234 567891<br>
|
||||
E-Mail: <a href="mailto:kontakt@example.com">kontakt@example.com</a>
|
||||
</p>
|
||||
|
||||
<h2 id="register">Registereintrag</h2>
|
||||
<p>
|
||||
Eintragung im Handelsregister<br>
|
||||
Registergericht: Amtsgericht Landshut<br>
|
||||
Registernummer: HRB 3667
|
||||
Registergericht: Amtsgericht Musterstadt<br>
|
||||
Registernummer: HRB 12345
|
||||
</p>
|
||||
<!-- TODO: Umsatzsteuer-Identifikationsnummer gemäß § 27a UStG aus dem bisherigen Impressum ergänzen:
|
||||
<h3>Umsatzsteuer-ID</h3>
|
||||
@@ -133,7 +132,7 @@
|
||||
<!-- TODO: Berufsrechtliche Angaben bestätigen/ergänzen, z. B.:
|
||||
<h3>Berufsbezeichnung und berufsrechtliche Regelungen</h3>
|
||||
<p>Berufsbezeichnung: Installateur- und Heizungsbauer (verliehen in Deutschland)<br>
|
||||
Zuständige Kammer: Handwerkskammer Niederbayern-Oberpfalz<br>
|
||||
Zuständige Kammer: Handwerkskammer [zuständige Kammer eintragen]<br>
|
||||
Es gilt die Handwerksordnung (HwO), einsehbar unter www.gesetze-im-internet.de</p>
|
||||
-->
|
||||
|
||||
@@ -145,7 +144,7 @@
|
||||
<p>Unsere Website enthält Links zu externen Websites Dritter, auf deren Inhalte wir keinen Einfluss haben. Für die Inhalte der verlinkten Seiten ist stets der jeweilige Anbieter oder Betreiber verantwortlich. Bei Bekanntwerden von Rechtsverletzungen werden wir derartige Links umgehend entfernen.</p>
|
||||
|
||||
<h2 id="urheberrecht">Urheberrecht</h2>
|
||||
<p>Die durch uns erstellten Inhalte und Werke auf dieser Website unterliegen dem deutschen Urheberrecht. Vervielfältigung, Bearbeitung, Verbreitung und jede Art der Verwertung außerhalb der Grenzen des Urheberrechts bedürfen der schriftlichen Zustimmung der Olzinger GmbH.</p>
|
||||
<p>Die durch uns erstellten Inhalte und Werke auf dieser Website unterliegen dem deutschen Urheberrecht. Vervielfältigung, Bearbeitung, Verbreitung und jede Art der Verwertung außerhalb der Grenzen des Urheberrechts bedürfen der schriftlichen Zustimmung der Mustermann Haustechnik GmbH.</p>
|
||||
<p>Illustrationen und Grafiken: individuell für diese Website gestaltet. Schrift: Instrument Sans (SIL Open Font License), lokal eingebunden.</p>
|
||||
|
||||
<p><a class="link-arrow" href="index.html"><svg class="icon" aria-hidden="true"><use href="#i-arrow-left"/></svg> Zurück zur Startseite</a></p>
|
||||
@@ -158,12 +157,12 @@
|
||||
<div class="container">
|
||||
<div class="footer__grid">
|
||||
<div class="footer__col">
|
||||
<h2 class="footer__h">Olzinger GmbH</h2>
|
||||
<address>Ahornstraße 112<br>84030 Ergolding</address>
|
||||
<h2 class="footer__h">Mustermann Haustechnik GmbH</h2>
|
||||
<address>Musterstraße 1<br>12345 Musterstadt</address>
|
||||
</div>
|
||||
<div class="footer__col">
|
||||
<h2 class="footer__h">Kontakt</h2>
|
||||
<p><a href="tel:+4987172617">Tel. 0871 72617</a><br>Fax 0871 74963<br><a href="mailto:kontakt@olzinger.de">kontakt@olzinger.de</a></p>
|
||||
<p><a href="tel:+491234567890">Tel. 01234 567890</a><br>Fax 01234 567891<br><a href="mailto:kontakt@example.com">kontakt@example.com</a></p>
|
||||
</div>
|
||||
<div class="footer__col">
|
||||
<h2 class="footer__h">Öffnungszeiten</h2>
|
||||
@@ -181,7 +180,7 @@
|
||||
</nav>
|
||||
</div>
|
||||
<div class="footer__bottom">
|
||||
<p>© <span data-current-year>2026</span> Olzinger GmbH</p>
|
||||
<p>© <span data-current-year>2026</span> Mustermann Haustechnik GmbH</p>
|
||||
<ul>
|
||||
<li><a href="impressum.html" aria-current="page">Impressum</a></li>
|
||||
<li><a href="datenschutz.html">Datenschutz</a></li>
|
||||
|
||||
+55
-56
@@ -3,19 +3,19 @@
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1, viewport-fit=cover">
|
||||
<title>Olzinger Haustechnik – Heizung, Sanitär, Lüftung & Wärmepumpen in Ergolding bei Landshut</title>
|
||||
<meta name="description" content="Ihr Fachbetrieb für Heizung, Sanitär, Lüftung und regenerative Heiztechnik in Ergolding bei Landshut. Wärmepumpen, Pelletheizungen, Solarthermie, Badsanierung und Kundendienst – seit 1985.">
|
||||
<link rel="canonical" href="https://www.olzinger.de/">
|
||||
<title>Mustermann Haustechnik – Heizung, Sanitär, Lüftung & Wärmepumpen in Musterstadt</title>
|
||||
<meta name="description" content="Ihr Fachbetrieb für Heizung, Sanitär, Lüftung und regenerative Heiztechnik in Musterstadt und Umgebung. Wärmepumpen, Pelletheizungen, Solarthermie, Badsanierung und Kundendienst – seit 1990.">
|
||||
<link rel="canonical" href="https://www.example.com/">
|
||||
<meta name="theme-color" content="#0B151E">
|
||||
<meta name="format-detection" content="telephone=no">
|
||||
|
||||
<meta property="og:type" content="website">
|
||||
<meta property="og:locale" content="de_DE">
|
||||
<meta property="og:site_name" content="Olzinger Haustechnik">
|
||||
<meta property="og:title" content="Olzinger Haustechnik – Wärme. Wasser. Luft.">
|
||||
<meta property="og:description" content="Heizung, Sanitär, Lüftung und regenerative Heiztechnik aus Ergolding bei Landshut – seit 1985.">
|
||||
<meta property="og:url" content="https://www.olzinger.de/">
|
||||
<meta property="og:image" content="https://www.olzinger.de/assets/img/og-image.jpg">
|
||||
<meta property="og:site_name" content="Mustermann Haustechnik">
|
||||
<meta property="og:title" content="Mustermann Haustechnik – Wärme. Wasser. Luft.">
|
||||
<meta property="og:description" content="Heizung, Sanitär, Lüftung und regenerative Heiztechnik aus Musterstadt und Umgebung – seit 1990.">
|
||||
<meta property="og:url" content="https://www.example.com/">
|
||||
<meta property="og:image" content="https://www.example.com/assets/img/og-image.jpg">
|
||||
<meta property="og:image:width" content="1200">
|
||||
<meta property="og:image:height" content="630">
|
||||
<meta name="twitter:card" content="summary_large_image">
|
||||
@@ -34,7 +34,7 @@
|
||||
var h = d.documentElement;
|
||||
h.className = h.className.replace('no-js', 'js');
|
||||
w.setTimeout(function () {
|
||||
if (!w.__olzReady) { h.classList.remove('js'); h.classList.add('no-js'); }
|
||||
if (!w.__hskReady) { h.classList.remove('js'); h.classList.add('no-js'); }
|
||||
}, 4500);
|
||||
})(document, window);
|
||||
</script>
|
||||
@@ -43,31 +43,30 @@
|
||||
{
|
||||
"@context": "https://schema.org",
|
||||
"@type": ["HVACBusiness", "Plumber"],
|
||||
"@id": "https://www.olzinger.de/#betrieb",
|
||||
"name": "Olzinger GmbH",
|
||||
"alternateName": "Olzinger Haustechnik",
|
||||
"description": "Fachbetrieb für Heizung, Sanitär, Lüftung und regenerative Heiztechnik in Ergolding bei Landshut – seit 1985.",
|
||||
"url": "https://www.olzinger.de/",
|
||||
"logo": "https://www.olzinger.de/assets/img/logo.svg",
|
||||
"image": "https://www.olzinger.de/assets/img/og-image.jpg",
|
||||
"telephone": "+49 871 72617",
|
||||
"faxNumber": "+49 871 74963",
|
||||
"email": "kontakt@olzinger.de",
|
||||
"foundingDate": "1985",
|
||||
"founder": { "@type": "Person", "name": "Richard Olzinger" },
|
||||
"numberOfEmployees": { "@type": "QuantitativeValue", "value": 25 },
|
||||
"@id": "https://www.example.com/#betrieb",
|
||||
"name": "Mustermann Haustechnik GmbH",
|
||||
"alternateName": "Mustermann Haustechnik",
|
||||
"description": "Fachbetrieb für Heizung, Sanitär, Lüftung und regenerative Heiztechnik in Musterstadt und Umgebung – seit 1990.",
|
||||
"url": "https://www.example.com/",
|
||||
"logo": "https://www.example.com/assets/img/logo.svg",
|
||||
"image": "https://www.example.com/assets/img/og-image.jpg",
|
||||
"telephone": "+49 1234 567890",
|
||||
"faxNumber": "+49 1234 567891",
|
||||
"email": "kontakt@example.com",
|
||||
"foundingDate": "1990",
|
||||
"founder": { "@type": "Person", "name": "Max Mustermann" },
|
||||
"numberOfEmployees": { "@type": "QuantitativeValue", "value": 20 },
|
||||
"address": {
|
||||
"@type": "PostalAddress",
|
||||
"streetAddress": "Ahornstraße 112",
|
||||
"postalCode": "84030",
|
||||
"addressLocality": "Ergolding",
|
||||
"streetAddress": "Musterstraße 1",
|
||||
"postalCode": "12345",
|
||||
"addressLocality": "Musterstadt",
|
||||
"addressRegion": "Bayern",
|
||||
"addressCountry": "DE"
|
||||
},
|
||||
"areaServed": [
|
||||
{ "@type": "City", "name": "Ergolding" },
|
||||
{ "@type": "City", "name": "Landshut" },
|
||||
{ "@type": "AdministrativeArea", "name": "Landkreis Landshut" }
|
||||
{ "@type": "City", "name": "Musterstadt" },
|
||||
{ "@type": "AdministrativeArea", "name": "Landkreis Musterstadt" }
|
||||
],
|
||||
"openingHoursSpecification": [
|
||||
{ "@type": "OpeningHoursSpecification", "dayOfWeek": ["Monday", "Tuesday", "Wednesday", "Thursday"], "opens": "07:00", "closes": "12:00" },
|
||||
@@ -125,7 +124,7 @@
|
||||
<!-- Navigation -->
|
||||
<header class="nav" data-nav>
|
||||
<div class="nav__bar">
|
||||
<a class="logo" href="#top" aria-label="Olzinger Haustechnik – zum Seitenanfang">
|
||||
<a class="logo" href="#top" aria-label="Mustermann Haustechnik – zum Seitenanfang">
|
||||
<svg class="logo__mark" viewBox="0 0 40 40" aria-hidden="true">
|
||||
<defs>
|
||||
<linearGradient id="g-logo" x1="0" y1="0" x2="1" y2="0">
|
||||
@@ -137,7 +136,7 @@
|
||||
<path d="M11.97 31.47A14 14 0 1 1 28.03 31.47" fill="none" stroke="url(#g-logo)" stroke-width="5.5" stroke-linecap="round"/>
|
||||
<circle cx="20" cy="20" r="3.4" fill="currentColor"/>
|
||||
</svg>
|
||||
<span class="logo__text"><span class="logo__word">Olzinger</span><span class="logo__sub">Haustechnik</span></span>
|
||||
<span class="logo__text"><span class="logo__word">Mustermann</span><span class="logo__sub">Haustechnik</span></span>
|
||||
</a>
|
||||
|
||||
<nav class="nav__links" aria-label="Hauptnavigation">
|
||||
@@ -149,9 +148,9 @@
|
||||
</nav>
|
||||
|
||||
<div class="nav__actions">
|
||||
<a class="nav__phone" href="tel:+4987172617" aria-label="Anrufen: 0871 72617">
|
||||
<a class="nav__phone" href="tel:+491234567890" aria-label="Anrufen: 01234 567890">
|
||||
<svg class="icon" aria-hidden="true"><use href="#i-phone"/></svg>
|
||||
<span>0871 72617</span>
|
||||
<span>01234 567890</span>
|
||||
</a>
|
||||
<a class="btn btn--sm btn--warm" href="#kontakt">
|
||||
<span class="btn__label">Anfrage stellen</span>
|
||||
@@ -175,8 +174,8 @@
|
||||
<a href="#kontakt">Kontakt</a>
|
||||
</nav>
|
||||
<div class="menu__foot">
|
||||
<a href="tel:+4987172617"><svg class="icon" aria-hidden="true"><use href="#i-phone"/></svg>0871 72617</a>
|
||||
<a href="mailto:kontakt@olzinger.de"><svg class="icon" aria-hidden="true"><use href="#i-mail"/></svg>kontakt@olzinger.de</a>
|
||||
<a href="tel:+491234567890"><svg class="icon" aria-hidden="true"><use href="#i-phone"/></svg>01234 567890</a>
|
||||
<a href="mailto:kontakt@example.com"><svg class="icon" aria-hidden="true"><use href="#i-mail"/></svg>kontakt@example.com</a>
|
||||
<p class="status status--dark" data-status><span class="status__dot" aria-hidden="true"></span><span class="status__text">Mo–Do 7–16:30 Uhr · Fr 7–11:30 Uhr</span></p>
|
||||
</div>
|
||||
</div>
|
||||
@@ -190,21 +189,21 @@
|
||||
|
||||
<div class="container hero__inner">
|
||||
<h1 class="hero__title">
|
||||
<span class="sr-only">Olzinger Haustechnik: </span>
|
||||
<span class="sr-only">Mustermann Haustechnik: </span>
|
||||
<span class="hero__line"><span class="hero__word">Wärme<i class="hero__dot hero__dot--warm"></i></span></span>
|
||||
<span class="hero__line"><span class="hero__word">Wasser<i class="hero__dot hero__dot--cool"></i></span></span>
|
||||
<span class="hero__line"><span class="hero__word">Luft<i class="hero__dot hero__dot--air"></i></span></span>
|
||||
</h1>
|
||||
<div class="hero__aside" data-hero-fade>
|
||||
<p class="hero__lead">Heizung, Sanitär und Lüftung vom Fachbetrieb aus Ergolding – seit 1985.</p>
|
||||
<p class="hero__lead">Heizung, Sanitär und Lüftung vom Fachbetrieb aus Musterstadt – seit 1990.</p>
|
||||
<div class="hero__ctas">
|
||||
<a class="btn btn--light" href="#kontakt">
|
||||
<span class="btn__label">Anfrage stellen</span>
|
||||
<span class="btn__icon" aria-hidden="true"><svg class="icon"><use href="#i-arrow"/></svg></span>
|
||||
</a>
|
||||
<a class="btn btn--ghost btn--ghost-light" href="tel:+4987172617">
|
||||
<a class="btn btn--ghost btn--ghost-light" href="tel:+491234567890">
|
||||
<svg class="icon" aria-hidden="true"><use href="#i-phone"/></svg>
|
||||
<span class="btn__label">0871 72617</span>
|
||||
<span class="btn__label">01234 567890</span>
|
||||
</a>
|
||||
</div>
|
||||
</div>
|
||||
@@ -212,7 +211,7 @@
|
||||
|
||||
<div class="container hero__bottom" data-hero-fade>
|
||||
<p class="status status--dark" data-status><span class="status__dot" aria-hidden="true"></span><span class="status__text">Mo–Do 7–16:30 Uhr · Fr 7–11:30 Uhr</span></p>
|
||||
<p class="hero__place">Ahornstraße 112 · Ergolding</p>
|
||||
<p class="hero__place">Musterstraße 1 · Musterstadt</p>
|
||||
</div>
|
||||
</section>
|
||||
|
||||
@@ -886,7 +885,7 @@
|
||||
</ul>
|
||||
<div class="svc__foot">
|
||||
<a class="link-arrow" href="#kontakt" data-topic="Wartung & Störung">Termin vereinbaren <svg class="icon" aria-hidden="true"><use href="#i-arrow"/></svg></a>
|
||||
<a class="svc__phone" href="tel:+4987172617"><svg class="icon" aria-hidden="true"><use href="#i-phone"/></svg>0871 72617</a>
|
||||
<a class="svc__phone" href="tel:+491234567890"><svg class="icon" aria-hidden="true"><use href="#i-phone"/></svg>01234 567890</a>
|
||||
</div>
|
||||
</div>
|
||||
<div class="svc__art">
|
||||
@@ -1215,14 +1214,14 @@
|
||||
<header class="section-head section-head--split">
|
||||
<div>
|
||||
<p class="label" data-reveal>Über uns</p>
|
||||
<h2 class="h1" id="about-title" data-reveal>Seit 1985 in Ergolding</h2>
|
||||
<h2 class="h1" id="about-title" data-reveal>Seit 1990 in Musterstadt</h2>
|
||||
</div>
|
||||
<p class="lead" data-reveal>Rund 25 Fachleute aus der Region – für Heizung, Bad und Lüftung.</p>
|
||||
<p class="lead" data-reveal>Rund 20 Fachleute aus der Region – für Heizung, Bad und Lüftung.</p>
|
||||
</header>
|
||||
|
||||
<ol class="history" data-reveal>
|
||||
<li><span class="history__year">1985</span><p>Richard Olzinger gründet den Betrieb.</p></li>
|
||||
<li><span class="history__year">2014</span><p>Franz Ramsauer und Robert Straub führen den Betrieb gemeinsam.</p></li>
|
||||
<li><span class="history__year">1990</span><p>Max Mustermann gründet den Betrieb.</p></li>
|
||||
<li><span class="history__year">2015</span><p>Erika Mustermann übernimmt die Geschäftsführung.</p></li>
|
||||
<li><span class="history__year">Heute</span><p>Schwerpunkt: Wärmepumpe und regenerative Heiztechnik.</p></li>
|
||||
</ol>
|
||||
</div>
|
||||
@@ -1240,13 +1239,13 @@
|
||||
<p class="job__tag"><svg class="icon" aria-hidden="true"><use href="#i-cap"/></svg>Ausbildung · Start im September</p>
|
||||
<h3 class="job__title">Anlagenmechaniker SHK (m/w/d)</h3>
|
||||
<p>3,5 Jahre mit echten Projekten – von der Wärmepumpe bis zum Bad.</p>
|
||||
<a class="link-arrow" href="mailto:kontakt@olzinger.de?subject=Bewerbung%20Ausbildung%20Anlagenmechaniker%2Fin%20SHK">Jetzt bewerben <svg class="icon" aria-hidden="true"><use href="#i-arrow"/></svg></a>
|
||||
<a class="link-arrow" href="mailto:kontakt@example.com?subject=Bewerbung%20Ausbildung%20Anlagenmechaniker%2Fin%20SHK">Jetzt bewerben <svg class="icon" aria-hidden="true"><use href="#i-arrow"/></svg></a>
|
||||
</article>
|
||||
<article class="job">
|
||||
<p class="job__tag"><svg class="icon" aria-hidden="true"><use href="#i-wrench"/></svg>Fachkräfte · Initiativbewerbung</p>
|
||||
<h3 class="job__title">Anlagenmechaniker, Monteure & Kundendienst (m/w/d)</h3>
|
||||
<p>Erfahrung in Heizung, Sanitär oder Lüftung? Dann melde dich gern.</p>
|
||||
<a class="link-arrow" href="mailto:kontakt@olzinger.de?subject=Initiativbewerbung">Jetzt bewerben <svg class="icon" aria-hidden="true"><use href="#i-arrow"/></svg></a>
|
||||
<a class="link-arrow" href="mailto:kontakt@example.com?subject=Initiativbewerbung">Jetzt bewerben <svg class="icon" aria-hidden="true"><use href="#i-arrow"/></svg></a>
|
||||
</article>
|
||||
</div>
|
||||
</div>
|
||||
@@ -1261,23 +1260,23 @@
|
||||
|
||||
<ul class="cards" data-reveal>
|
||||
<li>
|
||||
<a class="ccard" href="tel:+4987172617">
|
||||
<a class="ccard" href="tel:+491234567890">
|
||||
<span class="ccard__icon" aria-hidden="true"><svg class="icon"><use href="#i-phone"/></svg></span>
|
||||
<span class="ccard__body"><small>Telefon</small><strong>0871 72617</strong></span>
|
||||
<span class="ccard__body"><small>Telefon</small><strong>01234 567890</strong></span>
|
||||
<svg class="icon ccard__go" aria-hidden="true"><use href="#i-arrow-ur"/></svg>
|
||||
</a>
|
||||
</li>
|
||||
<li>
|
||||
<a class="ccard" href="mailto:kontakt@olzinger.de">
|
||||
<a class="ccard" href="mailto:kontakt@example.com">
|
||||
<span class="ccard__icon" aria-hidden="true"><svg class="icon"><use href="#i-mail"/></svg></span>
|
||||
<span class="ccard__body"><small>E-Mail</small><strong>kontakt@olzinger.de</strong></span>
|
||||
<span class="ccard__body"><small>E-Mail</small><strong>kontakt@example.com</strong></span>
|
||||
<svg class="icon ccard__go" aria-hidden="true"><use href="#i-arrow-ur"/></svg>
|
||||
</a>
|
||||
</li>
|
||||
<li>
|
||||
<a class="ccard" href="https://www.google.com/maps/dir/?api=1&destination=Olzinger+GmbH%2C+Ahornstra%C3%9Fe+112%2C+84030+Ergolding" target="_blank" rel="noopener">
|
||||
<a class="ccard" href="https://www.google.com/maps/dir/?api=1&destination=Mustermann+Haustechnik+GmbH%2C+Musterstra%C3%9Fe+1%2C+12345+Musterstadt" target="_blank" rel="noopener">
|
||||
<span class="ccard__icon" aria-hidden="true"><svg class="icon"><use href="#i-pin"/></svg></span>
|
||||
<span class="ccard__body"><small>Adresse · Route planen</small><strong>Ahornstraße 112, 84030 Ergolding</strong></span>
|
||||
<span class="ccard__body"><small>Adresse · Route planen</small><strong>Musterstraße 1, 12345 Musterstadt</strong></span>
|
||||
<svg class="icon ccard__go" aria-hidden="true"><use href="#i-arrow-ur"/></svg>
|
||||
</a>
|
||||
</li>
|
||||
@@ -1369,12 +1368,12 @@
|
||||
<div class="container">
|
||||
<div class="footer__grid">
|
||||
<div class="footer__col">
|
||||
<h2 class="footer__h">Olzinger GmbH</h2>
|
||||
<address>Ahornstraße 112<br>84030 Ergolding</address>
|
||||
<h2 class="footer__h">Mustermann Haustechnik GmbH</h2>
|
||||
<address>Musterstraße 1<br>12345 Musterstadt</address>
|
||||
</div>
|
||||
<div class="footer__col">
|
||||
<h2 class="footer__h">Kontakt</h2>
|
||||
<p><a href="tel:+4987172617">Tel. 0871 72617</a><br>Fax 0871 74963<br><a href="mailto:kontakt@olzinger.de">kontakt@olzinger.de</a></p>
|
||||
<p><a href="tel:+491234567890">Tel. 01234 567890</a><br>Fax 01234 567891<br><a href="mailto:kontakt@example.com">kontakt@example.com</a></p>
|
||||
</div>
|
||||
<div class="footer__col">
|
||||
<h2 class="footer__h">Öffnungszeiten</h2>
|
||||
@@ -1393,7 +1392,7 @@
|
||||
</div>
|
||||
|
||||
<div class="footer__bottom">
|
||||
<p>© <span data-current-year>2026</span> Olzinger GmbH</p>
|
||||
<p>© <span data-current-year>2026</span> Mustermann Haustechnik GmbH</p>
|
||||
<ul>
|
||||
<li><a href="impressum.html">Impressum</a></li>
|
||||
<li><a href="datenschutz.html">Datenschutz</a></li>
|
||||
|
||||
+7
-7
@@ -1,6 +1,6 @@
|
||||
<?php
|
||||
/**
|
||||
* Olzinger Haustechnik – Versand des Kontaktformulars
|
||||
* HSK-Vorlage – Versand des Kontaktformulars
|
||||
*
|
||||
* Wird per fetch() aus assets/js/contact.js aufgerufen und antwortet mit JSON.
|
||||
* Ist PHP auf dem Server nicht verfügbar, öffnet das Formular automatisch das
|
||||
@@ -13,9 +13,9 @@
|
||||
|
||||
declare(strict_types=1);
|
||||
|
||||
const RECIPIENT = 'kontakt@olzinger.de';
|
||||
const RECIPIENT = 'kontakt@example.com';
|
||||
// Absender sollte eine Adresse der eigenen Domain sein (SPF/DKIM), sonst landen Mails im Spam.
|
||||
const SENDER = 'kontakt@olzinger.de';
|
||||
const SENDER = 'kontakt@example.com';
|
||||
const MIN_SECONDS = 3;
|
||||
|
||||
date_default_timezone_set('Europe/Berlin');
|
||||
@@ -85,9 +85,9 @@ if ($errors) {
|
||||
respond(422, ['ok' => false, 'errors' => $errors]);
|
||||
}
|
||||
|
||||
$subject = 'Anfrage über olzinger.de' . ($topic !== '' ? ' – ' . $topic : '');
|
||||
$subject = 'Anfrage über example.com' . ($topic !== '' ? ' – ' . $topic : '');
|
||||
$body = implode("\n", [
|
||||
'Neue Anfrage über das Kontaktformular auf olzinger.de',
|
||||
'Neue Anfrage über das Kontaktformular auf example.com',
|
||||
'',
|
||||
'Anliegen: ' . ($topic !== '' ? $topic : '–'),
|
||||
'Name: ' . $name,
|
||||
@@ -103,12 +103,12 @@ $body = implode("\n", [
|
||||
]);
|
||||
|
||||
$headers = implode("\r\n", [
|
||||
'From: Website Olzinger <' . SENDER . '>',
|
||||
'From: Website Mustermann <' . SENDER . '>',
|
||||
'Reply-To: ' . $email,
|
||||
'MIME-Version: 1.0',
|
||||
'Content-Type: text/plain; charset=UTF-8',
|
||||
'Content-Transfer-Encoding: 8bit',
|
||||
'X-Mailer: olzinger.de',
|
||||
'X-Mailer: example.com',
|
||||
]);
|
||||
|
||||
$encodedSubject = '=?UTF-8?B?' . base64_encode($subject) . '?=';
|
||||
|
||||
+1
-1
@@ -1,4 +1,4 @@
|
||||
User-agent: *
|
||||
Allow: /
|
||||
|
||||
Sitemap: https://www.olzinger.de/sitemap.xml
|
||||
Sitemap: https://www.example.com/sitemap.xml
|
||||
+2
-2
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "Olzinger Haustechnik",
|
||||
"short_name": "Olzinger",
|
||||
"name": "Mustermann Haustechnik",
|
||||
"short_name": "Mustermann",
|
||||
"icons": [
|
||||
{ "src": "assets/img/favicon.svg", "sizes": "any", "type": "image/svg+xml" },
|
||||
{ "src": "assets/img/apple-touch-icon.png", "sizes": "180x180", "type": "image/png" }
|
||||
|
||||
+6
-6
@@ -1,19 +1,19 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
|
||||
<url>
|
||||
<loc>https://www.olzinger.de/</loc>
|
||||
<lastmod>2026-10-03</lastmod>
|
||||
<loc>https://www.example.com/</loc>
|
||||
<lastmod>2026-10-04</lastmod>
|
||||
<changefreq>monthly</changefreq>
|
||||
<priority>1.0</priority>
|
||||
</url>
|
||||
<url>
|
||||
<loc>https://www.olzinger.de/impressum.html</loc>
|
||||
<lastmod>2026-10-03</lastmod>
|
||||
<loc>https://www.example.com/impressum.html</loc>
|
||||
<lastmod>2026-10-04</lastmod>
|
||||
<priority>0.2</priority>
|
||||
</url>
|
||||
<url>
|
||||
<loc>https://www.olzinger.de/datenschutz.html</loc>
|
||||
<lastmod>2026-10-03</lastmod>
|
||||
<loc>https://www.example.com/datenschutz.html</loc>
|
||||
<lastmod>2026-10-04</lastmod>
|
||||
<priority>0.2</priority>
|
||||
</url>
|
||||
</urlset>
|
||||
@@ -15,7 +15,7 @@
|
||||
.og__title span { display: block; }
|
||||
.og__title i { display: inline-block; width: .15em; height: .15em; margin-left: .045em; border-radius: 50%; }
|
||||
.og__sub { position: absolute; left: 64px; bottom: 58px; margin: 0; font-size: 26px; font-weight: 500; color: rgba(243,239,232,.86); }
|
||||
.og__url { position: absolute; right: 64px; bottom: 58px; margin: 0; font-family: var(--font-mono); font-size: 18px; color: rgba(243,239,232,.7); }
|
||||
.og__url { position: absolute; right: 64px; bottom: 58px; margin: 0; font-family: ui-monospace, "SFMono-Regular", Menlo, Consolas, "DejaVu Sans Mono", monospace; font-size: 18px; color: rgba(243,239,232,.7); }
|
||||
</style>
|
||||
</head>
|
||||
<body>
|
||||
@@ -27,19 +27,19 @@
|
||||
<path d="M11.97 31.47A14 14 0 1 1 28.03 31.47" fill="none" stroke="url(#g-logo)" stroke-width="5.5" stroke-linecap="round"/>
|
||||
<circle cx="20" cy="20" r="3.4" fill="currentColor"/>
|
||||
</svg>
|
||||
<span class="logo__text"><span class="logo__word" style="font-size:28px">Olzinger</span><span class="logo__sub" style="font-size:14px">Haustechnik</span></span>
|
||||
<span class="logo__text"><span class="logo__word" style="font-size:28px">Mustermann</span><span class="logo__sub" style="font-size:14px">Haustechnik</span></span>
|
||||
</a>
|
||||
<h1 class="og__title">
|
||||
<span>Wärme<i style="background:#FF6A2B;box-shadow:0 0 .28em rgba(255,106,43,.75)"></i></span>
|
||||
<span>Wasser<i style="background:#2E9BEF;box-shadow:0 0 .28em rgba(46,155,239,.75)"></i></span>
|
||||
<span>Luft<i style="background:#3CCFC0;box-shadow:0 0 .28em rgba(60,207,192,.7)"></i></span>
|
||||
</h1>
|
||||
<p class="og__sub">Heizung · Sanitär · Lüftung · Regenerativ – Ergolding bei Landshut, seit 1985</p>
|
||||
<p class="og__url">olzinger.de</p>
|
||||
<p class="og__sub">Heizung · Sanitär · Lüftung · Regenerativ – Musterstadt, seit 1990</p>
|
||||
<p class="og__url">example.com</p>
|
||||
</div>
|
||||
<script src="../assets/js/thermal.js"></script>
|
||||
<script>
|
||||
var t = OlzThermal.init(document.querySelector('[data-thermal]'), { hero: document.getElementById('og'), reduceMotion: false });
|
||||
var t = HskThermal.init(document.querySelector('[data-thermal]'), { hero: document.getElementById('og'), reduceMotion: false });
|
||||
if (t) t.heatUp();
|
||||
</script>
|
||||
</body>
|
||||
|
||||
Reference in new issue
Block a user