@extends('layouts.app') @section('title', 'Usuários — '.config('app.name')) {{-- PADRÃO DE LISTAGEM. As demais telas de lista (perfis, arenas do back-office) devem seguir esta estrutura: page-head → filtros no cabeçalho do card → tabela → paginação Os filtros ficam dentro do card, e não soltos acima dele, para que a busca fique visualmente ligada à tabela que ela filtra. --}} @section('content')

Usuários

Quem tem acesso ao painel da arena.

@can('create', App\Models\User::class) Novo usuário @endcan
@include('partials.status')
@if (filled($search)) @endif
@forelse ($users as $user) {{-- Nome e e-mail na mesma célula: são o mesmo dado de identificação, e duas colunas separadas faziam a tabela estourar no celular. --}} {{-- A policy esconde a exclusão quando ela seria recusada — a si mesmo ou o último administrador da arena —, então o menu nunca oferece uma ação que já se sabe que vai falhar. --}} @empty @endforelse
Nome Perfil Situação Ações
{{ $user->name }} {{ $user->email }}
{{ $user->role?->name ?? '—' }} @if ($user->active) Ativo @else Inativo @endif @include('partials.row-actions', [ 'label' => $user->name, 'editUrl' => auth()->user()->can('update', $user) ? route('users.edit', $user) : null, 'deleteUrl' => auth()->user()->can('delete', $user) ? route('users.destroy', $user) : null, ])
Nenhum usuário encontrado.
{{ $users->links() }}
@endsection