{{-- Formulário compartilhado de professor e cliente. NÃO TEM CAMPO DE PERFIL, e isso é a metade visível de uma trava. O perfil é aplicado pelo MemberController a partir da rota, e o StoreMemberRequest nem aceita `role_id` — então nem o formulário oferece, nem o servidor aceitaria. Acrescentar um seletor aqui reabriria o caminho para transformar um cliente em administrador por uma tela que não tem as regras da tela de equipe. Também não tem senha: professores e clientes ainda não acessam o sistema, e o controller grava um valor aleatório para satisfazer a coluna. @param \App\Models\User|null $member Nulo ao criar. @param array $labels --}} @php($editing = isset($member))
@error('name')
{{ $message }}
@enderror
@error('email')
{{ $message }}
@enderror
Usado para identificar a pessoa e, no futuro, dar acesso ao sistema.
{{-- Máscara `cpf`: só pessoa física neste campo, sem alternar para CNPJ. É conveniência visual — o servidor normaliza e valida de novo. --}} @error('cpf')
{{ $message }}
@enderror
@error('phone')
{{ $message }}
@enderror
@if ($managesModalities ?? false) {{-- Modalidades atendidas pelo professor. Só aparece na tela de professor (o MemberController liga `managesModalities`); a de cliente não tem o campo, nem o servidor sincroniza vínculos para clientes. `data-multiselect`: o resources/js/multiselect.js transforma este @php($selected = collect(old('modality_ids', $selectedModalityIds ?? []))->map(fn ($id) => (string) $id)) @foreach ($modalities as $modality) @endforeach @error('modality_ids')
{{ $message }}
@enderror @error('modality_ids.*')
{{ $message }}
@enderror @if ($modalities->isEmpty())
Nenhuma modalidade cadastrada ainda. Cadastrar uma.
@else
Os esportes que este professor dá aula.
@endif @endif
{{-- Campo oculto antes do checkbox: um checkbox desmarcado não é enviado pelo navegador, e sem este `0` a regra `sometimes` puliria o campo — desativar alguém não teria efeito nenhum. --}} active : true))>