<?php
include 'verifica_login.php';
include 'conexao.php';
$conn = conectar_banco();

// Filtro por pesquisa
$filtro_pesquisa = (int)($_GET['filtro_pesquisa'] ?? 0);
$pagina_atual = max(1, (int)($_GET['pagina'] ?? 1));
$registros_por_pagina = (int)($_GET['registros_por_pagina'] ?? 10);
$offset = ($pagina_atual - 1) * $registros_por_pagina;

// Buscar pesquisas liberadas para o cliente
$query_pesquisas = "
    SELECT p.id, p.nome, COUNT(DISTINCT pe.id) as total_leads
    FROM pesquisas p
    LEFT JOIN pesquisa_empresa pe ON p.id = pe.id_pesquisa_fk AND pe.status = 'respondida'
    WHERE p.liberado_cliente = 'S' AND p.status = 'ativa'
    GROUP BY p.id
    ORDER BY p.data_pesquisa DESC
";

$stmt_pesquisas = $conn->prepare($query_pesquisas);
$stmt_pesquisas->execute();
$pesquisas_list = $stmt_pesquisas->get_result();

// Buscar leads (respostas respondidas) da pesquisa selecionada
$leads = null;
$pesquisa_selecionada = null;
$total_leads = 0;
$total_paginas = 1;

if ($filtro_pesquisa > 0) {
    // Verificar se a pesquisa existe e está liberada
    $stmt_check = $conn->prepare("
        SELECT id, nome, descricao 
        FROM pesquisas 
        WHERE id = ? AND liberado_cliente = 'S' AND status = 'ativa'
    ");
    $stmt_check->bind_param('i', $filtro_pesquisa);
    $stmt_check->execute();
    $pesquisa_selecionada = $stmt_check->get_result()->fetch_assoc();
    
    if ($pesquisa_selecionada) {
        // Contar total de leads
        $stmt_count = $conn->prepare("
            SELECT COUNT(DISTINCT pe.id) as total
            FROM pesquisa_empresa pe
            LEFT JOIN empresas e ON pe.id_empresa_fk = e.ID_EMPRESA
            WHERE pe.id_pesquisa_fk = ? AND pe.status = 'respondida'
        ");
        $stmt_count->bind_param('i', $filtro_pesquisa);
        $stmt_count->execute();
        $result_count = $stmt_count->get_result()->fetch_assoc();
        $total_leads = $result_count['total'] ?? 0;
        $total_paginas = ceil($total_leads / $registros_por_pagina);
        
        // Buscar leads com paginação
        $stmt_leads = $conn->prepare("
            SELECT 
                pe.id,
                pe.id_pesquisa_fk,
                pe.id_empresa_fk,
                pe.nota_total,
                pe.classificacao,
                pe.data_resposta,
                e.NOME_FANTASIA,
                e.EMPRESA,
                e.CNPJ,
                e.DDD,
                e.TEL,
                e.CIDADE,
                e.UF
            FROM pesquisa_empresa pe
            LEFT JOIN empresas e ON pe.id_empresa_fk = e.ID_EMPRESA
            WHERE pe.id_pesquisa_fk = ? AND pe.status = 'respondida'
            ORDER BY e.NOME_FANTASIA
            LIMIT ? OFFSET ?
        ");
        
        $stmt_leads->bind_param('iii', $filtro_pesquisa, $registros_por_pagina, $offset);
        $stmt_leads->execute();
        $leads = $stmt_leads->get_result();
    }
}
?>
<!DOCTYPE html>
<html lang="pt-br">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Portal do Cliente - Leads</title>
    <style>
        body { 
            font-family: Arial, sans-serif; 
            background: linear-gradient(135deg, #667eea 0%, #764ba2 100%); 
            margin: 0; 
            padding: 20px; 
            min-height: 100vh;
        }
        .container { 
            max-width: 1200px; 
            margin: 0 auto; 
            background: white; 
            padding: 30px; 
            border-radius: 8px; 
            box-shadow: 0 10px 40px rgba(0,0,0,0.2);
        }
        h1 { 
            color: #667eea; 
            border-bottom: 3px solid #667eea; 
            padding-bottom: 10px; 
            margin-bottom: 30px;
        }
        
        .filtro-section {
            background: #f8f9fa;
            padding: 20px;
            border-radius: 8px;
            margin-bottom: 30px;
            border: 1px solid #e0e0e0;
        }
        
        .filtro-section label {
            display: block;
            font-weight: bold;
            margin-bottom: 8px;
            color: #333;
        }
        
        .filtro-section select,
        .filtro-section input {
            width: 100%;
            padding: 10px;
            border: 1px solid #ccc;
            border-radius: 4px;
            font-size: 0.95em;
            max-width: 400px;
        }
        
        .filtro-buttons {
            display: flex;
            gap: 10px;
            margin-top: 15px;
            flex-wrap: wrap;
        }
        
        .btn {
            padding: 10px 20px;
            border: none;
            border-radius: 4px;
            cursor: pointer;
            font-size: 0.95em;
            text-decoration: none;
            display: inline-block;
            transition: all 0.3s;
        }
        
        .btn-primary {
            background: #667eea;
            color: white;
        }
        
        .btn-primary:hover {
            background: #5568d3;
            transform: translateY(-2px);
            box-shadow: 0 4px 12px rgba(102, 126, 234, 0.4);
        }
        
        .btn-secondary {
            background: #6c757d;
            color: white;
        }
        
        .btn-secondary:hover {
            background: #5a6268;
        }
        
        .info-pesquisa {
            background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
            color: white;
            padding: 20px;
            border-radius: 8px;
            margin-bottom: 30px;
        }
        
        .info-pesquisa h2 {
            margin: 0 0 10px 0;
            font-size: 1.5em;
        }
        
        .info-pesquisa p {
            margin: 5px 0;
        }
        
        .leads-grid {
            display: grid;
            grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
            gap: 20px;
            margin-bottom: 30px;
        }
        
        .lead-card {
            background: white;
            border: 1px solid #e0e0e0;
            border-radius: 8px;
            padding: 20px;
            box-shadow: 0 2px 8px rgba(0,0,0,0.1);
            transition: all 0.3s;
        }
        
        .lead-card:hover {
            box-shadow: 0 4px 16px rgba(0,0,0,0.15);
            transform: translateY(-4px);
        }
        
        .lead-empresa-nome {
            font-size: 1.1em;
            font-weight: bold;
            color: #333;
            margin-bottom: 8px;
        }
        
        .lead-razao-social {
            font-size: 0.85em;
            color: #666;
            margin-bottom: 15px;
            font-style: italic;
        }
        
        .lead-info {
            font-size: 0.9em;
            color: #666;
            line-height: 1.6;
            margin-bottom: 10px;
        }
        
        .lead-info strong {
            color: #333;
        }
        
        .lead-nota {
            background: #f0f4ff;
            padding: 10px;
            border-left: 4px solid #667eea;
            margin: 15px 0;
            border-radius: 4px;
        }
        
        .lead-nota-valor {
            font-size: 1.3em;
            font-weight: bold;
            color: #667eea;
        }
        
        .lead-classificacao {
            display: inline-block;
            padding: 4px 8px;
            border-radius: 4px;
            font-size: 0.8em;
            font-weight: bold;
        }
        
        .classificacao-excelente { background: #d4edda; color: #155724; }
        .classificacao-bom { background: #cfe2ff; color: #084298; }
        .classificacao-regular { background: #fff3cd; color: #664d03; }
        .classificacao-insatisfatorio { background: #f8d7da; color: #842029; }
        
        .empty-state {
            text-align: center;
            padding: 60px 20px;
            color: #999;
        }
        
        .empty-state-icon {
            font-size: 64px;
            margin-bottom: 20px;
        }
        
        .pagination {
            display: flex;
            justify-content: center;
            gap: 5px;
            margin: 20px 0;
            flex-wrap: wrap;
        }
        
        .pagination a, .pagination span {
            padding: 8px 12px;
            border: 1px solid #ddd;
            border-radius: 4px;
            text-decoration: none;
            color: #667eea;
        }
        
        .pagination a:hover {
            background: #f0f0f0;
        }
        
        .pagination .active {
            background: #667eea;
            color: white;
            border-color: #667eea;
        }
        
        .pagination-info {
            text-align: center;
            margin: 15px 0;
            color: #666;
            font-size: 0.9em;
        }
        
        .btn-exportar {
            background: #28a745;
            color: white;
        }
        
        .btn-exportar:hover {
            background: #218838;
        }
    </style>
</head>
<body>

<div class="container">
    <h1>🎯 Portal do Cliente - Leads Disponíveis</h1>
    
    <!-- Filtro de Pesquisa -->
    <div class="filtro-section">
        <form method="GET" style="display: flex; gap: 15px; align-items: flex-end; flex-wrap: wrap;">
            <div style="flex: 1; min-width: 250px;">
                <label for="filtro_pesquisa">📋 Selecione a Pesquisa:</label>
                <select id="filtro_pesquisa" name="filtro_pesquisa" required>
                    <option value="">-- Escolha uma pesquisa --</option>
                    <?php 
                    $pesquisas_list->data_seek(0);
                    while($pesq = $pesquisas_list->fetch_assoc()): 
                    ?>
                        <option value="<?= $pesq['id'] ?>" <?= $filtro_pesquisa == $pesq['id'] ? 'selected' : '' ?>>
                            <?= htmlspecialchars($pesq['nome']) ?> 
                            (<?= $pesq['total_leads'] ?> lead<?= $pesq['total_leads'] != 1 ? 's' : '' ?>)
                        </option>
                    <?php endwhile; ?>
                </select>
            </div>
            
            <div class="filtro-buttons">
                <button type="submit" class="btn btn-primary">🔍 Buscar Leads</button>
                <?php if ($filtro_pesquisa > 0): ?>
                    <a href="portal_cliente.php" class="btn btn-secondary">✕ Limpar</a>
                <?php endif; ?>
            </div>
        </form>
    </div>
    
    <!-- Exibição de Leads -->
    <?php if ($pesquisa_selecionada): ?>
    
        <div class="info-pesquisa">
            <h2><?= htmlspecialchars($pesquisa_selecionada['nome']) ?></h2>
            <?php if ($pesquisa_selecionada['descricao']): ?>
                <p><?= htmlspecialchars($pesquisa_selecionada['descricao']) ?></p>
            <?php endif; ?>
            <p><strong><?= $total_leads ?> lead<?= $total_leads != 1 ? 's' : '' ?> disponível<?= $total_leads != 1 ? 's' : '' ?></strong></p>
        </div>
        
        <?php if ($leads && $leads->num_rows > 0): ?>
        
            <div class="pagination-info">
                Exibindo <strong><?= ($offset + 1) ?></strong> a <strong><?= min($offset + $registros_por_pagina, $total_leads) ?></strong> de <strong><?= $total_leads ?></strong> lead(s)
            </div>
            
            <div class="leads-grid">
                <?php while($lead = $leads->fetch_assoc()): ?>
                <div class="lead-card">
                    <div class="lead-empresa-nome">🏢 <?= htmlspecialchars($lead['NOME_FANTASIA'] ?? 'Empresa Indefinida') ?></div>
                    <div class="lead-razao-social"><?= htmlspecialchars($lead['EMPRESA'] ?? '-') ?></div>
                    
                    <div class="lead-info">
                        <?php if ($lead['CNPJ']): ?>
                            <strong>CNPJ:</strong> <?= htmlspecialchars($lead['CNPJ']) ?><br>
                        <?php endif; ?>
                        <?php if ($lead['TEL'] || $lead['DDD']): ?>
                            <strong>Telefone:</strong> 
                            <?php if ($lead['DDD']): ?>
                                (<?= htmlspecialchars($lead['DDD']) ?>) 
                            <?php endif; ?>
                            <?= htmlspecialchars($lead['TEL'] ?? '-') ?><br>
                        <?php endif; ?>
                        <?php if ($lead['CIDADE']): ?>
                            <strong>Localização:</strong> <?= htmlspecialchars($lead['CIDADE']) ?>/<?= htmlspecialchars($lead['UF'] ?? '-') ?><br>
                        <?php endif; ?>
                        <?php if ($lead['data_resposta']): ?>
                            <strong>Data:</strong> <?= date('d/m/Y H:i', strtotime($lead['data_resposta'])) ?><br>
                        <?php endif; ?>
                    </div>
                    
                    <?php if ($lead['nota_total'] > 0): ?>
                    <div class="lead-nota">
                        <strong>Pontuação da Pesquisa:</strong><br>
                        <div class="lead-nota-valor"><?= number_format($lead['nota_total'], 2, ',', '.') ?></div>
                        <div style="margin-top: 8px;">
                            <span class="lead-classificacao classificacao-<?= strtolower(str_replace(' ', '-', $lead['classificacao'] ?? '')) ?>">
                                <?= htmlspecialchars($lead['classificacao'] ?? '-') ?>
                            </span>
                        </div>
                    </div>
                    <?php endif; ?>
                </div>
                <?php endwhile; ?>
            </div>
            
            <?php if ($total_paginas > 1): ?>
            <div class="pagination">
                <?php 
                if ($pagina_atual > 1) {
                    echo '<a href="portal_cliente.php?filtro_pesquisa=' . $filtro_pesquisa . '&pagina=1&registros_por_pagina=' . $registros_por_pagina . '">« Primeira</a>';
                    echo '<a href="portal_cliente.php?filtro_pesquisa=' . $filtro_pesquisa . '&pagina=' . ($pagina_atual - 1) . '&registros_por_pagina=' . $registros_por_pagina . '">← Anterior</a>';
                }
                
                $inicio = max(1, $pagina_atual - 2);
                $fim = min($total_paginas, $pagina_atual + 2);
                
                if ($inicio > 1) {
                    echo '<a href="portal_cliente.php?filtro_pesquisa=' . $filtro_pesquisa . '&pagina=1&registros_por_pagina=' . $registros_por_pagina . '">1</a>';
                    if ($inicio > 2) echo '<span>...</span>';
                }
                
                for ($p = $inicio; $p <= $fim; $p++) {
                    if ($p === $pagina_atual) {
                        echo '<span class="active">' . $p . '</span>';
                    } else {
                        echo '<a href="portal_cliente.php?filtro_pesquisa=' . $filtro_pesquisa . '&pagina=' . $p . '&registros_por_pagina=' . $registros_por_pagina . '">' . $p . '</a>';
                    }
                }
                
                if ($fim < $total_paginas) {
                    if ($fim < $total_paginas - 1) echo '<span>...</span>';
                    echo '<a href="portal_cliente.php?filtro_pesquisa=' . $filtro_pesquisa . '&pagina=' . $total_paginas . '&registros_por_pagina=' . $registros_por_pagina . '">' . $total_paginas . '</a>';
                }
                
                if ($pagina_atual < $total_paginas) {
                    echo '<a href="portal_cliente.php?filtro_pesquisa=' . $filtro_pesquisa . '&pagina=' . ($pagina_atual + 1) . '&registros_por_pagina=' . $registros_por_pagina . '">Próxima →</a>';
                    echo '<a href="portal_cliente.php?filtro_pesquisa=' . $filtro_pesquisa . '&pagina=' . $total_paginas . '&registros_por_pagina=' . $registros_por_pagina . '">Última »</a>';
                }
                ?>
            </div>
            <?php endif; ?>
        
        <?php else: ?>
            <div class="empty-state">
                <div class="empty-state-icon">📭</div>
                <h3>Nenhum lead disponível</h3>
                <p>Não há leads respondidos para esta pesquisa no momento.</p>
            </div>
        <?php endif; ?>
    
    <?php else: ?>
        <div class="empty-state">
            <div class="empty-state-icon">📊</div>
            <h3>Selecione uma pesquisa</h3>
            <p>Escolha uma pesquisa acima para visualizar os leads disponíveis.</p>
        </div>
    <?php endif; ?>
    
    <br>
    <a href="principal.php" class="btn btn-secondary">← Voltar ao Menu</a>
</div>

</body>
</html>
