<?php
/**
 * Versicherungsübersicht & PDF-Export (Frontend)
 * Version 3.14
 */

require_once 'db.php';
require_once 'helpers.php';
requireLogin();

header('Content-Type: text/html; charset=UTF-8');

$versId = isset($_GET['v']) ? (int)$_GET['v'] : 0;
$printMode = isset($_GET['print']);

// Alle Versicherungen oder eine bestimmte laden
if ($versId) {
    $rows = $db->select("SELECT * FROM versicherungen WHERE id=?", [$versId]);
    $versicherung = $rows[0] ?? null;
    if (!$versicherung) {
        header('Location: insurance.php');
        exit;
    }
    $versicherungen = [$versicherung];
} else {
    $versicherungen = $db->select("SELECT * FROM versicherungen ORDER BY name ASC");
}

// Items je Versicherung laden
foreach ($versicherungen as &$v) {
    $v['items'] = $db->select("
        SELECT w.*, k.name as kategorie, o.name as ort
        FROM wertsachen w
        LEFT JOIN kategorien k ON w.kategorie_id = k.id
        LEFT JOIN orte o ON w.raum_id = o.id
        WHERE w.versicherung_id = ?
        ORDER BY w.name ASC
    ", [$v['id']]);
    $v['gesamtwert'] = array_sum(array_map(fn($i) => $i['aktueller_wert'] ?: $i['preis'], $v['items']));
}
unset($v);

$pageTitle = t('insurance_overview');
$exportDatum = date('d.m.Y');

if (!$printMode) {
    include 'header_next_page.php';
}
?>

<?php if ($printMode): ?>
<!DOCTYPE html>
<html lang="de">
<head>
    <meta charset="UTF-8">
    <title><?php echo t('insurance_overview'); ?> – <?php echo $exportDatum; ?></title>
    <style>
        * { box-sizing: border-box; margin: 0; padding: 0; }
        body { font-family: Arial, sans-serif; font-size: 12px; color: #222; background: white; padding: 20px; }
        h1 { font-size: 20px; margin-bottom: 4px; }
        .meta { color: #666; font-size: 11px; margin-bottom: 24px; }
        .vertrag { margin-bottom: 32px; page-break-inside: avoid; }
        .vertrag-header { background: var(--vs-surface-2); padding: 10px 14px; border-left: 4px solid var(--vs-accent); margin-bottom: 8px; }
        .vertrag-header h2 { font-size: 15px; margin-bottom: 2px; }
        .vertrag-header .meta2 { font-size: 11px; color: #555; }
        table { width: 100%; border-collapse: collapse; margin-bottom: 8px; }
        th { background: var(--vs-accent); color: var(--vs-accent-text); padding: 7px 10px; text-align: left; font-size: 11px; }
        td { padding: 6px 10px; border-bottom: 1px solid #ddd; font-size: 11px; }
        tr:nth-child(even) td { background: var(--vs-surface-2); }
        .summe td { font-weight: bold; background: var(--vs-accent-light); }
        .gesamt { margin-top: 24px; padding: 12px 16px; background: var(--vs-accent-light); border-radius: 6px; font-size: 13px; }
        @media print {
            body { padding: 10px; }
            .no-print { display: none; }
        }
    </style>
</head>
<body>
    <div class="no-print" style="margin-bottom:20px;">
        <button onclick="window.print()" style="padding:8px 20px; background:var(--vs-accent); color:var(--vs-accent-text); border:none; border-radius:6px; cursor:pointer; font-size:14px;"><i class="ti ti-printer" aria-hidden="true"></i> Drucken / Als PDF speichern</button>
        <a href="javascript:history.back()" style="margin-left:12px; color:#666; text-decoration:none; font-size:13px;">← Zurück</a>
    </div>

    <h1>🛡️ <?php echo t('insurance_overview'); ?></h1>
    <p class="meta">Erstellt am <?php echo $exportDatum; ?> · Wertsachen Inventarverwaltung</p>

<?php else: ?>

<main class="backend-main">
    <div style="display:flex; justify-content:space-between; align-items:center; margin-bottom:24px; flex-wrap:wrap; gap:12px;">
        <h2 style="margin:0;">🛡️ <?php echo t('insurance_overview'); ?></h2>
        <div style="display:flex; gap:10px;">
            <a href="insurance.php?print=1<?php echo $versId ? '&v='.$versId : ''; ?>" target="_blank"
               style="padding:9px 18px; background:var(--vs-danger); color:white; border-radius:6px; text-decoration:none; font-weight:600;"><i class="ti ti-file-type-pdf" aria-hidden="true"></i> <?php echo t('btn_export_pdf'); ?></a>
            <?php if (hasPermission('admin')): ?>
            <a href="backend/insurance.php" style="padding:9px 18px; background:var(--vs-accent); color:white; border-radius:6px; text-decoration:none; font-weight:600;"><i class="ti ti-settings" aria-hidden="true"></i> <?php echo t('btn_manage'); ?></a>
            <?php endif; ?>
        </div>
    </div>

    <?php if (empty($versicherungen)): ?>
        <div class="activity-timeline" style="text-align:center; padding:60px; color:#999;">
            <div style="font-size:56px; margin-bottom:16px;">🛡️</div>
            <p>Noch keine Versicherungen vorhanden.</p>
        </div>
    <?php endif; ?>

<?php endif; ?>

<?php
$gesamtAllerWert = 0;
foreach ($versicherungen as $v):
    $gesamtAllerWert += $v['gesamtwert'];
?>

<?php if ($printMode): ?>
    <div class="vertrag">
        <div class="vertrag-header">
            <h2>🛡️ <?php echo htmlspecialchars($v['name']); ?></h2>
            <div class="meta2">
                <?php if ($v['anbieter']): ?>Anbieter: <?php echo htmlspecialchars($v['anbieter']); ?><?php endif; ?>
                <?php if ($v['vertragsnummer']): ?> · Nr: <?php echo htmlspecialchars($v['vertragsnummer']); ?><?php endif; ?>
                <?php if ($v['praemie']): ?> · Prämie: <?php echo number_format($v['praemie'], 2, ',', '.'); ?> €/Jahr<?php endif; ?>
                <?php if ($v['vertragsbeginn']): ?> · Beginn: <?php echo date('d.m.Y', strtotime($v['vertragsbeginn'])); ?><?php endif; ?>
                <?php if ($v['laufzeit_bis']): ?> · Läuft bis: <?php echo date('d.m.Y', strtotime($v['laufzeit_bis'])); ?><?php endif; ?>
            </div>
        </div>

        <?php
        // Vertragsdaten
        $vertragsDetails = [];
        if ($v['versicherungssumme']) $vertragsDetails[] = ['Versicherungssumme', number_format($v['versicherungssumme'], 2, ',', '.') . ' €'];
        if ($v['selbstbeteiligung'])  $vertragsDetails[] = ['Selbstbeteiligung',  number_format($v['selbstbeteiligung'],  2, ',', '.') . ' €'];
        if ($v['zahlungsweise'])      $vertragsDetails[] = ['Zahlungsweise',      ucfirst($v['zahlungsweise'])];
        if ($v['kuendigungsfrist'])   $vertragsDetails[] = ['Kündigungsfrist',    htmlspecialchars($v['kuendigungsfrist'])];
        if (!empty($vertragsDetails)):
        ?>
        <table style="margin-bottom:8px;">
            <thead><tr><th colspan="2" style="background:var(--vs-accent-light);color:var(--vs-text);font-size:10px;letter-spacing:.5px;text-transform:uppercase;">Vertragsdaten</th></tr></thead>
            <tbody>
                <?php foreach ($vertragsDetails as $d): ?>
                <tr><td style="width:40%;color:#666;"><?php echo $d[0]; ?></td><td><?php echo $d[1]; ?></td></tr>
                <?php endforeach; ?>
            </tbody>
        </table>
        <?php endif; ?>

        <?php
        // Objekt-Daten
        $objektDetails = [];
        $adr = trim(($v['adresse'] ?? '') . ($v['plz'] || $v['wohnort'] ? ', ' . trim(($v['plz'] ?? '') . ' ' . ($v['wohnort'] ?? '')) : ''));
        if ($adr)                 $objektDetails[] = ['Adresse',      htmlspecialchars(trim($adr, ', '))];
        if ($v['gebaeudeart'])    $objektDetails[] = ['Gebäudeart',   htmlspecialchars($v['gebaeudeart'])];
        if ($v['wohnflaeche_qm']) $objektDetails[] = ['Wohnfläche',   number_format($v['wohnflaeche_qm'], 1, ',', '.') . ' m²'];
        if ($v['anzahl_zimmer'])  $objektDetails[] = ['Zimmer',       $v['anzahl_zimmer']];
        if ($v['etage'] !== null && $v['etage'] !== '') $objektDetails[] = ['Etage', $v['etage'] == 0 ? 'Erdgeschoss' : $v['etage'] . '. Etage'];
        $objektDetails[]          =                  ['Keller',       !empty($v['keller']) ? 'Ja' : 'Nein'];
        if (!empty($objektDetails)):
        ?>
        <table style="margin-bottom:8px;">
            <thead><tr><th colspan="2" style="background:var(--vs-success-light);color:var(--vs-text);font-size:10px;letter-spacing:.5px;text-transform:uppercase;">Objekt</th></tr></thead>
            <tbody>
                <?php foreach ($objektDetails as $d): ?>
                <tr><td style="width:40%;color:#666;"><?php echo $d[0]; ?></td><td><?php echo $d[1]; ?></td></tr>
                <?php endforeach; ?>
            </tbody>
        </table>
        <?php endif; ?>

        <?php
        // Zusatzbausteine
        $bausteine = [];
        if (!empty($v['fahrraddiebstahl']))  $bausteine[] = '🚲 Fahrraddiebstahl';
        if (!empty($v['glasbruch']))          $bausteine[] = '🪟 Glasbruch';
        if (!empty($v['elementarschaeden'])) $bausteine[] = '🌊 Elementarschäden';
        if (!empty($v['ueberspannung']))      $bausteine[] = '⚡ Überspannung';
        if (!empty($bausteine)):
        ?>
        <table style="margin-bottom:8px;">
            <thead><tr><th style="background:var(--vs-warning-light);color:var(--vs-text);font-size:10px;letter-spacing:.5px;text-transform:uppercase;">Zusatzbausteine</th></tr></thead>
            <tbody><tr><td><?php echo implode(' &nbsp;·&nbsp; ', $bausteine); ?></td></tr></tbody>
        </table>
        <?php endif; ?>

        <?php if (empty($v['items'])): ?>
            <p style="color:#999; padding:10px 0;">Keine Gegenstände zugeordnet.</p>
        <?php else: ?>
            <table>
                <thead>
                    <tr>
                        <th>#</th>
                        <th><?php echo t('col_bezeichnung'); ?></th>
                        <th>Kategorie</th>
                        <th><?php echo t('col_aufbewahrungsort'); ?></th>
                        <th style="text-align:right;">Wert (€)</th>
                    </tr>
                </thead>
                <tbody>
                    <?php $nr = 1; foreach ($v['items'] as $item): ?>
                    <tr>
                        <td><?php echo $nr++; ?></td>
                        <td><?php echo htmlspecialchars($item['name']); ?></td>
                        <td><?php echo htmlspecialchars($item['kategorie'] ?? '—'); ?></td>
                        <td><?php echo htmlspecialchars($item['ort'] ?? '—'); ?></td>
                        <td style="text-align:right;"><?php echo number_format($item['aktueller_wert'] ?: $item['preis'], 2, ',', '.'); ?></td>
                    </tr>
                    <?php endforeach; ?>
                    <tr class="summe">
                        <td colspan="4" style="text-align:right;"><?php echo t('col_gesamtwert'); ?></td>
                        <td style="text-align:right;"><?php echo number_format($v['gesamtwert'], 2, ',', '.'); ?> €</td>
                    </tr>
                </tbody>
            </table>
            <?php if ($v['notiz']): ?>
                <p style="font-size:11px; color:#666; margin-top:6px;">Notiz: <?php echo htmlspecialchars($v['notiz']); ?></p>
            <?php endif; ?>
        <?php endif; ?>
    </div>

<?php else: ?>

    <div class="activity-timeline" style="margin-bottom:24px;">
        <div style="display:flex; justify-content:space-between; align-items:flex-start; flex-wrap:wrap; gap:8px; margin-bottom:16px;">
            <div>
                <h3 style="margin:0;"><?php echo htmlspecialchars($v['name']); ?></h3>
                <p style="margin:4px 0 0; color:#666; font-size:13px;">
                    <?php if ($v['anbieter']): ?><?php echo htmlspecialchars($v['anbieter']); ?> · <?php endif; ?>
                    <?php if ($v['vertragsnummer']): ?>Nr. <?php echo htmlspecialchars($v['vertragsnummer']); ?> · <?php endif; ?>
                    <?php if ($v['praemie']): ?>Prämie: <?php echo formatPrice($v['praemie']); ?>/Jahr · <?php endif; ?>
                    <?php if ($v['versicherungssumme']): ?>Vers.-Summe: <?php echo formatPrice($v['versicherungssumme']); ?> · <?php endif; ?>
                    <?php if ($v['laufzeit_bis']): ?>
                        <?php $abgelaufen = strtotime($v['laufzeit_bis']) < time(); ?>
                        <span style="color:<?php echo $abgelaufen ? 'var(--vs-danger)' : 'inherit'; ?>">
                            Läuft bis: <?php echo date('d.m.Y', strtotime($v['laufzeit_bis'])); ?>
                            <?php if ($abgelaufen): ?>⚠️ abgelaufen<?php endif; ?>
                        </span>
                    <?php endif; ?>
                </p>
                <?php
                $bausteine = [];
                if (!empty($v['fahrraddiebstahl']))  $bausteine[] = '🚲 Fahrraddiebstahl';
                if (!empty($v['glasbruch']))          $bausteine[] = '🪟 Glasbruch';
                if (!empty($v['elementarschaeden'])) $bausteine[] = '🌊 Elementarschäden';
                if (!empty($v['ueberspannung']))      $bausteine[] = '⚡ Überspannung';
                if (!empty($bausteine)):
                ?>
                <p style="margin:4px 0 0; font-size:12px; color:#888;"><?php echo implode(' · ', $bausteine); ?></p>
                <?php endif; ?>
                <?php if ($v['adresse'] || $v['wohnflaeche_qm']): ?>
                <p style="margin:4px 0 0; font-size:12px; color:#888;">
                    <?php if ($v['adresse']): ?>📍 <?php echo htmlspecialchars($v['adresse']); ?><?php if ($v['plz'] || $v['wohnort']): ?>, <?php echo trim($v['plz'] . ' ' . $v['wohnort']); ?><?php endif; ?><?php endif; ?>
                    <?php if ($v['wohnflaeche_qm']): ?> · <?php echo number_format($v['wohnflaeche_qm'], 1, ',', '.'); ?> m²<?php endif; ?>
                    <?php if ($v['anzahl_zimmer']): ?> · <?php echo $v['anzahl_zimmer']; ?> Zimmer<?php endif; ?>
                </p>
                <?php endif; ?>
            </div>
            <div style="text-align:right;">
                <div style="font-size:22px; font-weight:bold; color:var(--vs-success);"><?php echo formatPrice($v['gesamtwert']); ?></div>
                <div style="font-size:12px; color:#999;"><?php echo count($v['items']); ?> Gegenstände</div>
            </div>
        </div>

        <?php if (empty($v['items'])): ?>
            <p style="color:#999;">Keine Gegenstände zugeordnet.</p>
        <?php else: ?>
            <table class="backend-table">
                <thead>
                    <tr>
                        <th><?php echo t('col_bezeichnung'); ?></th>
                        <th>Kategorie</th>
                        <th><?php echo t('col_aufbewahrungsort'); ?></th>
                        <th style="width:160px;">Wert</th>
                    </tr>
                </thead>
                <tbody>
                    <?php foreach ($v['items'] as $item): ?>
                    <tr>
                        <td><strong><?php echo htmlspecialchars($item['name']); ?></strong></td>
                        <td><span class="badge badge-secondary"><?php echo htmlspecialchars($item['kategorie'] ?? '—'); ?></span></td>
                        <td><?php echo htmlspecialchars($item['ort'] ?? '—'); ?></td>
                        <td><strong style="color:var(--vs-success);"><?php echo formatPrice($item['aktueller_wert'] ?: $item['preis']); ?></strong></td>
                    </tr>
                    <?php endforeach; ?>
                    <tr style="background:var(--bg-color); font-weight:bold;">
                        <td colspan="3"><?php echo t('col_gesamtwert'); ?></td>
                        <td style="color:var(--vs-success); font-size:16px;"><?php echo formatPrice($v['gesamtwert']); ?></td>
                    </tr>
                </tbody>
            </table>
        <?php endif; ?>
    </div>

<?php endif; ?>
<?php endforeach; ?>

<?php if ($printMode): ?>
    <?php if (count($versicherungen) > 1): ?>
    <div class="gesamt">
        <strong>Gesamtwert aller versicherten Gegenstände: <?php echo number_format($gesamtAllerWert, 2, ',', '.'); ?> €</strong>
    </div>
    <?php endif; ?>
    <p style="margin-top:30px; font-size:10px; color:#aaa; border-top:1px solid #eee; padding-top:8px;">
        Dokument erstellt am <?php echo $exportDatum; ?> · Wertsachen Inventarverwaltung
    </p>
</body>
</html>

<?php else: ?>
</main>

<style>
.backend-table { width:100%; border-collapse:collapse; margin-top:12px; }
.backend-table thead tr { background:var(--bg-color); border-bottom:2px solid var(--border-color); }
.backend-table th, .backend-table td { padding:12px; text-align:left; }
.backend-table tbody tr { border-bottom:1px solid var(--border-color); transition:background 0.2s; }
.backend-table tbody tr:hover { background:var(--bg-color); }
.badge { padding:4px 10px; border-radius:12px; font-size:11px; font-weight:600; display:inline-block; }
.badge-secondary { background:var(--vs-surface-2); color:var(--vs-text-muted); }
</style>

<?php include 'footer_next_page.php'; ?>
<?php endif; ?>
