{{-- ── Schritt 1: System ── --}}
@if($step === 1)
System-Einstellungen
Grundkonfiguration für deine Mailwolt-Instanz
@error('instance_name')
{{ $message }}
@enderror
{{-- ── Schritt 2: Domains ── --}}
@elseif($step === 2)
Domains
Domains müssen bereits auf diesen Server zeigen
DNS-Einträge zuerst setzen, dann hier eintragen. Kein http:// am Anfang.
@error('ui_domain')
{{ $message }}
@enderror
@error('mail_domain')
{{ $message }}
@enderror
@error('webmail_domain')
{{ $message }}
@enderror
{{-- ── Schritt 3: Admin ── --}}
@elseif($step === 3)
Admin-Account
Dieser Account hat vollen Zugriff auf das Control Panel
{{-- ── Schritt 4: Zusammenfassung ── --}}
@elseif($step === 4)
Alles bereit
Überprüfe die Einstellungen und schließe die Einrichtung ab
@foreach([
['label' => 'Instanz', 'value' => $instance_name],
['label' => 'Zeitzone', 'value' => $timezone],
['label' => 'UI Domain', 'value' => $ui_domain],
['label' => 'Mail Domain', 'value' => $mail_domain],
['label' => 'Webmail Domain', 'value' => $webmail_domain],
['label' => 'Admin E-Mail', 'value' => $admin_email],
] as $row)
{{ $row['label'] }}
{{ $row['value'] ?: '—' }}
@endforeach
@if($skipSsl)
Nginx wird ohne SSL konfiguriert. Im Dashboard erscheint ein Hinweis bis SSL eingerichtet ist.
@endif
{{-- ── Schritt 5: Domain-Setup ── --}}
@elseif($step === 5)
@php
$anyFailed = collect($domainStatus)->contains(fn($s) => in_array($s, ['error','nodns','noipv6']));
$allDone = $setupDone;
@endphp
Domains werden eingerichtet
SSL-Zertifikate werden beantragt und Nginx wird konfiguriert
@php
$labels = ['ui' => $ui_domain, 'mail' => $mail_domain, 'webmail' => $webmail_domain];
$statusConfig = [
'pending' => [
'icon' => '…', 'color' => 'var(--mw-t5)', 'bg' => 'var(--mw-bg3)',
'label' => 'Warte …', 'hint' => null,
],
'running' => [
'icon' => '↻', 'color' => '#7dd3fc', 'bg' => 'rgba(14,165,233,.08)',
'label' => 'Wird registriert …', 'spin' => true, 'hint' => null,
],
'done' => [
'icon' => '✓', 'color' => 'rgba(34,197,94,.9)', 'bg' => 'rgba(34,197,94,.07)',
'label' => 'SSL-Zertifikat ausgestellt', 'hint' => null,
],
'nodns' => [
'icon' => '!', 'color' => '#fbbf24', 'bg' => 'rgba(251,191,36,.07)',
'label' => 'Kein DNS-Eintrag gefunden',
'hint' => 'Der A-Record dieser Domain zeigt nicht auf diesen Server oder ist noch nicht propagiert. DNS-Einstellungen prüfen und danach Retry klicken.',
'hints_extra' => ['DNS A-Record auf Server-IP setzen', 'DNS-Propagierung abwarten (bis zu 24h)', 'Mit dig +short A domain.com prüfen'],
],
'noipv6' => [
'icon' => '!', 'color' => '#fbbf24', 'bg' => 'rgba(251,191,36,.07)',
'label' => 'IPv6 nicht konfiguriert',
'hint' => 'Die Domain hat einen AAAA-Record, aber dieser Server hat kein aktives IPv6. Let\'s Encrypt prüft alle DNS-Records.',
'hints_extra' => ['IPv6 am Server aktivieren', 'ODER: AAAA-Record aus dem DNS entfernen'],
],
'error' => [
'icon' => '✗', 'color' => '#f87171', 'bg' => 'rgba(239,68,68,.07)',
'label' => 'SSL-Zertifikat fehlgeschlagen',
'hint' => 'Let\'s Encrypt konnte die Domain nicht verifizieren. Self-signed Zertifikat wird verwendet.',
'hints_extra' => ['Port 80 muss von außen erreichbar sein', 'Firewall-Regeln prüfen (ufw allow 80)', 'AAAA-Record ohne IPv6 am Server entfernen', 'http://domain/.well-known/acme-challenge/ im Browser testen'],
],
'skip' => [
'icon' => '–', 'color' => 'var(--mw-t4)', 'bg' => 'var(--mw-bg3)',
'label' => 'SSL übersprungen', 'hint' => null,
],
];
@endphp
@foreach(['ui' => 'UI Domain', 'mail' => 'Mail Domain', 'webmail' => 'Webmail Domain'] as $key => $typeLabel)
@php
$st = $domainStatus[$key] ?? 'pending';
$cfg = $statusConfig[$st] ?? $statusConfig['pending'];
@endphp
{{ $cfg['icon'] }}
{{ $typeLabel }}
{{ $labels[$key] }}
{{ $cfg['label'] }}
@if(!empty($cfg['hint']))
{{ $cfg['hint'] }}
@if(!empty($cfg['hints_extra']))
@foreach($cfg['hints_extra'] as $hint)
- {{ $hint }}
@endforeach
@endif
@endif
@endforeach
@if($allDone && $anyFailed)
Einige Domains konnten nicht vollständig eingerichtet werden. Du kannst es erneut versuchen oder mit Self-signed Zertifikat fortfahren.
@endif
@endif
{{-- ═══ Navigation ═══ --}}
@if($step < 5)