i18n: EN-Lagen-Seiten + zweisprachiges Kontaktformular (Phase 3+4)

Phase 3 - Englische Lagebild-Seiten:
- /en/situations/iran-conflict/, /en/situations/cyber-attacks/,
  /en/situations/deepfakes/ erstellt (Mirror der DE-Lagen mit
  englischer UI)
- lagebild.js: curLang() liest jetzt direkt <html lang>; neuer
  dataBase()-Helper, damit EN-Seiten die JSON-Daten aus dem
  DE-Pfad nachladen koennen (window.LAGEBILD_DATA_BASE pro Seite)
- 4 zuvor hardcodierte DE-Strings (emptyDevelopments, emptySummary,
  Quelle-Tooltip, Schliessen-Aria) ueber t() und das vorhandene
  lang.de/lang.en-Dictionary uebersetzt
- DE-Lagen-Seiten: hreflang-Tags wieder aktiv, Toggle zeigt nun
  korrekt auf das EN-Pendant statt /en/
- en/index.html Karussell-Buttons zeigen auf EN-Lagen
- Sitemap mit hreflang-Alternativen fuer alle Lagen ergaenzt

Phase 4 - Kontaktformular zweisprachig (Frontend):
- js/app.js submitContact() liest <html lang>, sendet lang im POST
  und zeigt Sende-/Fehler-Texte in der jeweiligen Sprache
- Backend (contact-form.py) wird separat ausgerollt, ist aber
  abwaertskompatibel: bei fehlendem lang-Param defaultet es auf de

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Dieser Commit ist enthalten in:
2026-05-06 23:28:05 +02:00
Ursprung 8c8130509a
Commit 645fb33898
10 geänderte Dateien mit 691 neuen und 26 gelöschten Zeilen

Datei anzeigen

@@ -0,0 +1,153 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Situation report: Cyberattacks on German infrastructure - AegisSight</title>
<meta name="robots" content="noindex, nofollow, noarchive, nosnippet, noimageindex">
<link rel="alternate" hreflang="de" href="https://aegis-sight.de/lagen/cyberangriffe/">
<link rel="alternate" hreflang="en" href="https://aegis-sight.de/en/situations/cyber-attacks/">
<link rel="alternate" hreflang="x-default" href="https://aegis-sight.de/lagen/cyberangriffe/">
<link rel="icon" type="image/svg+xml" href="/favicon.svg">
<link rel="stylesheet" href="/css/main.css">
<link rel="stylesheet" href="/css/fonts.css">
<link rel="stylesheet" href="/css/mobile.css">
<link rel="stylesheet" href="/css/lang-switcher.css">
<link rel="stylesheet" href="/lagen/iran-konflikt/lagebild.css">
<link rel="stylesheet" href="https://unpkg.com/leaflet@1.9.4/dist/leaflet.css" />
<link rel="stylesheet" href="https://unpkg.com/leaflet.markercluster@1.5.3/dist/MarkerCluster.css">
<link rel="stylesheet" href="https://unpkg.com/leaflet.markercluster@1.5.3/dist/MarkerCluster.Default.css">
<link rel="stylesheet" href="/cookie-consent.css">
<script>window.LAGEBILD_DATA_BASE = '/lagen/cyberangriffe/';</script>
</head>
<body class="lagebild-page">
<div class="scroll-progress" id="scroll-progress"></div>
<nav class="navbar" role="navigation">
<div class="nav-container">
<div class="logo">
<a href="/en/"><img src="/assets/images/logos/Logo+Schrift_Rechts.png" alt="AegisSight" class="logo-img"></a>
</div>
<ul class="nav-menu">
<li><a href="/en/">Home</a></li>
<li><a href="/en/#trust">About Us</a></li>
<li><a href="/en/#features">Features</a></li>
<li><a href="mailto:info@aegis-sight.de">Contact</a></li>
</ul>
<div class="nav-extras">
<div class="lang-switcher" role="group" aria-label="Language">
<a class="lang-link" href="/lagen/cyberangriffe/" lang="de" hreflang="de" rel="alternate">DE</a>
<span class="lang-sep" aria-hidden="true">|</span>
<span class="lang-active" lang="en" aria-current="true">EN</span>
</div>
<button class="mobile-menu-toggle" aria-label="Open menu" aria-expanded="false">
<span class="hamburger"><span></span><span></span><span></span></span>
</button>
</div>
</div>
</nav>
<div class="nav-menu-mobile" aria-hidden="true">
<button class="mobile-menu-close" aria-label="Close menu">
<svg viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M18 6L6 18M6 6l12 12" stroke="currentColor"/></svg>
</button>
<ul>
<li><a href="/en/">Home</a></li>
<li><a href="/en/#trust">About Us</a></li>
<li><a href="/en/#features">Features</a></li>
<li><a href="mailto:info@aegis-sight.de">Contact</a></li>
</ul>
<div class="lang-switcher" role="group" aria-label="Language">
<a class="lang-link" href="/lagen/cyberangriffe/" lang="de" hreflang="de" rel="alternate">DE</a>
<span class="lang-sep" aria-hidden="true">|</span>
<span class="lang-active" lang="en" aria-current="true">EN</span>
</div>
</div>
<div class="mobile-menu-overlay"></div>
<section class="lagebild-hero">
<canvas id="hero-particles"></canvas>
<div class="hero-bg-pattern"></div>
<div class="container">
<h1 id="hero-title">SITUATION REPORT</h1>
<p class="hero-incident-title" id="incident-title"></p>
<div class="hero-stats" id="hero-stats"></div>
</div>
</section>
<div class="control-bar">
<div class="container">
<div class="timeline-wrapper">
<div class="timeline-strip" id="timeline-strip"></div>
<div class="timeline-dropdown" id="timeline-dropdown"></div>
</div>
<div class="tab-nav" id="tab-nav">
<button class="tab-btn active" data-tab="ueberblick">Latest Developments</button>
<button class="tab-btn" data-tab="lagebild">Briefing</button>
<button class="tab-btn" data-tab="karte">Map</button>
<button class="tab-btn" data-tab="faktenchecks">Fact Checks <span class="tab-badge" id="tab-badge-faktenchecks"></span></button>
<button class="tab-btn" data-tab="quellen">Sources <span class="tab-badge" id="tab-badge-quellen"></span></button>
</div>
</div>
</div>
<main class="lagebild-main">
<div class="container">
<div class="tab-panel active" id="panel-ueberblick">
<p class="data-source-note">Data provided by AegisSight Monitor</p>
<section class="content-card">
<div class="card-header">
<h2 id="ueberblick-title">Latest Developments</h2>
<span class="card-timestamp" id="ueberblick-timestamp"></span>
</div>
<div class="card-body" id="ueberblick-content">
<div class="loading-skeleton"><div class="skeleton-line"></div><div class="skeleton-line"></div><div class="skeleton-line short"></div></div>
</div>
</section>
</div>
<div class="tab-panel" id="panel-lagebild">
<p class="data-source-note">Data provided by AegisSight Monitor</p>
<section class="content-card">
<div class="card-header">
<h2 id="lagebild-date-title">Briefing</h2>
<span class="card-timestamp" id="lagebild-timestamp"></span>
</div>
<div class="card-body" id="summary-content">
<div class="loading-skeleton"><div class="skeleton-line"></div><div class="skeleton-line"></div><div class="skeleton-line short"></div></div>
</div>
<div class="card-footer" id="inline-sources"></div>
</section>
</div>
<div class="tab-panel" id="panel-quellen">
<section class="content-card">
<div class="card-header"><h2>Sources</h2><p class="card-description">All sources monitored by AegisSight Monitor</p></div>
<div class="card-body" id="sources-grid-container"><div class="loading-skeleton"><div class="skeleton-line"></div><div class="skeleton-line short"></div></div></div>
</section>
</div>
<div class="tab-panel" id="panel-karte">
<section class="content-card">
<div class="card-header"><h2>Map</h2><p class="card-description">Geographic distribution of reports</p></div>
<div class="card-body"><div id="map-container" style="height:500px;border-radius:4px;overflow:hidden;"></div></div>
</section>
</div>
<div class="tab-panel" id="panel-faktenchecks">
<section class="content-card">
<div class="card-header"><h2>Fact Checks</h2><p class="card-description">AI-powered verification of all key statements against independent sources.</p></div>
<div class="card-body" id="factchecks-content"></div>
</section>
</div>
</div>
</main>
<footer class="footer">
<div class="container">
<div class="footer-content">
<div class="footer-section"><h4>AegisSight UG (haftungsbeschränkt)</h4><p>Gladbacher Strasse 3-5</p><p>40764 Langenfeld, Germany</p></div>
<div class="footer-section"><h4>Navigation</h4><ul><li><a href="/en/">Home</a></li><li><a href="/en/#features">Features</a></li><li><a href="/en/#demos">Live Reports</a></li><li><a href="/en/#trust">About Us</a></li><li><a href="/en/#contact">Contact</a></li></ul></div>
<div class="footer-section"><h4>Legal</h4><ul><li><a href="/en/legal-notice.html">Legal notice</a></li><li><a href="/en/privacy.html">Privacy policy</a></li><li><a href="#" id="cookie-settings-link">Cookie settings</a></li></ul></div>
<div class="footer-section"><h4>Contact</h4><p>info@aegis-sight.de</p></div>
</div>
<p class="copyright">&copy; 2026 AegisSight UG (haftungsbeschränkt). All rights reserved.</p>
</div>
</footer>
<script src="/js/mobile-nav.js"></script>
<script src="https://unpkg.com/leaflet@1.9.4/dist/leaflet.js"></script>
<script src="https://unpkg.com/leaflet.markercluster@1.5.3/dist/leaflet.markercluster.js"></script>
<script src="/lagen/iran-konflikt/lagebild.js"></script>
<script src="/cookie-consent.js"></script>
</body>
</html>

Datei anzeigen

@@ -0,0 +1,224 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Research: Legal status of deepfakes in Germany - AegisSight</title>
<meta name="robots" content="noindex, nofollow, noarchive, nosnippet, noimageindex">
<link rel="alternate" hreflang="de" href="https://aegis-sight.de/lagen/deepfakes/">
<link rel="alternate" hreflang="en" href="https://aegis-sight.de/en/situations/deepfakes/">
<link rel="alternate" hreflang="x-default" href="https://aegis-sight.de/lagen/deepfakes/">
<link rel="icon" type="image/svg+xml" href="/favicon.svg">
<link rel="stylesheet" href="/css/main.css">
<link rel="stylesheet" href="/css/fonts.css">
<link rel="stylesheet" href="/css/mobile.css">
<link rel="stylesheet" href="/css/lang-switcher.css">
<link rel="stylesheet" href="/lagen/iran-konflikt/lagebild.css">
<link rel="stylesheet" href="https://unpkg.com/leaflet@1.9.4/dist/leaflet.css" />
<link rel="stylesheet" href="https://unpkg.com/leaflet.markercluster@1.5.3/dist/MarkerCluster.css">
<link rel="stylesheet" href="https://unpkg.com/leaflet.markercluster@1.5.3/dist/MarkerCluster.Default.css">
<link rel="stylesheet" href="/cookie-consent.css">
<script>window.LAGEBILD_DATA_BASE = '/lagen/deepfakes/';</script>
</head>
<body class="lagebild-page">
<!-- Scroll Progress Bar -->
<div class="scroll-progress" id="scroll-progress"></div>
<!-- Navigation -->
<nav class="navbar" role="navigation">
<div class="nav-container">
<div class="logo">
<a href="/en/"><img src="/assets/images/logos/Logo+Schrift_Rechts.png" alt="AegisSight" class="logo-img"></a>
</div>
<ul class="nav-menu">
<li><a href="/en/">Home</a></li>
<li><a href="/en/#trust">About Us</a></li>
<li><a href="/en/#features">Features</a></li>
<li><a href="mailto:info@aegis-sight.de">Contact</a></li>
</ul>
<div class="nav-extras">
<div class="lang-switcher" role="group" aria-label="Language">
<a class="lang-link" href="/lagen/deepfakes/" lang="de" hreflang="de" rel="alternate">DE</a>
<span class="lang-sep" aria-hidden="true">|</span>
<span class="lang-active" lang="en" aria-current="true">EN</span>
</div>
<button class="mobile-menu-toggle" aria-label="Open menu" aria-expanded="false">
<span class="hamburger"><span></span><span></span><span></span></span>
</button>
</div>
</div>
</nav>
<!-- Mobile Navigation -->
<div class="nav-menu-mobile" aria-hidden="true">
<button class="mobile-menu-close" aria-label="Close menu">
<svg viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M18 6L6 18M6 6l12 12" stroke="currentColor"/></svg>
</button>
<ul>
<li><a href="/en/">Home</a></li>
<li><a href="/en/#trust">About Us</a></li>
<li><a href="/en/#features">Features</a></li>
<li><a href="mailto:info@aegis-sight.de">Contact</a></li>
</ul>
<div class="lang-switcher" role="group" aria-label="Language">
<a class="lang-link" href="/lagen/deepfakes/" lang="de" hreflang="de" rel="alternate">DE</a>
<span class="lang-sep" aria-hidden="true">|</span>
<span class="lang-active" lang="en" aria-current="true">EN</span>
</div>
</div>
<div class="mobile-menu-overlay"></div>
<!-- Hero Section -->
<section class="lagebild-hero">
<canvas id="hero-particles"></canvas>
<div class="hero-bg-pattern"></div>
<div class="container">
<h1 id="hero-title">RESEARCH BRIEFING</h1>
<p class="hero-incident-title" id="incident-title"></p>
<div class="hero-stats" id="hero-stats"></div>
</div>
</section>
<!-- Control Bar: Timeline + Tabs -->
<div class="control-bar">
<div class="container">
<div class="timeline-wrapper">
<div class="timeline-strip" id="timeline-strip"></div>
<div class="timeline-dropdown" id="timeline-dropdown"></div>
</div>
<div class="tab-nav" id="tab-nav">
<button class="tab-btn active" data-tab="ueberblick">Summary</button>
<button class="tab-btn" data-tab="lagebild">Research</button>
<button class="tab-btn" data-tab="karte">Map</button>
<button class="tab-btn" data-tab="faktenchecks">Fact Checks <span class="tab-badge" id="tab-badge-faktenchecks"></span></button>
<button class="tab-btn" data-tab="quellen">Sources <span class="tab-badge" id="tab-badge-quellen"></span></button>
</div>
</div>
</div>
<!-- Main Content -->
<main class="lagebild-main">
<div class="container">
<!-- Tab: Summary -->
<div class="tab-panel active" id="panel-ueberblick">
<p class="data-source-note">Data provided by AegisSight Monitor</p>
<section class="content-card">
<div class="card-header">
<h2 id="ueberblick-title">Summary</h2>
<span class="card-timestamp" id="ueberblick-timestamp"></span>
</div>
<div class="card-body" id="ueberblick-content">
<div class="loading-skeleton">
<div class="skeleton-line"></div>
<div class="skeleton-line"></div>
<div class="skeleton-line short"></div>
</div>
</div>
</section>
</div>
<!-- Tab: Research -->
<div class="tab-panel" id="panel-lagebild">
<p class="data-source-note">Data provided by AegisSight Monitor</p>
<section class="content-card">
<div class="card-header">
<h2 id="lagebild-date-title">Research</h2>
<span class="card-timestamp" id="lagebild-timestamp"></span>
</div>
<div class="card-body" id="summary-content">
<div class="loading-skeleton">
<div class="skeleton-line"></div>
<div class="skeleton-line"></div>
<div class="skeleton-line short"></div>
</div>
</div>
<div class="card-footer" id="inline-sources"></div>
</section>
</div>
<!-- Tab: Sources -->
<div class="tab-panel" id="panel-quellen">
<section class="content-card">
<div class="card-header">
<h2>Sources</h2>
<p class="card-description">All sources analysed by AegisSight Monitor</p>
</div>
<div class="card-body" id="sources-grid-container">
<div class="loading-skeleton">
<div class="skeleton-line"></div>
<div class="skeleton-line short"></div>
</div>
</div>
</section>
</div>
<!-- Tab: Map -->
<div class="tab-panel" id="panel-karte">
<section class="content-card">
<div class="card-header">
<h2>Map</h2>
<p class="card-description">Geographic distribution of sources</p>
</div>
<div class="card-body">
<div id="map-container" style="height:500px;border-radius:4px;overflow:hidden;"></div>
</div>
</section>
</div>
<!-- Tab: Fact Checks -->
<div class="tab-panel" id="panel-faktenchecks">
<section class="content-card">
<div class="card-header">
<h2>Fact Checks</h2>
<p class="card-description">AI-powered verification of all key statements against independent sources.</p>
</div>
<div class="card-body" id="factchecks-content"></div>
</section>
</div>
</div>
</main>
<!-- Footer -->
<footer class="footer">
<div class="container">
<div class="footer-content">
<div class="footer-section">
<h4>AegisSight UG (haftungsbeschränkt)</h4>
<p>Gladbacher Strasse 3-5</p>
<p>40764 Langenfeld, Germany</p>
</div>
<div class="footer-section">
<h4>Navigation</h4>
<ul>
<li><a href="/en/">Home</a></li>
<li><a href="/en/#features">Features</a></li>
<li><a href="/en/#demos">Live Reports</a></li>
<li><a href="/en/#trust">About Us</a></li>
<li><a href="/en/#contact">Contact</a></li>
</ul>
</div>
<div class="footer-section">
<h4>Legal</h4>
<ul>
<li><a href="/en/legal-notice.html">Legal notice</a></li>
<li><a href="/en/privacy.html">Privacy policy</a></li>
<li><a href="#" id="cookie-settings-link">Cookie settings</a></li>
</ul>
</div>
<div class="footer-section">
<h4>Contact</h4>
<p>info@aegis-sight.de</p>
</div>
</div>
<p class="copyright">&copy; 2026 AegisSight UG (haftungsbeschränkt). All rights reserved.</p>
</div>
</footer>
<!-- Scripts -->
<script src="/js/mobile-nav.js"></script>
<script src="https://unpkg.com/leaflet@1.9.4/dist/leaflet.js"></script>
<script src="https://unpkg.com/leaflet.markercluster@1.5.3/dist/leaflet.markercluster.js"></script>
<script src="/lagen/iran-konflikt/lagebild.js"></script>
<script src="/cookie-consent.js"></script>
</body>
</html>

Datei anzeigen

@@ -0,0 +1,226 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Situation report: Iran conflict - AegisSight</title>
<meta name="robots" content="noindex, nofollow, noarchive, nosnippet, noimageindex">
<link rel="alternate" hreflang="de" href="https://aegis-sight.de/lagen/iran-konflikt/">
<link rel="alternate" hreflang="en" href="https://aegis-sight.de/en/situations/iran-conflict/">
<link rel="alternate" hreflang="x-default" href="https://aegis-sight.de/lagen/iran-konflikt/">
<link rel="icon" type="image/svg+xml" href="/favicon.svg">
<link rel="stylesheet" href="/css/main.css">
<link rel="stylesheet" href="/css/fonts.css">
<link rel="stylesheet" href="/css/mobile.css">
<link rel="stylesheet" href="/css/lang-switcher.css">
<link rel="stylesheet" href="/lagen/iran-konflikt/lagebild.css">
<link rel="stylesheet" href="https://unpkg.com/leaflet@1.9.4/dist/leaflet.css" />
<link rel="stylesheet" href="https://unpkg.com/leaflet.markercluster@1.5.3/dist/MarkerCluster.css">
<link rel="stylesheet" href="https://unpkg.com/leaflet.markercluster@1.5.3/dist/MarkerCluster.Default.css">
<link rel="stylesheet" href="/cookie-consent.css">
<script>window.LAGEBILD_DATA_BASE = '/lagen/iran-konflikt/';</script>
</head>
<body class="lagebild-page">
<!-- Scroll Progress Bar -->
<div class="scroll-progress" id="scroll-progress"></div>
<!-- Navigation -->
<nav class="navbar" role="navigation">
<div class="nav-container">
<div class="logo">
<a href="/en/"><img src="/assets/images/logos/Logo+Schrift_Rechts.png" alt="AegisSight" class="logo-img"></a>
</div>
<ul class="nav-menu">
<li><a href="/en/">Home</a></li>
<li><a href="/en/#trust">About Us</a></li>
<li><a href="/en/#features">Features</a></li>
<li><a href="mailto:info@aegis-sight.de">Contact</a></li>
</ul>
<div class="nav-extras">
<div class="lang-switcher" role="group" aria-label="Language">
<a class="lang-link" href="/lagen/iran-konflikt/" lang="de" hreflang="de" rel="alternate">DE</a>
<span class="lang-sep" aria-hidden="true">|</span>
<span class="lang-active" lang="en" aria-current="true">EN</span>
</div>
<button class="mobile-menu-toggle" aria-label="Open menu" aria-expanded="false">
<span class="hamburger"><span></span><span></span><span></span></span>
</button>
</div>
</div>
</nav>
<!-- Mobile Navigation -->
<div class="nav-menu-mobile" aria-hidden="true">
<button class="mobile-menu-close" aria-label="Close menu">
<svg viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M18 6L6 18M6 6l12 12" stroke="currentColor"/></svg>
</button>
<ul>
<li><a href="/en/">Home</a></li>
<li><a href="/en/#trust">About Us</a></li>
<li><a href="/en/#features">Features</a></li>
<li><a href="mailto:info@aegis-sight.de">Contact</a></li>
</ul>
<div class="lang-switcher" role="group" aria-label="Language">
<a class="lang-link" href="/lagen/iran-konflikt/" lang="de" hreflang="de" rel="alternate">DE</a>
<span class="lang-sep" aria-hidden="true">|</span>
<span class="lang-active" lang="en" aria-current="true">EN</span>
</div>
</div>
<div class="mobile-menu-overlay"></div>
<!-- Hero Section -->
<section class="lagebild-hero">
<canvas id="hero-particles"></canvas>
<div class="hero-bg-pattern"></div>
<div class="container">
<h1 id="hero-title">SITUATION REPORT</h1>
<p class="hero-incident-title" id="incident-title"></p>
<!-- Stat Cards -->
<div class="hero-stats" id="hero-stats"></div>
</div>
</section>
<!-- Control Bar: Timeline + Tabs -->
<div class="control-bar">
<div class="container">
<div class="timeline-wrapper">
<div class="timeline-strip" id="timeline-strip"></div>
<div class="timeline-dropdown" id="timeline-dropdown"></div>
</div>
<div class="tab-nav" id="tab-nav">
<button class="tab-btn active" data-tab="ueberblick">Latest Developments</button>
<button class="tab-btn" data-tab="lagebild">Briefing</button>
<button class="tab-btn" data-tab="karte">Map</button>
<button class="tab-btn" data-tab="faktenchecks">Fact Checks <span class="tab-badge" id="tab-badge-faktenchecks"></span></button>
<button class="tab-btn" data-tab="quellen">Sources <span class="tab-badge" id="tab-badge-quellen"></span></button>
</div>
</div>
</div>
<!-- Main Content -->
<main class="lagebild-main">
<div class="container">
<!-- Tab: Latest Developments / Summary -->
<div class="tab-panel active" id="panel-ueberblick">
<p class="data-source-note">Data provided by AegisSight Monitor</p>
<section class="content-card">
<div class="card-header">
<h2 id="ueberblick-title">Latest Developments</h2>
<span class="card-timestamp" id="ueberblick-timestamp"></span>
</div>
<div class="card-body" id="ueberblick-content">
<div class="loading-skeleton">
<div class="skeleton-line"></div>
<div class="skeleton-line"></div>
<div class="skeleton-line short"></div>
</div>
</div>
</section>
</div>
<!-- Tab: Briefing -->
<div class="tab-panel" id="panel-lagebild">
<p class="data-source-note">Data provided by AegisSight Monitor</p>
<section class="content-card">
<div class="card-header">
<h2 id="lagebild-date-title">Briefing</h2>
<span class="card-timestamp" id="lagebild-timestamp"></span>
</div>
<div class="card-body" id="summary-content">
<div class="loading-skeleton">
<div class="skeleton-line"></div>
<div class="skeleton-line"></div>
<div class="skeleton-line short"></div>
</div>
</div>
<div class="card-footer" id="inline-sources"></div>
</section>
</div>
<!-- Tab: Sources -->
<div class="tab-panel" id="panel-quellen">
<section class="content-card">
<div class="card-header">
<h2>Sources</h2>
<p class="card-description">All sources monitored by AegisSight Monitor</p>
</div>
<div class="card-body" id="sources-grid-container">
<div class="loading-skeleton">
<div class="skeleton-line"></div>
<div class="skeleton-line short"></div>
</div>
</div>
</section>
</div>
<!-- Tab: Map -->
<div class="tab-panel" id="panel-karte">
<section class="content-card">
<div class="card-header">
<h2>Map</h2>
<p class="card-description">Geographic distribution of reports</p>
</div>
<div class="card-body">
<div id="map-container" style="height:500px;border-radius:4px;overflow:hidden;"></div>
</div>
</section>
</div>
<!-- Tab: Fact Checks -->
<div class="tab-panel" id="panel-faktenchecks">
<section class="content-card">
<div class="card-header">
<h2>Fact Checks</h2>
<p class="card-description">AI-powered verification of all key statements against independent sources. Statements are continuously checked against new sources – when new evidence appears, the status is updated automatically.</p>
</div>
<div class="card-body" id="factchecks-content"></div>
</section>
</div>
</div>
</main>
<!-- Footer -->
<footer class="footer">
<div class="container">
<div class="footer-content">
<div class="footer-section">
<h4>AegisSight UG (haftungsbeschränkt)</h4>
<p>Gladbacher Strasse 3-5</p>
<p>40764 Langenfeld, Germany</p>
</div>
<div class="footer-section">
<h4>Navigation</h4>
<ul>
<li><a href="/en/">Home</a></li>
<li><a href="/en/#features">Features</a></li>
<li><a href="/en/#demos">Live Reports</a></li>
<li><a href="/en/#trust">About Us</a></li>
<li><a href="/en/#contact">Contact</a></li>
</ul>
</div>
<div class="footer-section">
<h4>Legal</h4>
<ul>
<li><a href="/en/legal-notice.html">Legal notice</a></li>
<li><a href="/en/privacy.html">Privacy policy</a></li>
<li><a href="#" id="cookie-settings-link">Cookie settings</a></li>
</ul>
</div>
<div class="footer-section">
<h4>Contact</h4>
<p>info@aegis-sight.de</p>
</div>
</div>
<p class="copyright">&copy; 2026 AegisSight UG (haftungsbeschränkt). All rights reserved.</p>
</div>
</footer>
<!-- Scripts -->
<script src="/js/mobile-nav.js"></script>
<script src="https://unpkg.com/leaflet@1.9.4/dist/leaflet.js"></script>
<script src="https://unpkg.com/leaflet.markercluster@1.5.3/dist/leaflet.markercluster.js"></script>
<script src="/lagen/iran-konflikt/lagebild.js"></script>
<script src="/cookie-consent.js"></script>
</body>
</html>