diff --git a/Caddyfile b/Caddyfile index 4b1e7db..cdbbae2 100644 --- a/Caddyfile +++ b/Caddyfile @@ -4,6 +4,11 @@ } :80 { + # Shared assets available on all domains under /shared/ + handle /shared/* { + root * /srv + file_server + } @allaisonme_com host allaisonme.com handle @allaisonme_com { root * /srv/allaisonme.com diff --git a/build.sh b/build.sh index 39900ca..c1d2bf4 100755 --- a/build.sh +++ b/build.sh @@ -45,6 +45,11 @@ for site_dir in "$SCRIPT_DIR/sites"/*/; do done echo " -> $count sites built" -# 3. Report -echo "[3/3] Build complete" +# 3. Copy shared assets +echo "[3/3] Copying shared assets..." +cp -r "$SCRIPT_DIR/shared" "$BUILD_DIR/shared" +echo " -> shared/ copied" + +# 4. Report +echo "[4/4] Build complete" echo "=== Build complete: $count sites ===" diff --git a/generate-caddyfile.sh b/generate-caddyfile.sh old mode 100644 new mode 100755 index bd4a3c9..b0e8784 --- a/generate-caddyfile.sh +++ b/generate-caddyfile.sh @@ -14,6 +14,14 @@ cat <<'HEADER' :80 { HEADER +cat <<'SHARED' + # Shared assets available on all domains under /shared/ + handle /shared/* { + root * /srv + file_server + } +SHARED + for site_dir in "$SITES_DIR"/*/; do [ -f "$site_dir/site.yaml" ] || continue domain=$(basename "$site_dir") diff --git a/shared/impressum.js b/shared/impressum.js new file mode 100644 index 0000000..d61a15e --- /dev/null +++ b/shared/impressum.js @@ -0,0 +1,45 @@ +/** + * Modulares Impressum für Onepager-Sites. + * + * Einbinden: + * + * Konfiguration via data-Attribute am Script-Tag: + * data-owner="msbls" (default) — Kurzform, msbls.de Satire-Impressum + * data-owner="martinsiebels" — Volles Impressum Martin Siebels + * data-style="minimal" (default) — Einzeiler + * data-style="full" — Komplettes Impressum mit Adresse etc. + */ +(function () { + const script = document.currentScript; + const owner = script?.getAttribute('data-owner') || 'msbls'; + const style = script?.getAttribute('data-style') || 'minimal'; + + const owners = { + msbls: { + minimal: 'Ein Projekt von msbls.de', + full: 'Angaben gemäß § 5 TMG:
msbls.de — Martin Siebels
Vollständiges Impressum', + }, + }; + + const config = owners[owner] || owners.msbls; + const html = config[style] || config.minimal; + + // Impressum-Element erstellen + const el = document.createElement('div'); + el.className = 'onepager-impressum'; + el.innerHTML = html; + + // Styling — erbt Farben vom footer/body, bleibt dezent + el.style.cssText = 'text-align:center;font-size:0.7rem;opacity:0.5;padding:8px 0;margin-top:4px;'; + el.querySelector('a')?.style && Object.assign(el.querySelector('a').style, { + color: 'inherit', textDecoration: 'none' + }); + + // Einfügen: in + diff --git a/sites/killions.de/index.html b/sites/killions.de/index.html index c975e31..ff59b68 100644 --- a/sites/killions.de/index.html +++ b/sites/killions.de/index.html @@ -287,8 +287,9 @@ + diff --git a/sites/killuminati.de/index.html b/sites/killuminati.de/index.html index 4667896..cb22079 100644 --- a/sites/killuminati.de/index.html +++ b/sites/killuminati.de/index.html @@ -287,8 +287,8 @@ + diff --git a/sites/killusion.de/index.html b/sites/killusion.de/index.html index 173ae03..fc1ee19 100644 --- a/sites/killusion.de/index.html +++ b/sites/killusion.de/index.html @@ -277,8 +277,9 @@ +