@if ($instance !== null)
$instance->status === 'active',
'border-warning-border bg-warning-bg text-warning' => $instance->status !== 'active',
])>
{{ __('dashboard.instance_status.'.$instance->status) }}
@if ($domain)
{{ __('dashboard.cloud.open') }}
@endif
@endif
{{-- Live provisioning progress (only while a run is in flight) --}}
@if ($credentials)
{{-- The initial admin password, shown here instead of mailed. Gone the
moment the customer confirms they noted it — acknowledgeCredentials()
deletes it outright, not just this card. --}}
{{ __('dashboard.credentials.title') }}
{{ __('dashboard.credentials.body') }}
{{ __('dashboard.credentials.address') }}
{{ $credentials['url'] }}
{{ __('dashboard.credentials.user') }}
{{ $credentials['user'] }}
{{ __('dashboard.credentials.password') }}
{{ $credentials['password'] }}
{{ __('dashboard.credentials.acknowledge') }}
{{ __('dashboard.credentials.copied') }}
@endif
@if ($ending)
{{-- Die Frist, die den Kunden betrifft: wie lange SEIN Zugang noch
steht — nicht, wann irgendetwas geloescht wird. Dieselbe
Warnfarbe und Bauform wie der Zugangsdaten-Kasten darueber, an
derselben Stelle im Fluss: eine Sprache fuer Dringlichkeit auf
dieser Seite, nicht zwei. --}}
{{-- Aufgabe 4: dieselbe Frage wie beim Kuendigen, hier mit
der Moeglichkeit, sie sich anders zu ueberlegen — bis
zum Laufzeitende (setExportWish() prueft das selbst
nach).
Bewusst DIESELBEN zwei Auswahlfelder wie im
Kuendigungsdialog (livewire/confirm-cancel-package),
nicht der Schalter, der hier stand. `export_wish`
fuehrt drei Zustaende, ein Schalter kennt zwei — und
`(bool) null` ist `false`, also stand unter dem
Streifen „Kein Export gewuenscht" als Antwort eines
Menschen, den niemand gefragt hatte. Ein
unbeantworteter Zustand zeigt hier schlicht keine
Auswahl an und fragt darueber im Klartext nach. --}}
@endif
@if ($instance === null && $endedAt !== null)
{{-- Die abgelaufene Laufzeit — der dritte Fall, den es hier bisher
nicht gab. Ein Kunde, dessen Instanz auf `ended` steht, holt
Dashboard::render() nicht mehr; er fiel damit in den Zweig
darunter und las „Ihre Cloud wird eingerichtet." samt „Paket
buchen". Fuer jemanden, dem eben die Adresse eingezogen wurde
(EndInstanceService), ist das die falscheste Zeile der Seite.
Kein Kunde ohne Paket, sondern einer, dessen Paket vorbei ist —
mit dem Datum, an dem es endete. --}}
@elseif ($instance === null)
{{-- Said plainly rather than papered over with an empty record: a page
of dashes reads as broken, and "we are still setting it up" and
"you have not ordered yet" are different things. --}}
{{ __('dashboard.no_instance_label') }}
{{ __('dashboard.no_instance_body') }}
{{-- Booking first, because "you have not ordered yet" now has an
answer on this site: pick a package, pay, and the cloud builds
itself. Before self-service the only honest next step was to
write to somebody. --}}
@else
{{-- ── The four cards, in the template's order and form ──────────
Speicher · Benutzer · Datenvolumen · Verfügbarkeit. Figure, unit
beside it, a line of context, the visual — ring, bar, sparkline.
Every number below is measured; nothing is drawn at a level nobody
read. --}}
@if ($disk)
@elseif ($instance->quota_gb)
@endif
@if ($seats['total'])
@endif
@if ($traffic)
@php $state = $traffic->state(); @endphp
@if (count($trend) > 2)
{{-- Orange because this is the metric with an action
attached: when it runs out, something can be done
about it. Observed figures stay grey. --}}
@endif
@if ($state !== 'ok')
{{ __('dashboard.traffic.buy') }}
@endif
@endif
{{-- Availability, counted from our own monitoring answers. Absent
rather than 100 % when nothing has been checked: reporting an
unmonitored instance as perfect is the single most dishonest
number this page could carry. --}}
@if ($availability !== null)
@if (count($availabilityTrend) > 2)
@endif
@elseif ($location)
@endif
{{-- ── The proof register ────────────────────────────────────── --}}
@if ($nextInvoice['addons'] > 0)
{{-- Broken out only when there is something to
break out: a "Module 0,00 €" line on every
other customer's sheet is noise. --}}
{{ __('dashboard.invoice.all') }}
@endif
@if ($openTasks > 0)
{{-- Only while there is something outstanding. A permanently
green checklist is furniture; one with work left on it
is a reason to open this page. --}}