{{ __('users.subtitle') }}
{{ $used }} / {{ $limit }}
{{ __('users.seats_used') }}
{{ __('users.seats_note') }}
| {{ __('users.col_person') }} | {{ __('users.role') }} | {{ __('users.col_status') }} | {{ __('users.col_actions') }} |
|---|---|---|---|
|
{{ $seat->name ?: $seat->email }} @if ($seat->name){{ $seat->email }} @endif |
@if ($seat->role === 'owner') {{ __('users.role_owner') }} @else @endif | {{-- Was der Inhaber WILL (`status`) und was in der Nextcloud WIRKLICH ist (`nc_state`) stehen in einer Zelle, und der wahre Zustand geht vor: solange der Auftrag laeuft oder gescheitert ist, waere „Eingeladen" eine Behauptung ueber etwas, das die Warteschlange noch gar nicht erledigt hat. Ohne diese Spalte drueckt der Inhaber wieder und wieder, weil nichts sichtbar geschieht. --}}
@if ($seat->status === 'revoked')
{{-- Entzogen geht allem anderen vor und ist
endgueltig. Ein „wird eingerichtet …"
oder ein „Nochmal versuchen" an dieser
Zeile las sich wie ein Weg zurueck —
den es nicht gibt und nicht geben
soll. --}}
{{ __('users.revoked_is_final') }} @elseif ($seat->nc_state === \App\Models\Seat::STATE_NONE){{ __('users.error_'.($seat->nc_error ?: 'unexpected')) }} @else @php $sb = ['active' => 'active', 'invited' => 'provisioning', 'revoked' => 'suspended'][$seat->status] ?? 'info'; @endphp |
@if ($seat->status === 'revoked')
{{-- Kein Knopf. Kein Wiedereinsetzen: der
richtige Weg zurueck ist ein NEUER
Sitz, und der geht durch die
Platzpruefung. Gesagt statt leer
gelassen, wie bei der Inhaber-Zeile —
eine leere Zelle liesse jemanden nach
einem Knopf suchen, der absichtlich
fehlt. --}}
{{ __('users.revoked_final') }}
@else
{{-- Einladen ist der zweite Vorgang und
hat deshalb seinen eigenen Knopf. Er
steht nur an einer Zeile, die noch
nichts in der Nextcloud hat; ist der
Auftrag unterwegs, gibt es nichts zu
druecken, und bei einem Fehlschlag
steht „Nochmal versuchen" schon in der
Zustandsspalte. Nie an der
Inhaber-Zeile: dieses Konto legt die
Bereitstellung an, nicht das Panel. --}}
@if ($seat->role !== 'owner' && $seat->nc_state === \App\Models\Seat::STATE_NONE)
@elseif ($seat->role !== 'owner' && $seat->nc_state === \App\Models\Seat::STATE_SYNCED && $seat->status === 'invited')
@endif
{{-- Rename is offered on every row, the owner
included: a row you can do nothing to reads
as a broken table, not as a protected one.
It opens a modal, never the row itself —
see R20. --}}
@if ($seat->role === 'owner')
{{-- Said, not hidden. The owner keeps their
own access; an empty cell would leave
somebody hunting for a button that is
deliberately absent. --}}
{{ __('users.owner_protected') }}
@else
{{-- Pause first, remove second. Somebody
leaving needs their access stopped
today; deleting the seat also throws
away who held it, which is the half
an audit asks about. --}}
@endif
@endif
|