diff --git a/VERSION b/VERSION
index 4fc01ac..3c59b40 100644
--- a/VERSION
+++ b/VERSION
@@ -1 +1 @@
-1.3.19
+1.3.20
diff --git a/app/Support/OfficialDomains.php b/app/Support/OfficialDomains.php
index 3849731..46054aa 100644
--- a/app/Support/OfficialDomains.php
+++ b/app/Support/OfficialDomains.php
@@ -31,6 +31,21 @@ class OfficialDomains
$entries[] = ['host' => (string) $host, 'what' => 'site'];
}
+ // The host this page is being served from, always.
+ //
+ // Without it an installation that has not configured SITE_HOST — a
+ // development box, or one reached by a name nobody wrote into the
+ // config — listed ONLY the instance zone, and described it as the
+ // customers' domain. So the page a visitor opened to check our
+ // addresses omitted the address they had just typed, and named the
+ // wrong thing as ours. Reported exactly that way.
+ //
+ // Deduplicated below by hostname, so a configured site host does not
+ // appear twice.
+ if (($current = request()?->getHost()) && ! in_array($current, array_column($entries, 'host'), true)) {
+ $entries[] = ['host' => $current, 'what' => 'site'];
+ }
+
if ($app = (string) config('admin_access.app_host')) {
$entries[] = ['host' => $app, 'what' => 'portal'];
}
diff --git a/resources/views/landing.blade.php b/resources/views/landing.blade.php
index 015973c..629c26a 100644
--- a/resources/views/landing.blade.php
+++ b/resources/views/landing.blade.php
@@ -135,7 +135,7 @@
['99,95', '99.95', 2, '% Verfügbarkeit'],
['365', '365', 0, 'Sicherungen pro Jahr'],
['12', '12', 0, 'Wiederherstellungstests'],
- ['20', '20', 0, 'Minuten bis zum Betrieb'],
+ ['0', '0', 0, 'Termine bis zum Start'],
['0', '0', 0, 'Datenverluste'],
] as [$shown, $target, $decimals, $label])
@@ -262,8 +262,19 @@
{{-- ════ The dark hinge — how it arrives ════════════════════════════════ --}}
+ {{-- No clock anywhere in this section any more.
+ "In 20 Minuten betriebsbereit", a log with minute marks down the
+ side, "betriebsbereit in unter 20 Minuten" — three promises about
+ a duration nobody controls. A provisioning run waits on a
+ hypervisor, on a certificate authority and on DNS propagating;
+ when it is done it is done, and a customer who once waited
+ forty minutes has been told something untrue by their supplier.
+
+ What replaces it is the thing that IS promised and IS kept: the
+ order of the steps, and a message when it is ready. Nobody has to
+ sit and watch. --}}
-
In 20 Minuten betriebsbereit
+
Ohne Termin, ohne Warten
Nur der erste Schritt ist Ihrer.
@@ -272,7 +283,7 @@
@foreach ([
- ['Sie', 'Paket wählen', 'Zwei Minuten online. Die Instanz wird unmittelbar danach automatisch erstellt.'],
+ ['Sie', 'Paket wählen', 'Ein Formular online. Unmittelbar danach beginnt die Instanz von selbst zu entstehen — Sie müssen nichts weiter tun und auf nichts warten.'],
['Wir', 'Einrichtung', 'Benutzer und Rechte, Ordnerstruktur, Ihr Logo, Ihre Domain. Auf Wunsch übernehmen wir Bestandsdaten aus Dropbox, OneDrive oder vom alten Server — mit schriftlichem Übernahmeprotokoll.'],
['Gemeinsam', 'Einschulung', '45 Minuten für Ihr Team per Videokonferenz, Kurzanleitung als PDF mit Ihren eigenen Screenshots.'],
] as $i => [$who, $what, $body])
@@ -296,23 +307,31 @@
BereitstellungsprotokollBeispiel
+ {{-- The steps in order, ticked as they pass. The column that
+ held minute marks now holds a number: WHAT happens and in
+ which order is a promise that can be kept. --}}
@foreach ([
- ['0:40', 'Instanz erstellt und gestartet'],
- ['1:10', 'Verschlüsselung und Firewall aktiv'],
- ['2:30', 'Domain verbunden, Zertifikat ausgestellt'],
- ['4:15', 'Erste Sicherung angelegt und geprüft'],
- ['5:00', 'Logo und Farben hinterlegt'],
- ] as [$at, $what])
-
-
+ 'Instanz erstellt und gestartet',
+ 'Verschlüsselung und Firewall aktiv',
+ 'Domain verbunden, Zertifikat ausgestellt',
+ 'Erste Sicherung angelegt und geprüft',
+ 'Logo und Farben hinterlegt',
+ ] as $i => $what)
+
+
+
+ {{ $what }}
- OK
+ {{ $i + 1 }}/5
@endforeach
-
-
- Instanz betriebsbereit in unter 20 Minuten.
-
+
+
+
+ Fertig. Sie bekommen eine E-Mail mit Adresse und Zugangsdaten,
+ sobald Ihre Cloud bereit ist — Sie müssen nicht danebensitzen.
+
+
@@ -669,7 +688,7 @@
@foreach ([
['Was passiert mit unseren Daten, wenn wir kündigen?', 'Sie erhalten vor Vertragsende einen vollständigen Export in offenen Standardformaten. Ihre Cloud basiert auf Open-Source-Software — Sie sind nie eingesperrt. Nach der Übergabe löschen wir Instanz und Sicherungen und bestätigen das schriftlich.'],
['Ersetzt das Microsoft 365?', 'Es ersetzt den Dateiteil. Viele Kunden behalten Microsoft für E-Mail und nutzen die Cloud als zentrale, sichere Ablage statt OneDrive oder Dropbox — zum fixen Firmenpreis statt pro Benutzer.'],
- ['Wie lange dauert die Einrichtung?', 'Die Instanz läuft wenige Minuten nach der Bestellung. Die vollständige Einrichtung — Benutzer und Rechte, Ordnerstruktur nach Branchenvorlage, Ihr Logo, Ihre Domain und die Einschulung — ist in drei bis sieben Werktagen abgeschlossen. Die Übernahme Ihrer Bestandsdaten aus Dropbox, OneDrive oder vom alten Server bieten wir gesondert an, inklusive schriftlichem Übernahmeprotokoll.'],
+ ['Wie lange dauert die Einrichtung?', 'Die Instanz entsteht unmittelbar nach der Bestellung von selbst; Sie bekommen eine E-Mail, sobald sie bereit ist. Eine Dauer nennen wir bewusst nicht — sie hängt an Dingen, die wir nicht allein in der Hand haben. Die vollständige Einrichtung — Benutzer und Rechte, Ordnerstruktur nach Branchenvorlage, Ihr Logo, Ihre Domain und die Einschulung — ist in drei bis sieben Werktagen abgeschlossen. Die Übernahme Ihrer Bestandsdaten aus Dropbox, OneDrive oder vom alten Server bieten wir gesondert an, inklusive schriftlichem Übernahmeprotokoll.'],
['Was, wenn jemand versehentlich Dateien löscht?', 'Papierkorb und Versionierung fangen den Alltag ab. Darüber hinaus gibt es tägliche Sicherungen mit 30 Tagen Aufbewahrung: Ein Anruf genügt, wir stellen den gewünschten Stand wieder her.'],
['Brauchen wir eigene IT-Kenntnisse?', 'Nein. Bedienen kann es jeder, der mit Ordnern und Dateien umgeht — dafür gibt es die Einschulung. Alles Technische übernehmen wir dauerhaft.'],
['Mit wem spreche ich bei Fragen?', 'Direkt mit uns, per E-Mail oder Telefon, auf Deutsch, mit Antwort am selben Werktag. Kein Callcenter, keine Warteschleife.'],