{{define "settings_notifications"}}
{{template "layout_start" .}}

<div class="page-header">
    <h2>Beállítások — Értesítések</h2>
</div>

<!-- Section C: Notification Preferences -->
<div class="settings-card">
    <h3>Értesítések</h3>
    {{if .HubEnabled}}
        {{if .NotificationSuccess}}<div class="alert alert-info">{{.NotificationSuccess}}</div>{{end}}
        {{if .NotificationError}}<div class="alert alert-error">{{.NotificationError}}</div>{{end}}
        <form method="POST" action="/settings/notifications">
            {{.CSRFField}}
            <div class="form-group">
                <label for="notification_email">E-mail cím</label>
                <input type="email" id="notification_email" name="notification_email"
                       value="{{with .NotificationPrefs}}{{.Email}}{{end}}"
                       placeholder="pelda@email.hu" class="form-control">
            </div>
            <div class="form-group">
                <label>Hibák és figyelmeztetések:</label>
                <div class="checkbox-group">
                    <label class="toggle">
                        <input type="checkbox" name="event_backup_failed" {{with .NotificationPrefs}}{{range .EnabledEvents}}{{if eq . "backup_failed"}}checked{{end}}{{end}}{{end}}>
                        <span class="toggle-label">Biztonsági mentés sikertelen</span>
                    </label>
                    <label class="toggle">
                        <input type="checkbox" name="event_db_dump_failed" {{with .NotificationPrefs}}{{range .EnabledEvents}}{{if eq . "db_dump_failed"}}checked{{end}}{{end}}{{end}}>
                        <span class="toggle-label">Adatbázis mentés sikertelen</span>
                    </label>
                    <label class="toggle">
                        <input type="checkbox" name="event_backup_integrity_failed" {{with .NotificationPrefs}}{{range .EnabledEvents}}{{if eq . "backup_integrity_failed"}}checked{{end}}{{end}}{{end}}>
                        <span class="toggle-label">Mentés sérülés észlelve</span>
                    </label>
                    <label class="toggle">
                        <input type="checkbox" name="event_crossdrive_failed" {{with .NotificationPrefs}}{{range .EnabledEvents}}{{if eq . "crossdrive_failed"}}checked{{end}}{{end}}{{end}}>
                        <span class="toggle-label">Másodlagos mentés sikertelen</span>
                    </label>
                    <label class="toggle">
                        <input type="checkbox" name="event_disk_alerts" {{with .NotificationPrefs}}{{range .EnabledEvents}}{{if eq . "disk_warning"}}checked{{end}}{{end}}{{end}}>
                        <span class="toggle-label">Lemez figyelmeztetés (90%+)</span>
                    </label>
                    <label class="toggle">
                        <input type="checkbox" name="event_storage_disconnected" {{with .NotificationPrefs}}{{range .EnabledEvents}}{{if eq . "storage_disconnected"}}checked{{end}}{{end}}{{end}}>
                        <span class="toggle-label">Meghajtó leválasztva</span>
                    </label>
                    <label class="toggle">
                        <input type="checkbox" name="event_node_down" {{with .NotificationPrefs}}{{range .EnabledEvents}}{{if eq . "node_down"}}checked{{end}}{{end}}{{end}}>
                        <span class="toggle-label">Szerver nem elérhető</span>
                    </label>
                    <label class="toggle">
                        <input type="checkbox" name="event_health_critical" {{with .NotificationPrefs}}{{range .EnabledEvents}}{{if eq . "health_critical"}}checked{{end}}{{end}}{{end}}>
                        <span class="toggle-label">Rendszer állapot kritikus</span>
                    </label>
                    <label class="toggle">
                        <input type="checkbox" name="event_expected_missed" {{with .NotificationPrefs}}{{range .EnabledEvents}}{{if eq . "expected_backup_missed"}}checked{{end}}{{end}}{{end}}>
                        <span class="toggle-label">Elvárt mentés elmaradt</span>
                    </label>
                </div>
            </div>
            <div class="form-group">
                <label>Tájékoztató:</label>
                <div class="checkbox-group">
                    <label class="toggle">
                        <input type="checkbox" name="event_storage_reconnected" {{with .NotificationPrefs}}{{range .EnabledEvents}}{{if eq . "storage_reconnected"}}checked{{end}}{{end}}{{end}}>
                        <span class="toggle-label">Meghajtó újra csatlakoztatva</span>
                    </label>
                    <label class="toggle">
                        <input type="checkbox" name="event_health_recovered" {{with .NotificationPrefs}}{{range .EnabledEvents}}{{if eq . "health_recovered"}}checked{{end}}{{end}}{{end}}>
                        <span class="toggle-label">Rendszer állapot helyreállt</span>
                    </label>
                </div>
            </div>
            <div class="form-group">
                <label for="cooldown_hours">Értesítési szünet</label>
                <div class="form-inline">
                    <input type="number" id="cooldown_hours" name="cooldown_hours" min="1" max="168"
                           value="{{with .NotificationPrefs}}{{.CooldownHours}}{{end}}"
                           class="form-control form-control-narrow">
                    <span class="form-hint">óra (azonos probléma esetén ennyi ideig nem küld újat)</span>
                </div>
            </div>
            <div class="form-actions">
                <button type="submit" class="btn btn-primary">Mentés</button>
                <button type="submit" formaction="/settings/notifications/test" class="btn btn-outline">Teszt email küldése</button>
            </div>
        </form>
    {{else}}
        <div class="alert alert-info">
            Az értesítések a központi rendszeren keresztül működnek, ami jelenleg nincs bekapcsolva.
        </div>
    {{end}}
</div>

<!-- Section: App email (SMTP relay) -->
{{if .AppEmailAvailable}}
<div class="settings-card">
    <h3>Alkalmazás-email</h3>
    <p class="settings-card-desc">
        Az alkalmazások a Felhom-on keresztül küldhetnek emailt (pl. jelszó-visszaállítás, meghívók),
        külön email-szolgáltató beállítása nélkül. A feladó címe minden alkalmazásnál a saját
        <em>&lt;alkalmazás&gt;@felhom.eu</em> címe lesz.
    </p>
    {{if .AppEmailSuccess}}<div class="alert alert-info">{{.AppEmailSuccess}}</div>{{end}}
    {{if .AppEmailError}}<div class="alert alert-error">{{.AppEmailError}}</div>{{end}}
    <form method="POST" action="/settings/app-email">
        {{.CSRFField}}
        <div class="form-group">
            <label style="display:flex;align-items:center;gap:.5rem">
                <input type="checkbox" name="app_email_enabled" value="on" {{if .AppEmailEnabled}}checked{{end}}>
                Alkalmazás-email engedélyezése
            </label>
        </div>
        <div class="form-group">
            <label for="app_email_from_name">Feladó neve (opcionális)</label>
            <input type="text" id="app_email_from_name" name="app_email_from_name"
                   value="{{.AppEmailFromName}}" placeholder="pl. a háztartás neve" class="form-control">
            <span class="form-hint">Ez jelenik meg a kimenő emailek feladójaként az alkalmazás neve mellett.</span>
        </div>
        <div class="form-actions">
            <button type="submit" class="btn btn-primary">Mentés</button>
        </div>
    </form>
    <p class="settings-card-desc" style="margin-top:.75rem">
        Bekapcsolás után az egyes alkalmazásoknál is engedélyezni kell az email-küldést (az alkalmazás oldalán).
    </p>
</div>
{{end}}
{{template "layout_end" .}}
{{end}}
