{{-- Navegadores bloqueiam som sem uma primeira interação — como esse painel fica ligado sozinho numa TV, precisa de UM clique pra destravar o áudio. Depois disso, os beeps tocam sozinhos. --}} {{-- ============ cabeçalho fixo, comum a todas as telas base ============ --}}
@php($config = \App\Models\Configuracao::atual()) @if($config->logo_path) @endif

{{ $config->nome_camara }}

@if($sessao)
Sessão {{ $sessao->numero }}ª {{ ucfirst($sessao->tipo ?? 'Ordinária') }} — Data: {{ $sessao->data_sessao->format('d/m/Y') }}
@else
Nenhuma sessão ativa no momento
@endif
@if($sessao) AO VIVO @else AGUARDANDO @endif
{{-- ============ SEM SESSÃO ATIVA (tela de espera) ============ --}} @if($this->estadoBase === 'sem_sessao')
Aguardando início da sessão
Este painel atualiza sozinho assim que uma sessão for iniciada.
@endif {{-- ============ QUÓRUM (tela padrão) ============ --}} @if($this->estadoBase === 'quorum')
Quórum — {{ $this->presentes }}/{{ $this->totalVereadores }} presentes
@foreach($this->vereadoresComPresenca as $v) @php($presente = $v->quorum->presente ?? false) @php($justificada = $v->quorum->falta_justificada ?? false)
@if($v->foto) @else
{{ mb_substr($v->name, 0, 1) }}
@endif
{{ $v->name }} @if($v->eh_presidente) — Presidente @endif
@if($v->partido){{ $v->partido }}@endif @if($presente)
Presente
@elseif($justificada)
Ausência Justificada
@else
Ausente
@endif
@endforeach
@endif {{-- ============ LEITURA DA MATÉRIA ============ --}} @if($this->estadoBase === 'leitura' && $this->materiaEmLeitura)
@if($this->materiaEmLeitura->materia->autor?->foto) @else
{{ mb_substr($this->materiaEmLeitura->materia->autor->name ?? '?', 0, 1) }}
@endif
{{ $this->materiaEmLeitura->materia->autor->name ?? '—' }}
@if($this->materiaEmLeitura->materia->autor?->partido) {{ $this->materiaEmLeitura->materia->autor->partido }} @endif
Em leitura
{{ $this->materiaEmLeitura->materia->titulo }}
@if($this->materiaEmLeitura->materia->descricao)
{{ $this->materiaEmLeitura->materia->descricao }}
@endif
@endif {{-- ============ ABERTURA DE VOTO ============ --}} @if($this->estadoBase === 'votacao' && $this->materiaAtual)
{{ $this->materiaAtual->materia->titulo }}
@if($this->materiaAtual->materia->autor)
Proponente: {{ $this->materiaAtual->materia->autor->name }} @if($this->materiaAtual->materia->autor->partido) — {{ $this->materiaAtual->materia->autor->partido }} @endif
@endif
Favor
{{ $this->contagem['favor'] }}
Contra
{{ $this->contagem['contra'] }}
Abstenção
{{ $this->contagem['abstencao'] }}
Presentes
{{ $this->presentes }}/{{ $this->totalVereadores }}
@foreach($this->vereadoresComPresenca as $v) @php($voto = $this->votosPorVereador->get($v->id)) @php($classeVoto = match($voto) { 'favor' => 'voto-favor', 'contra' => 'voto-contra', 'abstencao' => 'voto-abstencao', default => '' })
@if($v->foto) @else
{{ mb_substr($v->name, 0, 1) }}
@endif
{{ $v->name }} @if($v->eh_presidente) — Presidente @endif
@if($v->partido){{ $v->partido }}@endif
@endforeach
@endif {{-- ============ INSCRIÇÕES ABERTAS ============ --}} @if($this->estadoBase === 'inscricoes') @php($momento = $this->momentosAbertos->first()) @php($config = \App\Models\Configuracao::atual()) @php($tempoMomento = match($momento->momento) { 'pequeno_expediente' => $config->tempo_pequeno_expediente, 'grande_expediente' => $config->tempo_grande_expediente, 'explicacoes_pessoais' => $config->tempo_explicacoes_pessoais, default => $config->tempo_fala_padrao, })
Atenção, senhores vereadores
INSCRIÇÕES PARA FALA ABERTAS
{{ $momento->labelMomento() }}
Tempo padrão: {{ $tempoMomento }} minutos

Os vereadores interessados devem realizar a inscrição no tablet. Esta mensagem permanecerá no painel até o encerramento das inscrições.

@endif {{-- ============ FALA ATIVA (mostra pra qualquer fala autorizada, normal ou aparte) ============ --}} @if($this->estadoBase === 'fala' && $this->falaEmAndamento) @php($falaAtual = $this->falaEmAndamento) @php($inicioEm = $falaAtual->tempo_inicio->toIso8601String()) @php($fimEm = $falaAtual->tempo_inicio->copy()->addMinutes($falaAtual->tempo_solicitado)->toIso8601String()) @php($duracaoSegundos = $falaAtual->tempo_solicitado * 60)
@if($falaAtual->fotoExibicao()) @else
{{ mb_substr($falaAtual->nomeExibicao(), 0, 1) }}
@endif
@if($falaAtual->isAparte()) Aparte autorizado @elseif($falaAtual->isAvulso()) Convidado @else Fala autorizada @endif
{{ $falaAtual->nomeExibicao() }}
@if($falaAtual->partidoExibicao())
{{ $falaAtual->partidoExibicao() }}
@endif
@endif {{-- ============ PEDIDOS DE VOZ (fila, sem ninguém falando agora) ============ --}} @if($this->estadoBase === 'fila')
Pedidos de voz {{ $this->pedidosPendentes->count() }}
@foreach($this->pedidosPendentes as $i => $pedido)
@if($pedido->fotoExibicao()) @else
{{ mb_substr($pedido->nomeExibicao(), 0, 1) }}
@endif
{{ $pedido->nomeExibicao() }} @if($pedido->isAvulso()) Convidado @endif
{{ $pedido->isAparte() ? 'Pedido de aparte registrado' : 'Pedido de fala registrado' }}
{{ $i + 1 }}
{{ $pedido->tempo_solicitado }} min
@endforeach
@endif
{{-- ============================================================ OVERLAYS — aparecem por cima da tela base e somem sozinhos ============================================================ --}} {{-- tela preta de transição (contando os votos) --}}
APURANDO OS VOTOS...
{{-- resultado oficial da votação --}}
RESULTADO OFICIAL DA VOTAÇÃO
FAVORÁVEIS
CONTRÁRIOS
ABSTENÇÕES
{{ strtoupper(\App\Models\Configuracao::atual()->nome_camara) }} · RESULTADO OFICIAL
{{-- pedido de vistas --}}
Pedido de vistas
solicitou vistas da matéria em leitura