<!DOCTYPE html>
<html lang="pt-BR">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta name="csrf-token" content="<?php echo e(csrf_token()); ?>">
    <title><?php echo $__env->yieldContent('title', 'LABRE-DX Contest'); ?> — Sistema de Apuração</title>
    <link rel="icon" type="image/x-icon" href="<?php echo e(asset('favicon.ico')); ?>">
    <link rel="shortcut icon" type="image/x-icon" href="<?php echo e(asset('favicon.ico')); ?>">
    <link rel="stylesheet" href="<?php echo e(asset('css/app.css')); ?>">
</head>
<body>

<?php
    // Mapa de dependências para o menu (etapa => etapa anterior necessária)
    $depMenu = [
        'processamento.juntar'           => 'A',
        'processamento.validar-qsos'     => '1',
        'processamento.validar-tempo'    => '2',
        'processamento.claimed-score'    => '3',
        'processamento.validar-contatos' => '4',
        'processamento.sem-logs'         => '5',
        'processamento.pontuar'          => '6',
        'processamento.final-score'      => '7',
        'processamento.resultado'        => '8',
        'processamento.records'          => '9',
        'processamento.encerrar.index'   => '10',
    ];
    // Carrega status das etapas do contest ATIVO (para menu Processamento)
    try {
        $etapasQuery = \Illuminate\Support\Facades\DB::table('contest_etapas');
        if ($contestAtivo) {
            $etapasQuery->where('contest_id', $contestAtivo->id);
        }
        $etapasStatus = $etapasQuery->pluck('status','etapa')->toArray();
    } catch (\Throwable) {
        $etapasStatus = [];
    }

    // Carrega status das etapas do contest VISUALIZADO (para menu Relatórios)
    // Se visualizado = encerrado/arquivado → todos os relatórios liberados
    // Se visualizado = ativo → respeita etapas reais do ativo
    // Se visualizado = futuro → tudo bloqueado
    try {
        if ($contestVisualizar && $contestAtivo && $contestVisualizar->id !== $contestAtivo->id) {
            // Contest diferente do ativo
            $flagVis = $contestVisualizar->flag ?? 0;
            if (in_array($flagVis, [\App\Models\ContestDate::FLAG_ENCERRADO, \App\Models\ContestDate::FLAG_ARQUIVADO])) {
                // Encerrado/Arquivado: todos os relatórios liberados
                $etapasStatusRel = array_fill_keys(['2','5','6','9','10'], 'concluida');
            } else {
                // Futuro: tudo bloqueado
                $etapasStatusRel = [];
            }
        } else {
            // Visualizando o contest ativo: usa as etapas reais
            $etapasStatusRel = $etapasStatus;
        }
    } catch (\Throwable) {
        $etapasStatusRel = $etapasStatus;
    }
    // Helper: verifica se um item de menu está habilitado
    $menuHabilitado = function(string $rota) use ($depMenu, $etapasStatus, $emProcessamento) {
        if ($emProcessamento) return false;
        if (!isset($depMenu[$rota])) return true;
        $dep = $depMenu[$rota];
        return isset($etapasStatus[$dep]) && $etapasStatus[$dep] === 'concluida';
    };

    // Flag labels para o seletor do navbar
    $flagLabels = \App\Models\ContestDate::FLAG_LABELS;
?>

<nav class="navbar <?php echo e($emProcessamento ? 'navbar-processando' : ''); ?>">
    <div class="navbar-brand">
        <a href="<?php echo e(route('dashboard')); ?>">
            🏆 LABRE-DX Contest
            <?php if($contestAtivo): ?>
                <span class="contest-ano"><?php echo e($contestAtivo->name); ?></span>
            <?php endif; ?>
        </a>
        <?php if($emProcessamento): ?>
            <span class="navbar-aviso-proc">⏳ Processando...</span>
        <?php endif; ?>
    </div>
    <div class="navbar-menu <?php echo e($emProcessamento ? 'menu-desabilitado' : ''); ?>">

        
        <a href="<?php echo e(route('dashboard')); ?>" class="<?php echo e($emProcessamento ? 'nav-disabled' : ''); ?>">Dashboard</a>

        
        <div class="dropdown">
            <span>Links ▾</span>
            <div class="dropdown-content">
                <a href="<?php echo e(route('public.log.index')); ?>" target="_blank">
                    📤 Formulário de Envio de LOG
                </a>
                <a href="<?php echo e(route('public.logs.lista')); ?>" target="_blank">
                    📋 LOGs Recebidos (público)
                </a>
            </div>
        </div>

        
        <div class="dropdown <?php echo e($emProcessamento ? 'nav-disabled' : ''); ?>">
            <span>
                LOGs ▾
                <?php if($contestVisualizar): ?>
                    <?php $fl2 = $contestVisualizar->flag ?? 0; $flInfo2 = $flagLabels[$fl2] ?? []; ?>
                    <span style="font-size:.7rem;padding:.1rem .35rem;border-radius:999px;
                                 background:<?php echo e($flInfo2['bg'] ?? '#eee'); ?>;color:<?php echo e($flInfo2['cor'] ?? '#333'); ?>;
                                 margin-left:.2rem;font-weight:600">
                        <?php echo e(\Carbon\Carbon::parse($contestVisualizar->start_date)->format('Y')); ?>

                    </span>
                <?php endif; ?>
            </span>
            <?php if(!$emProcessamento): ?>
            <div class="dropdown-content">
                
                <div style="padding:.4rem .75rem;font-size:.75rem;color:var(--muted);border-bottom:1px solid #eee">
                    Visualizando:
                    <?php $__currentLoopData = $todosContests; $__env->addLoop($__currentLoopData); foreach($__currentLoopData as $tc): $__env->incrementLoopIndices(); $loop = $__env->getLastLoop(); ?>
                        <?php
                            $tcFl3   = $tc->flag ?? 0;
                            $tcInfo3 = $flagLabels[$tcFl3] ?? ['cor'=>'#333','bg'=>'#eee'];
                            $tcAt3   = $contestVisualizar && $contestVisualizar->id === $tc->id;
                            $tcAno3  = \Carbon\Carbon::parse($tc->start_date)->format('Y');
                        ?>
                        <a href="<?php echo e(request()->fullUrlWithQuery(['cv' => $tc->id])); ?>"
                           style="display:inline-block;margin:.1rem .2rem;padding:.1rem .4rem;
                                  border-radius:4px;text-decoration:none;font-size:.72rem;
                                  font-weight:<?php echo e($tcAt3 ? '700' : '400'); ?>;
                                  border:1px solid <?php echo e($tcAt3 ? $tcInfo3['cor'] : '#ccc'); ?>;
                                  background:<?php echo e($tcAt3 ? $tcInfo3['bg'] : '#fff'); ?>;
                                  color:<?php echo e($tcAt3 ? $tcInfo3['cor'] : '#555'); ?>">
                            <?php echo e($tcAno3); ?><?php echo e($tcAt3 ? ' ✓' : ''); ?>

                        </a>
                    <?php endforeach; $__env->popLoop(); $loop = $__env->getLastLoop(); ?>
                </div>
                <a href="<?php echo e(route('logs.index')); ?>">📂 LOGs no Diretório</a>
                <a href="<?php echo e(route('logs.envia-logs')); ?>">📧 Relatório por Callsign</a>
            </div>
            <?php endif; ?>
        </div>

        <a href="<?php echo e(route('dxcc.index')); ?>" class="<?php echo e($emProcessamento ? 'nav-disabled' : ''); ?>">DXCC</a>

        
        <a href="<?php echo e(route('gestao.contests.index')); ?>"
           class="<?php echo e($emProcessamento ? 'nav-disabled' : ''); ?>">Gestão</a>

        
        <div class="dropdown <?php echo e($emProcessamento ? 'nav-disabled' : ''); ?>">
            <span>Tabelas ▾</span>
            <?php if(!$emProcessamento): ?>
            <div class="dropdown-content">
                <a href="<?php echo e(route('tabelas.index')); ?>">📋 Todas as Tabelas</a>
                <div class="dropdown-divider"></div>
                <a href="<?php echo e(route('tabelas.show', 'contest_date')); ?>">📅 Contest Date</a>
                <a href="<?php echo e(route('tabelas.show', 'exchange')); ?>">🔄 Exchanges Válidos</a>
                <a href="<?php echo e(route('tabelas.show', 'estaduais')); ?>">📡 Estações HQ</a>
                <a href="<?php echo e(route('tabelas.show', 'band_freq')); ?>">📻 Bandas / Frequências</a>
                <a href="<?php echo e(route('tabelas.show', 'categorias')); ?>">🏷️ Categorias</a>
                <a href="<?php echo e(route('tabelas.show', 'clubsbrasil')); ?>">🏛️ Clubes Brasil</a>
                <a href="<?php echo e(route('tabelas.records.index')); ?>">🏆 Records (Gestão)</a>
                <div class="dropdown-divider"></div>
                <a href="<?php echo e(route('tabelas.show', 'logs_cabecalhos')); ?>">📋 LOGs Cabeçalhos</a>
                <a href="<?php echo e(route('tabelas.show', 'resultados_final')); ?>">📊 Resultados Final 🔒</a>
                <a href="<?php echo e(route('tabelas.show', 'qsos_result')); ?>">📡 QSOs Result 🔒</a>
            </div>
            <?php endif; ?>
        </div>

        
        <div class="dropdown <?php echo e($emProcessamento ? 'nav-disabled' : ''); ?>">
            <span>Processamento ▾</span>
            <?php if(!$emProcessamento): ?>
            <div class="dropdown-content">
                <?php if($contestAtivo): ?>
                    <div style="padding:.4rem .75rem;font-size:.75rem;color:var(--muted);
                                border-bottom:1px solid #eee;margin-bottom:.25rem">
                        ⚡ Contest ativo: <?php echo e($contestAtivo->name); ?>

                        <?php echo e(\Carbon\Carbon::parse($contestAtivo->start_date)->format('Y')); ?>

                    </div>
                <?php else: ?>
                    <div style="padding:.4rem .75rem;font-size:.75rem;color:#c62828;
                                border-bottom:1px solid #eee;margin-bottom:.25rem">
                        ⚠️ Nenhum contest ativo
                    </div>
                <?php endif; ?>
                
                <a href="<?php echo e(route('processamento.importar')); ?>">A. Importar LOGs</a>
                <div class="dropdown-divider"></div>
                <?php
                    $itens = [
                        ['1', 'Juntar LOGs',       'processamento.juntar'],
                        ['2', 'Validar QSOs',       'processamento.validar-qsos'],
                        ['3', 'Validar Tempo',      'processamento.validar-tempo'],
                        ['4', 'Claimed Score',      'processamento.claimed-score'],
                        ['5', 'Val. Contatos',      'processamento.validar-contatos'],
                        ['6', 'Sem LOGs/DUPs',      'processamento.sem-logs'],
                        ['7', 'Pontos+Multi+FS',    'processamento.pontuar'],
                        ['8', 'Final Score',        'processamento.final-score'],
                        ['9', 'Resultado',          'processamento.resultado'],
                        ['10','Records',            'processamento.records'],
                        ['11','Encerrar Contest',   'processamento.encerrar.index'],
                    ];
                ?>
                <?php $__currentLoopData = $itens; $__env->addLoop($__currentLoopData); foreach($__currentLoopData as [$num, $nome, $rota]): $__env->incrementLoopIndices(); $loop = $__env->getLastLoop(); ?>
                    <?php if($menuHabilitado($rota)): ?>
                        <a href="<?php echo e(route($rota)); ?>"><?php echo e($num); ?>. <?php echo e($nome); ?></a>
                    <?php else: ?>
                        <span class="dropdown-item-disabled"
                              title="Execute a etapa anterior primeiro">
                            🔒 <?php echo e($num); ?>. <?php echo e($nome); ?>

                        </span>
                    <?php endif; ?>
                <?php endforeach; $__env->popLoop(); $loop = $__env->getLastLoop(); ?>
            </div>
            <?php endif; ?>
        </div>

        
        <?php
            $et2ok  = ($etapasStatusRel['2']  ?? '') === 'concluida';
            $et5ok  = ($etapasStatusRel['5']  ?? '') === 'concluida';
            $et6ok  = ($etapasStatusRel['6']  ?? '') === 'concluida';
            $et9ok  = ($etapasStatusRel['9']  ?? '') === 'concluida';
            $et10ok = ($etapasStatusRel['10'] ?? '') === 'concluida';
        ?>
        <div class="dropdown <?php echo e($emProcessamento ? 'nav-disabled' : ''); ?>">
            <span>
                Relatórios ▾
                <?php if($contestVisualizar): ?>
                    <?php $fl = $contestVisualizar->flag ?? 0; $flInfo = $flagLabels[$fl] ?? []; ?>
                    <span style="font-size:.7rem;padding:.1rem .35rem;border-radius:999px;
                                 background:<?php echo e($flInfo['bg'] ?? '#eee'); ?>;color:<?php echo e($flInfo['cor'] ?? '#333'); ?>;
                                 margin-left:.2rem;font-weight:600">
                        <?php echo e(\Carbon\Carbon::parse($contestVisualizar->start_date)->format('Y')); ?>

                    </span>
                <?php endif; ?>
            </span>
            <?php if(!$emProcessamento): ?>
            <div class="dropdown-content">
                
                <div style="padding:.4rem .75rem;font-size:.75rem;color:var(--muted);border-bottom:1px solid #eee">
                    Visualizando:
                    <?php $__currentLoopData = $todosContests; $__env->addLoop($__currentLoopData); foreach($__currentLoopData as $tc): $__env->incrementLoopIndices(); $loop = $__env->getLastLoop(); ?>
                        <?php
                            $tcFl   = $tc->flag ?? 0;
                            $tcInfo = $flagLabels[$tcFl] ?? ['cor'=>'#333','bg'=>'#eee'];
                            $tcAtivo= $contestVisualizar && $contestVisualizar->id === $tc->id;
                            $tcAno  = \Carbon\Carbon::parse($tc->start_date)->format('Y');
                        ?>
                        <a href="<?php echo e(request()->fullUrlWithQuery(['cv' => $tc->id])); ?>"
                           style="display:inline-block;margin:.1rem .2rem;padding:.1rem .4rem;
                                  border-radius:4px;text-decoration:none;font-size:.72rem;
                                  font-weight:<?php echo e($tcAtivo ? '700' : '400'); ?>;
                                  border:1px solid <?php echo e($tcAtivo ? $tcInfo['cor'] : '#ccc'); ?>;
                                  background:<?php echo e($tcAtivo ? $tcInfo['bg'] : '#fff'); ?>;
                                  color:<?php echo e($tcAtivo ? $tcInfo['cor'] : '#555'); ?>">
                            <?php echo e($tcAno); ?><?php echo e($tcAtivo ? ' ✓' : ''); ?>

                        </a>
                    <?php endforeach; $__env->popLoop(); $loop = $__env->getLastLoop(); ?>
                </div>
                <?php if($et2ok): ?>
                    <a href="<?php echo e(route('relatorios.invalidos')); ?>">1. QSOs Inválidos (Etapa 2)</a>
                <?php else: ?>
                    <span class="dropdown-item-disabled" title="Disponível após Etapa 2">🔒 1. QSOs Inválidos</span>
                <?php endif; ?>
                <?php if($et5ok): ?>
                    <a href="<?php echo e(route('relatorios.contatos-invalidados')); ?>">2. Contatos Inválidos (Etapa 5)</a>
                <?php else: ?>
                    <span class="dropdown-item-disabled" title="Disponível após Etapa 5">🔒 2. Contatos Inválidos</span>
                <?php endif; ?>
                <?php if($et6ok): ?>
                    <a href="<?php echo e(route('relatorios.duplicados')); ?>">3. Duplicados (Etapa 6)</a>
                <?php else: ?>
                    <span class="dropdown-item-disabled" title="Disponível após Etapa 6">🔒 3. Duplicados</span>
                <?php endif; ?>
                <div class="dropdown-divider"></div>
                <?php if($et6ok): ?>
                    <a href="<?php echo e(route('relatorios.recebidos-nao-validados')); ?>">4. Recebidos Não Validados</a>
                    <a href="<?php echo e(route('relatorios.exchange-invalidos')); ?>">5. Exchange Inválidos</a>
                    <a href="<?php echo e(route('relatorios.call-rcvd-sem-log')); ?>">6. Call Rcvd Sem LOG</a>
                <?php else: ?>
                    <span class="dropdown-item-disabled" title="Disponível após Etapa 6">🔒 4. Recebidos Não Validados</span>
                    <span class="dropdown-item-disabled" title="Disponível após Etapa 6">🔒 5. Exchange Inválidos</span>
                    <span class="dropdown-item-disabled" title="Disponível após Etapa 6">🔒 6. Call Rcvd Sem LOG</span>
                <?php endif; ?>
                <div class="dropdown-divider"></div>
                <?php if($et9ok): ?>
                    <a href="<?php echo e(route('relatorios.resultado')); ?>">7. Resultado por Categoria</a>
                    <a href="<?php echo e(route('relatorios.operadores-clubes')); ?>">8. Clubs e Operadores</a>
                    <a href="<?php echo e(route('relatorios.relatorio-final')); ?>">9. Relatório Final</a>
                <?php else: ?>
                    <span class="dropdown-item-disabled" title="Disponível após Etapa 9">🔒 7. Resultado por Categoria</span>
                    <span class="dropdown-item-disabled" title="Disponível após Etapa 9">🔒 8. Clubs e Operadores</span>
                    <span class="dropdown-item-disabled" title="Disponível após Etapa 9">🔒 9. Relatório Final</span>
                <?php endif; ?>
                <?php if($et10ok): ?>
                    <a href="<?php echo e(route('relatorios.records')); ?>">10. Records</a>
                <?php else: ?>
                    <span class="dropdown-item-disabled" title="Disponível após Etapa 10">🔒 10. Records</span>
                <?php endif; ?>
                <?php if($et9ok): ?>
                    <a href="<?php echo e(route('relatorios.emails')); ?>">11. Gerar Excel Vencedores</a>
                <?php else: ?>
                    <span class="dropdown-item-disabled" title="Disponível após Etapa 9">🔒 11. Gerar Excel Vencedores</span>
                <?php endif; ?>
            </div>
            <?php endif; ?>
        </div>

        <form method="POST" action="<?php echo e(route('logout')); ?>" style="display:inline">
            <?php echo csrf_field(); ?>
            <button type="submit" class="btn-logout"
                    <?php echo e($emProcessamento ? 'disabled style=opacity:.5;cursor:not-allowed' : ''); ?>>
                Sair (<?php echo e(auth()->user()->name); ?>)
            </button>
        </form>
    </div>
</nav>

<main class="container">
    <?php if($emProcessamento): ?>
        <div class="alert alert-warning" style="margin-bottom:1rem">
            ⏳ <strong>Processamento em andamento.</strong>
            O menu está desabilitado até a conclusão da etapa atual.
        </div>
    <?php endif; ?>
    <?php if(session('sucesso')): ?>
        <div class="alert alert-success">✅ <?php echo e(session('sucesso')); ?></div>
    <?php endif; ?>
    <?php if(session('erro')): ?>
        <div class="alert alert-danger">❌ <?php echo e(session('erro')); ?></div>
    <?php endif; ?>
    <?php if($errors->any()): ?>
        <div class="alert alert-danger">
            <?php $__currentLoopData = $errors->all(); $__env->addLoop($__currentLoopData); foreach($__currentLoopData as $erro): $__env->incrementLoopIndices(); $loop = $__env->getLastLoop(); ?>
                <div>• <?php echo e($erro); ?></div>
            <?php endforeach; $__env->popLoop(); $loop = $__env->getLastLoop(); ?>
        </div>
    <?php endif; ?>

    <?php echo $__env->yieldContent('content'); ?>
</main>

<footer class="footer">
    <?php if($contestAtivo): ?>
        <p>
            <?php echo e($contestAtivo->name); ?> &nbsp;|&nbsp;
            <?php echo e($contestAtivo->start_date->format('d/m/Y H:i')); ?> –
            <?php echo e($contestAtivo->end_date->format('d/m/Y H:i')); ?> UTC
            &nbsp;|&nbsp; PY6MV
        </p>
    <?php else: ?>
        <p>LABRE-DX Contest — Sistema de Apuração &nbsp;|&nbsp; PY6MV</p>
    <?php endif; ?>
</footer>

</body>
</html>
<?php /**PATH C:\laragon\www\projetos\labre-contest\resources\views/layouts/app.blade.php ENDPATH**/ ?>