<?php
// admin/page-edit.php (VERSÃO CORRIGIDA)
$pageTitle = 'Editar Página';
$pageHeader = 'Editar Página';
$useRichEditor = true;
$currentPage = 'edit-page';

// Define BASE_PATH se não estiver definido
if (!defined('BASE_PATH')) {
    define('BASE_PATH', dirname(dirname(__FILE__)));
}

// Função de log de emergência caso logInfo não esteja disponível
function emergencyLog($message) {
    file_put_contents(BASE_PATH . '/emergency.log', date('Y-m-d H:i:s') . " - $message\n", FILE_APPEND);
}

/**
 * Remove elementos duplicados do conteúdo (WhatsApp e AdSense)
 * 
 * @param string $content O conteúdo HTML
 * @return string Conteúdo limpo sem duplicatas
 */
function removeExistingElements($content) {
    // Remove botões WhatsApp existentes
    $content = preg_replace('/<div class="whatsapp-cta-container">.*?<\/div>/s', '', $content);
    
    // Remove anúncios AdSense existentes
    $content = preg_replace('/<div class="adsense-container">.*?<\/div>/s', '', $content);
    
    // Remove anúncios JoinAds existentes
    $content = preg_replace('/<div class="joinads-container">.*?<\/div>/s', '', $content);
    
    return trim($content);
}

/**
 * Detecta a posição do elemento WhatsApp no conteúdo HTML
 * 
 * @param string $content O conteúdo HTML
 * @return string A posição detectada ou 'after-second' como padrão
 */
function detectWhatsAppPosition($content) {
    // Se não há elemento WhatsApp, retorna posição padrão
    if (strpos($content, 'whatsapp-cta-container') === false) {
        return 'after-second';
    }
    
    // Dividir o conteúdo em parágrafos
    $pattern = '/<p>(.*?)<\/p>/s';
    preg_match_all($pattern, $content, $matches);
    $paragraphs = $matches[0];
    
    if (empty($paragraphs)) {
        return 'end';
    }
    
    // Encontrar em qual posição está o elemento WhatsApp
    $whatsappPattern = '/<div class="whatsapp-cta-container">.*?<\/div>/s';
    
    // Dividir o conteúdo pela localização do WhatsApp
    $parts = preg_split($whatsappPattern, $content, 2);
    
    if (count($parts) < 2) {
        return 'after-second';
    }
    
    // Contar quantos parágrafos existem antes do WhatsApp
    $beforeWhatsApp = $parts[0];
    preg_match_all($pattern, $beforeWhatsApp, $beforeMatches);
    $paragraphsBefore = count($beforeMatches[0]);
    
    $totalParagraphs = count($paragraphs);
    
    // Determinar a posição baseada na quantidade de parágrafos antes
    if ($paragraphsBefore == 0) {
        return 'after-first';
    } elseif ($paragraphsBefore == 1) {
        return 'after-second';
    } elseif ($paragraphsBefore == 2) {
        return 'after-third';
    } elseif ($paragraphsBefore >= floor($totalParagraphs / 2) && $paragraphsBefore < $totalParagraphs - 1) {
        return 'middle';
    } elseif ($paragraphsBefore == $totalParagraphs - 1) {
        return 'before-last';
    } elseif ($paragraphsBefore >= $totalParagraphs) {
        return 'end';
    } else {
        return 'after-second'; // Padrão
    }
}

/**
 * Detecta qual URL do WhatsApp está sendo usada no conteúdo
 * CORREÇÃO: Agora detecta corretamente a URL no conteúdo HTML
 */
function detectSelectedWhatsAppUrl($content, $whatsappSettings) {
    if (strpos($content, 'whatsapp-cta-container') === false) {
        return 'url_1';
    }
    
    // Extrair o href do link WhatsApp com regex mais específico
    preg_match('/<a[^>]+href="([^"]+)"[^>]*class="[^"]*whatsapp-cta-button[^"]*"/', $content, $matches);
    
    if (!empty($matches[1])) {
        $urlInContent = $matches[1];
        
        // Comparar com as URLs disponíveis
        if ($urlInContent === $whatsappSettings['url_1']) {
            return 'url_1';
        } elseif (!empty($whatsappSettings['url_2']) && $urlInContent === $whatsappSettings['url_2']) {
            return 'url_2';
        } elseif (!empty($whatsappSettings['url_3']) && $urlInContent === $whatsappSettings['url_3']) {
            return 'url_3';
        }
    }
    
    return 'url_1'; // Padrão
}

/**
 * Insere elementos HTML em posições específicas do conteúdo
 * 
 * @param string $content O conteúdo HTML
 * @param array $elements Array de elementos a inserir (html e posição)
 * @return string Conteúdo com elementos inseridos
 */
function insertContentElements($content, $elements) {
    if (empty($elements)) {
        return $content;
    }
    
    // Primeiro remove elementos existentes para evitar duplicação
    $content = removeExistingElements($content);
    
    // Dividir o conteúdo em parágrafos
    $pattern = '/<p>(.*?)<\/p>/s';
    preg_match_all($pattern, $content, $matches);
    $paragraphs = $matches[0];
    
    if (count($paragraphs) == 0) {
        // Se não houver parágrafos, adiciona todos os elementos no final
        foreach ($elements as $element) {
            $content .= $element['html'];
        }
        return $content;
    }
    
    // Preparar array para inserção
    $totalParagraphs = count($paragraphs);
    $insertPoints = [];
    
    // Determinar posições de inserção para cada elemento
    foreach ($elements as $element) {
        $position = $element['position'];
        $insertIndex = 0;
        
        switch ($position) {
            case 'after-first':
                $insertIndex = 0;
                break;
            case 'after-second':
                $insertIndex = min(1, $totalParagraphs - 1);
                break;
            case 'after-third':
                $insertIndex = min(2, $totalParagraphs - 1);
                break;
            case 'middle':
                $insertIndex = floor($totalParagraphs / 2);
                break;
            case 'before-last':
                $insertIndex = $totalParagraphs - 2;
                $insertIndex = max(0, $insertIndex);
                break;
            case 'end':
                $insertIndex = $totalParagraphs - 1;
                break;
            default:
                // Posição personalizada (número)
                if (is_numeric($position)) {
                    $insertIndex = min(intval($position) - 1, $totalParagraphs - 1);
                    $insertIndex = max(0, $insertIndex);
                } else {
                    $insertIndex = $totalParagraphs - 1; // Default to end
                }
        }
        
        // Adiciona ao ponto de inserção
        if (!isset($insertPoints[$insertIndex])) {
            $insertPoints[$insertIndex] = [];
        }
        $insertPoints[$insertIndex][] = $element['html'];
    }
    
    // Inserir os elementos nas posições especificadas
    $newContent = '';
    for ($i = 0; $i < $totalParagraphs; $i++) {
        $newContent .= $paragraphs[$i];
        
        // Insere elementos neste ponto, se houver
        if (isset($insertPoints[$i])) {
            foreach ($insertPoints[$i] as $html) {
                $newContent .= $html;
            }
        }
    }
    
    return $newContent;
}

// Importações de arquivos necessários com verificação
$requiredFiles = ['config.php', 'db.php', 'functions.php', 'auth.php', 'claude-api.php', 'whatsapp-helper.php'];
foreach ($requiredFiles as $file) {
    $path = BASE_PATH . '/includes/' . $file;
    if (!file_exists($path)) {
        emergencyLog("Arquivo não encontrado: $path");
        die("Erro crítico: Arquivo $file não encontrado.");
    }
    try {
        require_once $path;
    } catch (Throwable $e) {
        emergencyLog("Erro ao incluir $file: " . $e->getMessage());
        die("Erro crítico ao incluir $file: " . $e->getMessage());
    }
}

// Verificar autenticação do usuário
try {
    if (!isset($auth) || !is_object($auth) || !method_exists($auth, 'isLoggedIn')) {
        throw new Exception("Objeto \$auth não está definido ou inválido.");
    }

    if (!$auth->isLoggedIn()) {
        logInfo("Usuário não autenticado ao tentar acessar page-edit.php");
        redirect('admin/login.php');
        exit;
    }
} catch (Exception $e) {
    logError("Erro na verificação de autenticação: " . $e->getMessage());
    emergencyLog("Erro na verificação de autenticação: " . $e->getMessage());
    setAlert('Erro de autenticação. Por favor, faça login novamente.', ALERT_ERROR);
    redirect('admin/login.php');
    exit;
}

// CORREÇÃO: Verificar e criar coluna selected_whatsapp_url se não existir
try {
    $db->query("SHOW COLUMNS FROM pages LIKE 'selected_whatsapp_url'");
    $columnExists = $db->single();
    
    if (!$columnExists) {
        // Adicionar a coluna se não existir
        $db->query("ALTER TABLE pages ADD COLUMN selected_whatsapp_url VARCHAR(10) DEFAULT 'url_1' AFTER landing_page_id");
        $db->execute();
        logInfo("Coluna selected_whatsapp_url adicionada à tabela pages");
    }
} catch (Exception $e) {
    logError("Erro ao verificar/criar coluna selected_whatsapp_url: " . $e->getMessage());
}

// Verifica se ID foi fornecido
if (!isset($_GET['id']) || !is_numeric($_GET['id'])) {
    setAlert('ID da página não fornecido ou inválido.', ALERT_ERROR);
    redirect('admin/page-list.php');
}

$pageId = intval($_GET['id']);

// Array com os tipos de páginas disponíveis
$pageTypes = [
    'landing' => 'Página de Aterrisagem (PA)',
    'step1' => 'Primeira Etapa',
    'registration' => 'Página de Registro'
];

// Posições disponíveis para inserção
$availablePositions = [
    'after-first' => 'Após o 1º parágrafo',
    'after-second' => 'Após o 2º parágrafo',
    'after-third' => 'Após o 3º parágrafo',
    'middle' => 'No meio do conteúdo',
    'before-last' => 'Antes do último parágrafo',
    'end' => 'No final do conteúdo'
];

// Inicializar variáveis
$wordCount = 1000; // Valor padrão

// Variáveis do WhatsApp
$whatsapp_position = 'after-second';
$use_whatsapp_cta = false;
$selected_whatsapp_url = 'url_1';

// Variáveis do AdSense
$adsense_code = '';
$adsense_position = 'middle';
$use_adsense = false;

// Variáveis do JoinAds
$joinads_code = '<div joinadscode="Content2"></div>';
$joinads_position = 'after-third';
$use_joinads = false;

// Carregar landing pages para o select
try {
    $db->query("SELECT id, title FROM pages WHERE type = 'landing' ORDER BY title");
    $landingPages = $db->resultSet();
} catch (Exception $e) {
    $landingPages = [];
    logError("Erro ao carregar landing pages: " . $e->getMessage());
}

// Busca dados da página e configurações adicionais
try {
    $db->query("SELECT * FROM pages WHERE id = :id");
    $db->bind(':id', $pageId);
    $page = $db->single();
    
    if (!$page) {
        setAlert('Página não encontrada.', ALERT_ERROR);
        redirect('admin/page-list.php');
    }
    
    // CORREÇÃO: Adicionar variável para landing_page_id com verificação se a coluna existe
    $landing_page_id = isset($page['landing_page_id']) ? intval($page['landing_page_id']) : 0;
    
    // CORREÇÃO: Buscar configurações centralizadas do WhatsApp
    $whatsappSettings = $whatsappHelper->getSettings();
    
    // CORREÇÃO PRINCIPAL: Buscar URL selecionada da tabela pages primeiro
    $selected_whatsapp_url = 'url_1'; // Valor padrão
    if (isset($page['selected_whatsapp_url']) && !empty($page['selected_whatsapp_url'])) {
        $selected_whatsapp_url = $page['selected_whatsapp_url'];
        logInfo("URL WhatsApp carregada do banco: " . $selected_whatsapp_url);
    } else {
        // Se não estiver no banco, detectar do conteúdo
        $selected_whatsapp_url = detectSelectedWhatsAppUrl($page['content'], $whatsappSettings);
        logInfo("URL WhatsApp detectada do conteúdo: " . $selected_whatsapp_url);
    }
    
    // CORREÇÃO: Extrair configurações de WhatsApp do conteúdo (se existirem)
    if (strpos($page['content'], 'whatsapp-cta-container') !== false) {
        $use_whatsapp_cta = true;
        
        // CORREÇÃO: Detectar a posição atual do elemento WhatsApp
        $whatsapp_position = detectWhatsAppPosition($page['content']);
        logInfo("Posição WhatsApp detectada: " . $whatsapp_position);
    }

    // Detectar AdSense no conteúdo  
    if (strpos($page['content'], 'adsense-container') !== false) {
        $use_adsense = true;
        
        // Extração do código AdSense
        preg_match('/<div class="adsense-container">\s*(.*?)\s*<\/div>/s', $page['content'], $adsense_matches);
        if (!empty($adsense_matches[1])) {
            $adsense_code = trim($adsense_matches[1]);
        }
        
        // Posição padrão
        $adsense_position = 'middle';
    }
    
    // Detectar JoinAds no conteúdo (se existir)
    if (strpos($page['content'], 'joinads-container') !== false) {
        $use_joinads = true;
        
        // Posição padrão para JoinAds
        $joinads_position = 'after-third';
    }
    
    // Ativar JoinAds automaticamente para step1 e registration
    if ($page['type'] === 'step1' || $page['type'] === 'registration') {
        $use_joinads = true;
    }
    
} catch (Exception $e) {
    logError("Erro ao buscar página: " . $e->getMessage());
    setAlert('Erro ao buscar dados da página.', ALERT_ERROR);
    redirect('admin/page-list.php');
}

logInfo("=== INÍCIO DA EXECUÇÃO DE " . basename(__FILE__) . " ===");

// Processamento do formulário
if ($_SERVER['REQUEST_METHOD'] === 'POST') {
    $title = isset($_POST['title']) ? trim($_POST['title']) : '';
    $content = isset($_POST['content']) ? trim($_POST['content']) : '';
    $type = isset($_POST['page_type']) ? trim($_POST['page_type']) : '';
    $excerpt = isset($_POST['excerpt']) ? trim($_POST['excerpt']) : '';
    $meta_description = isset($_POST['meta_description']) ? trim($_POST['meta_description']) : '';
    $published = isset($_POST['published']) && $_POST['published'] == '1';
    $useApi = isset($_POST['use_api']) && $_POST['use_api'] == '1';
    $keywords = isset($_POST['keywords']) ? trim($_POST['keywords']) : '';
    $tone = isset($_POST['tone']) ? trim($_POST['tone']) : 'informativo';
    
    // CORREÇÃO: Garantir que os campos CTA sejam sempre capturados do POST
    $cta_text = isset($_POST['cta_text']) ? trim($_POST['cta_text']) : '';
    $cta_link = isset($_POST['cta_link']) ? trim($_POST['cta_link']) : '';
    
    $sequence = isset($_POST['sequence']) ? intval($_POST['sequence']) : 0;
    $wordCount = isset($_POST['word_count']) ? intval($_POST['word_count']) : 1000;
    $landing_page_id = isset($_POST['landing_page_id']) ? intval($_POST['landing_page_id']) : 0;
    
    // CORREÇÃO PRINCIPAL: Dados do WhatsApp - capturar URL selecionada do POST
    if (isset($_POST['whatsapp_position']) && !empty($_POST['whatsapp_position'])) {
        $whatsapp_position = trim($_POST['whatsapp_position']);
    } else {
        // Se não foi fornecida posição no POST, manter a atual
        $whatsapp_position = detectWhatsAppPosition($page['content']);
    }
    
    $use_whatsapp_cta = isset($_POST['use_whatsapp_cta']) && $_POST['use_whatsapp_cta'] == '1';
    
    // CORREÇÃO CRÍTICA: Capturar URL selecionada do formulário, não usar padrão
    $selected_whatsapp_url = isset($_POST['selected_whatsapp_url']) ? trim($_POST['selected_whatsapp_url']) : $selected_whatsapp_url;
    
    logInfo("URL WhatsApp recebida do POST: " . $selected_whatsapp_url);
    
    // Dados do AdSense
    $adsense_code = isset($_POST['adsense_code']) ? trim($_POST['adsense_code']) : '';
    $adsense_position = isset($_POST['adsense_position']) ? trim($_POST['adsense_position']) : 'middle';
    $use_adsense = isset($_POST['use_adsense']) && $_POST['use_adsense'] == '1';
    
    // Dados do JoinAds
    $joinads_position = isset($_POST['joinads_position']) ? trim($_POST['joinads_position']) : 'after-third';
    $use_joinads = isset($_POST['use_joinads']) && $_POST['use_joinads'] == '1';
    
    // Verificar se é step1 ou registration para ativar o JoinAds automaticamente
    if ($type === 'step1' || $type === 'registration') {
        $use_joinads = true;
        $joinads_position = 'after-third';
    }
    
    $errors = [];
    
    // Se estiver usando a API para regenerar conteúdo
    if ($useApi) {
        if (empty($title)) {
            $errors[] = 'O título é obrigatório para gerar conteúdo com a API.';
        }
        
        if (empty($type)) {
            $errors[] = 'Selecione um tipo de página para gerar com a API.';
        }
        
        if (empty($errors)) {
            try {
                // Chama a API para gerar novo conteúdo com o tamanho especificado
                $generatedPage = $claudeAPI->generatePage($title, $type, $keywords, $tone, $wordCount);
                
                // Preenche os campos com o conteúdo gerado
                $content = $generatedPage['content'];
                
                // Preparar elementos a serem inseridos no conteúdo
                $elementsToInsert = [];
                
                // CORREÇÃO: Adicionar elemento WhatsApp com URL selecionada
                if ($use_whatsapp_cta) {
                    $whatsAppHtml = $whatsappHelper->generateWhatsAppHTML($selected_whatsapp_url);
                    logInfo("HTML WhatsApp gerado para URL: " . $selected_whatsapp_url);
                    
                    $elementsToInsert[] = [
                        'html' => $whatsAppHtml,
                        'position' => $whatsapp_position
                    ];
                }
                
                // Adicionar elemento AdSense, se necessário
                if ($use_adsense && !empty($adsense_code)) {
                    $adsenseHtml = '<div class="adsense-container">
                        ' . $adsense_code . '
                    </div>';
                    
                    $elementsToInsert[] = [
                        'html' => $adsenseHtml,
                        'position' => $adsense_position
                    ];
                }
                
                // Adicionar elemento JoinAds, se necessário
                if ($use_joinads && ($type === 'step1' || $type === 'registration')) {
                    $joinAdsHtml = '<div class="joinads-container">
                        <div joinadscode="Content2"></div>
                    </div>';
                    
                    $elementsToInsert[] = [
                        'html' => $joinAdsHtml,
                        'position' => $joinads_position
                    ];
                }
                
                // Inserir elementos no conteúdo
                if (!empty($elementsToInsert)) {
                    $content = insertContentElements($content, $elementsToInsert);
                }
                
                $excerpt = $generatedPage['excerpt'];
                $meta_description = $generatedPage['meta_description'];
                $cta_text = $generatedPage['cta_text'];
                
                // Exibe mensagem de sucesso
                $generatedWordCount = isset($generatedPage['word_count']) ? $generatedPage['word_count'] : str_word_count(strip_tags($content));
                setAlert("Conteúdo regenerado com sucesso! ({$generatedWordCount} palavras) Revise antes de salvar.", ALERT_SUCCESS);
                
                // Atualiza os dados da página na variável para exibição no formulário
                $page['content'] = $content;
                $page['excerpt'] = $excerpt;
                $page['meta_description'] = $meta_description;
                $page['cta_text'] = $cta_text;
            } catch (Exception $e) {
                $errors[] = 'Erro ao gerar conteúdo: ' . $e->getMessage();
                logError("Erro ao regenerar conteúdo com API: " . $e->getMessage());
            }
        }
    } 
    // Se estiver salvando as alterações
    else if (isset($_POST['save'])) {
        // Validação
        if (empty($title)) {
            $errors[] = 'O título é obrigatório.';
        }
        
        if (empty($content)) {
            $errors[] = 'O conteúdo é obrigatório.';
        }
        
        if (empty($type)) {
            $errors[] = 'O tipo de página é obrigatório.';
        }
        
        // Validação para landing_page_id
        if (in_array($type, ['step1', 'registration']) && empty($landing_page_id)) {
            $errors[] = 'Para páginas de etapa (Step) é obrigatório selecionar uma Landing Page associada.';
        }
        
        // Se não houver erros, atualiza no banco
        if (empty($errors)) {
            try {
                // Define o landing_page_id baseado no tipo da página
                if ($type === 'landing') {
                    $landing_page_id = 0; // Landing pages não têm página pai
                }
                
                // CORREÇÃO: Primeiro remove elementos existentes do conteúdo para evitar duplicação
                $content = removeExistingElements($content);
                
                // Preparar elementos a serem inseridos no conteúdo
                $elementsToInsert = [];
                
                // CORREÇÃO PRINCIPAL: Adicionar elemento WhatsApp com URL selecionada
                if ($use_whatsapp_cta) {
                    $whatsAppHtml = $whatsappHelper->generateWhatsAppHTML($selected_whatsapp_url);
                    logInfo("Salvando WhatsApp com URL: " . $selected_whatsapp_url);
                    
                    $elementsToInsert[] = [
                        'html' => $whatsAppHtml,
                        'position' => $whatsapp_position
                    ];
                }
                
                // Adicionar elemento AdSense, se necessário
                if ($use_adsense && !empty($adsense_code)) {
                    $adsenseHtml = '<div class="adsense-container">
                        ' . $adsense_code . '
                    </div>';
                    
                    $elementsToInsert[] = [
                        'html' => $adsenseHtml,
                        'position' => $adsense_position
                    ];
                }
                
                // Adicionar elemento JoinAds, se necessário
                if ($use_joinads && ($type === 'step1' || $type === 'registration')) {
                    $joinAdsHtml = '<div class="joinads-container">
                        <div joinadscode="Content2"></div>
                    </div>';
                    
                    $elementsToInsert[] = [
                        'html' => $joinAdsHtml,
                        'position' => $joinads_position
                    ];
                }
                
                // Inserir elementos no conteúdo (apenas se houver elementos para inserir)
                if (!empty($elementsToInsert)) {
                    $content = insertContentElements($content, $elementsToInsert);
                }
                
                // Processa upload de nova imagem destacada se fornecida
                $featured_image = $page['featured_image']; // Mantém a imagem atual por padrão
                
                if (isset($_FILES['featured_image']) && $_FILES['featured_image']['error'] === UPLOAD_ERR_OK) {
                    // Remove imagem antiga se existir
                    if (!empty($page['featured_image'])) {
                        deleteImage($page['featured_image']);
                    }
                    
                    $featured_image = uploadImage($_FILES['featured_image'], 'pages');
                }
                
                // CORREÇÃO CRÍTICA: Atualiza no banco incluindo selected_whatsapp_url
                $db->query("UPDATE pages 
                           SET title = :title, 
                               content = :content, 
                               excerpt = :excerpt,
                               type = :type,
                               sequence = :sequence,
                               featured_image = :featured_image,
                               published = :published,
                               updated_at = NOW(),
                               meta_description = :meta_description,
                               cta_text = :cta_text,
                               cta_link = :cta_link,
                               landing_page_id = :landing_page_id,
                               selected_whatsapp_url = :selected_whatsapp_url
                           WHERE id = :id");
                
                $db->bind(':title', $title);
                $db->bind(':content', $content);
                $db->bind(':excerpt', $excerpt);
                $db->bind(':type', $type);
                $db->bind(':sequence', $sequence);
                $db->bind(':featured_image', $featured_image);
                $db->bind(':published', $published ? 1 : 0);
                $db->bind(':meta_description', $meta_description);
                $db->bind(':cta_text', $cta_text);
                $db->bind(':cta_link', $cta_link);
                $db->bind(':landing_page_id', $landing_page_id);
                $db->bind(':selected_whatsapp_url', $selected_whatsapp_url); // CORREÇÃO: Salva URL selecionada
                $db->bind(':id', $pageId);
                
                $db->execute();
                
                logInfo("Página atualizada com URL WhatsApp: " . $selected_whatsapp_url);
                
                // Mensagem de sucesso
                setAlert('Página atualizada com sucesso!', ALERT_SUCCESS);
                
                // CORREÇÃO: Recarrega os dados da página para refletir as mudanças
                $db->query("SELECT * FROM pages WHERE id = :id");
                $db->bind(':id', $pageId);
                $page = $db->single();
                
                // CORREÇÃO: Re-extrair configurações após a atualização
                if (strpos($page['content'], 'whatsapp-cta-container') !== false) {
                    $use_whatsapp_cta = true;
                    $whatsapp_position = detectWhatsAppPosition($page['content']);
                    
                    // CORREÇÃO: Usar URL salva no banco
                    if (isset($page['selected_whatsapp_url']) && !empty($page['selected_whatsapp_url'])) {
                        $selected_whatsapp_url = $page['selected_whatsapp_url'];
                    }
                } else {
                    $use_whatsapp_cta = false;
                }
                if (strpos($page['content'], 'adsense-container') !== false) {
                    $use_adsense = true;
                    
                    preg_match('/<div class="adsense-container">\s*(.*?)\s*<\/div>/s', $page['content'], $adsense_matches);
                    if (!empty($adsense_matches[1])) {
                        $adsense_code = trim($adsense_matches[1]);
                    }
                } else {
                    $use_adsense = false;
                }
                
                // Re-extrair configurações de JoinAds após a atualização
                if (strpos($page['content'], 'joinads-container') !== false) {
                    $use_joinads = true;
                } else {
                    $use_joinads = false;
                }
                
                // Reativar JoinAds automaticamente para step1 e registration
                if ($page['type'] === 'step1' || $page['type'] === 'registration') {
                    $use_joinads = true;
                }
                
                // Recarregar landing_page_id
                $landing_page_id = isset($page['landing_page_id']) ? intval($page['landing_page_id']) : 0;
                
            } catch (Exception $e) {
                $errors[] = 'Erro ao atualizar a página: ' . $e->getMessage();
                logError("Erro ao atualizar página no banco: " . $e->getMessage());
            }
        }
    }
}

// Carregar o header depois de verificar a autenticação
require_once 'inc/header.php';
?>

<div class="container-fluid px-4">
    <div class="page-header mb-4">
        <div class="row align-items-center">
            <div class="col-md-6">
                <h1 class="page-title"><?php echo $pageTitle; ?></h1>
                <p class="text-muted">Edite as informações da página e seu conteúdo.</p>
            </div>
            <div class="col-md-6 text-md-end">
                <a href="page-list.php" class="btn btn-outline-primary">
                    <i class="fas fa-arrow-left me-2"></i>Voltar para Lista
                </a>
                <?php if ($page['published']): ?>
                <a href="../pages/<?php echo $page['slug']; ?>" class="btn btn-outline-success ms-2" target="_blank">
                    <i class="fas fa-external-link-alt me-2"></i>Ver Página
                </a>
                <?php endif; ?>
            </div>
        </div>
    </div>

    <!-- DEBUG: Mostrar URL selecionada para verificação -->
    <?php if (defined('DEBUG') && DEBUG): ?>
    <div class="alert alert-info">
        <strong>DEBUG:</strong> URL WhatsApp selecionada: <?php echo htmlspecialchars($selected_whatsapp_url); ?>
    </div>
    <?php endif; ?>

    <!-- Informações da Página -->
    <div class="row mb-4">
        <div class="col-md-4">
            <div class="card border-0 shadow-sm">
                <div class="card-body py-3">
                    <div class="d-flex align-items-center">
                        <div class="icon-box bg-primary-light me-3">
                            <i class="fas fa-calendar-alt text-primary"></i>
                        </div>
                        <div>
                            <div class="small text-muted">Criado em</div>
                            <div class="fw-medium"><?php echo date('d/m/Y H:i', strtotime($page['created_at'])); ?></div>
                        </div>
                    </div>
                </div>
            </div>
        </div>
        <div class="col-md-4">
            <div class="card border-0 shadow-sm">
                <div class="card-body py-3">
                    <div class="d-flex align-items-center">
                        <div class="icon-box bg-info-light me-3">
                            <i class="fas fa-clock text-info"></i>
                        </div>
                        <div>
                            <div class="small text-muted">Última atualização</div>
                            <div class="fw-medium"><?php echo date('d/m/Y H:i', strtotime($page['updated_at'])); ?></div>
                        </div>
                    </div>
                </div>
            </div>
        </div>
        <div class="col-md-4">
            <div class="card border-0 shadow-sm">
                <div class="card-body py-3">
                    <div class="d-flex align-items-center">
                        <div class="icon-box <?php echo $page['published'] ? 'bg-success-light' : 'bg-warning-light'; ?> me-3">
                            <i class="fas <?php echo $page['published'] ? 'fa-check-circle text-success' : 'fa-clock text-warning'; ?>"></i>
                        </div>
                        <div>
                            <div class="small text-muted">Status</div>
                            <div class="fw-medium">
                                <span class="badge <?php echo $page['published'] ? 'bg-success' : 'bg-warning'; ?>">
                                    <?php echo $page['published'] ? 'Publicado' : 'Rascunho'; ?>
                                </span>
                            </div>
                        </div>
                    </div>
                </div>
            </div>
        </div>
    </div>

    <?php if (isset($errors) && !empty($errors)): ?>
    <div class="alert alert-danger">
        <h5 class="mb-2"><i class="fas fa-exclamation-circle me-2"></i>Atenção!</h5>
        <ul class="mb-0">
            <?php foreach ($errors as $error): ?>
            <li><?php echo htmlspecialchars($error); ?></li>
            <?php endforeach; ?>
        </ul>
    </div>
    <?php endif; ?>

    <div class="card border-0 shadow-sm mb-4">
        <div class="card-body p-4">
            <ul class="nav nav-tabs mb-4" id="pageTab" role="tablist">
                <li class="nav-item" role="presentation">
                    <button class="nav-link active" id="content-tab" data-bs-toggle="tab" data-bs-target="#content" type="button" role="tab" aria-controls="content" aria-selected="true">
                        <i class="fas fa-edit me-2"></i>Conteúdo
                    </button>
                </li>
                <li class="nav-item" role="presentation">
                    <button class="nav-link" id="elements-tab" data-bs-toggle="tab" data-bs-target="#elements" type="button" role="tab" aria-controls="elements" aria-selected="false">
                        <i class="fas fa-puzzle-piece me-2"></i>Elementos Adicionais
                    </button>
                </li>
                <li class="nav-item" role="presentation">
                    <button class="nav-link" id="settings-tab" data-bs-toggle="tab" data-bs-target="#settings" type="button" role="tab" aria-controls="settings" aria-selected="false">
                        <i class="fas fa-cog me-2"></i>Configurações
                    </button>
                </li>
            </ul>
            
            <form method="post" action="" enctype="multipart/form-data">
                <!-- CORREÇÃO: Campo hidden para preservar a URL selecionada -->
                <input type="hidden" id="current_selected_whatsapp_url" value="<?php echo htmlspecialchars($selected_whatsapp_url); ?>">
                <input type="hidden" id="current_whatsapp_position" value="<?php echo htmlspecialchars($whatsapp_position); ?>">
                
                <div class="tab-content" id="pageTabContent">
                    <!-- Tab de Conteúdo Principal -->
                    <div class="tab-pane fade show active" id="content" role="tabpanel" aria-labelledby="content-tab">
                        <div class="mb-3">
                            <label for="title" class="form-label">Título <span class="text-danger">*</span></label>
                            <input type="text" class="form-control form-control-lg" id="title" name="title" 
                                   value="<?php echo htmlspecialchars($page['title']); ?>" required>
                        </div>
                        
                        <div class="mb-4">
                            <label for="editor" class="form-label">Conteúdo <span class="text-danger">*</span></label>
                            <div class="editor-container">
                                <!-- CORREÇÃO: Remover elementos antes de editar para evitar mostrar duplicados -->
                                <textarea class="form-control" id="editor" name="content" rows="12"><?php echo htmlspecialchars(removeExistingElements($page['content'])); ?></textarea>
                            </div>
                        </div>
                        
                        <div class="row">
                            <div class="col-md-6">
                                <div class="mb-3">
                                    <label for="excerpt" class="form-label">Resumo</label>
                                    <textarea class="form-control" id="excerpt" name="excerpt" rows="3"><?php echo htmlspecialchars($page['excerpt']); ?></textarea>
                                    <div class="form-text">Um breve resumo da página (opcional).</div>
                                </div>
                            </div>
                            <div class="col-md-6">
                                <div class="mb-3">
                                    <label for="meta_description" class="form-label">Meta Description</label>
                                    <textarea class="form-control" id="meta_description" name="meta_description" rows="3"><?php echo htmlspecialchars($page['meta_description']); ?></textarea>
                                    <div class="form-text meta-count">Descrição para SEO (restam <span id="meta-chars">160</span> caracteres).</div>
                                </div>
                            </div>
                        </div>
                    </div>
                    
                    <!-- Tab de Elementos Adicionais -->
                    <div class="tab-pane fade" id="elements" role="tabpanel" aria-labelledby="elements-tab">
                        <!-- Abas para WhatsApp, AdSense e JoinAds -->
                        <ul class="nav nav-pills nav-fill mb-3" id="elementsTab" role="tablist">
                            <li class="nav-item" role="presentation">
                                <button class="nav-link active" id="whatsapp-tab" data-bs-toggle="pill" 
                                        data-bs-target="#whatsapp-content" type="button" role="tab" 
                                        aria-controls="whatsapp-content" aria-selected="true">
                                    <i class="fab fa-whatsapp text-success me-1"></i> WhatsApp
                                </button>
                            </li>
                            <li class="nav-item" role="presentation">
                                <button class="nav-link" id="adsense-tab" data-bs-toggle="pill" 
                                        data-bs-target="#adsense-content" type="button" role="tab" 
                                        aria-controls="adsense-content" aria-selected="false">
                                    <i class="fas fa-ad text-primary me-1"></i> AdSense
                                </button>
                            </li>
                            <li class="nav-item" role="presentation">
                                <button class="nav-link" id="joinads-tab" data-bs-toggle="pill" 
                                        data-bs-target="#joinads-content" type="button" role="tab" 
                                        aria-controls="joinads-content" aria-selected="false">
                                    <i class="fas fa-ad text-info me-1"></i> JoinAds
                                </button>
                            </li>
                        </ul>
                        
                        <div class="tab-content" id="elementsTabContent">
                            <!-- Conteúdo WhatsApp -->
                            <div class="tab-pane fade show active" id="whatsapp-content" role="tabpanel" aria-labelledby="whatsapp-tab">
                                <!-- Informação sobre configurações centralizadas -->
                                <div class="alert alert-info border-0 mb-3">
                                    <div class="d-flex align-items-center">
                                        <i class="fas fa-info-circle me-2"></i>
                                        <div>
                                            <strong>Configurações Centralizadas</strong>
                                            <p class="mb-0 small">O título e texto do botão são configurados globalmente. 
                                            <a href="whatsapp-settings.php" target="_blank">Clique aqui para editar</a>.</p>
                                        </div>
                                    </div>
                                </div>
                                
                                <div class="form-check form-switch mb-3">
                                    <input class="form-check-input" type="checkbox" id="use_whatsapp_cta" 
                                           name="use_whatsapp_cta" value="1" <?php echo $use_whatsapp_cta ? 'checked' : ''; ?>>
                                    <label class="form-check-label" for="use_whatsapp_cta">
                                        Inserir botão WhatsApp no conteúdo
                                    </label>
                                </div>
                                
                                <div id="whatsapp_options" class="<?php echo !$use_whatsapp_cta ? 'opacity-30' : ''; ?>">
                                    <!-- Informações das configurações atuais (somente leitura) -->
                                    <div class="row mb-3">
                                        <div class="col-md-6">
                                            <label class="form-label">Título Atual</label>
                                            <div class="form-control-plaintext bg-light rounded p-2">
                                                <?php echo htmlspecialchars($whatsappSettings['title']); ?>
                                            </div>
                                        </div>
                                        <div class="col-md-6">
                                            <label class="form-label">Texto do Botão Atual</label>
                                            <div class="form-control-plaintext bg-light rounded p-2">
                                                <?php echo htmlspecialchars($whatsappSettings['button_text']); ?>
                                            </div>
                                        </div>
                                    </div>
                                    
                                    <div class="row mb-3">
                                        <div class="col-md-8">
                                            <label for="selected_whatsapp_url" class="form-label">Escolher URL para esta página <span class="text-danger">*</span></label>
                                            <select class="form-select" id="selected_whatsapp_url" name="selected_whatsapp_url" 
                                                    <?php echo !$use_whatsapp_cta ? 'disabled' : ''; ?>>
                                                <?php if (!empty($whatsappSettings['url_1'])): ?>
                                                <option value="url_1" <?php echo $selected_whatsapp_url == 'url_1' ? 'selected' : ''; ?>>
                                                    Grupo 1 - <?php echo htmlspecialchars(substr($whatsappSettings['url_1'], 0, 50) . (strlen($whatsappSettings['url_1']) > 50 ? '...' : '')); ?>
                                                </option>
                                                <?php endif; ?>
                                                
                                                <?php if (!empty($whatsappSettings['url_2'])): ?>
                                                <option value="url_2" <?php echo $selected_whatsapp_url == 'url_2' ? 'selected' : ''; ?>>
                                                    Grupo 2 - <?php echo htmlspecialchars(substr($whatsappSettings['url_2'], 0, 50) . (strlen($whatsappSettings['url_2']) > 50 ? '...' : '')); ?>
                                                </option>
                                                <?php endif; ?>
                                                
                                                <?php if (!empty($whatsappSettings['url_3'])): ?>
                                                <option value="url_3" <?php echo $selected_whatsapp_url == 'url_3' ? 'selected' : ''; ?>>
                                                    Grupo 3 - <?php echo htmlspecialchars(substr($whatsappSettings['url_3'], 0, 50) . (strlen($whatsappSettings['url_3']) > 50 ? '...' : '')); ?>
                                                </option>
                                                <?php endif; ?>
                                            </select>
                                            <div class="form-text">Escolha qual URL do WhatsApp será usada especificamente nesta página.</div>
                                        </div>
                                        <div class="col-md-4">
                                            <label class="form-label">Ações</label>
                                            <div>
                                                <a href="whatsapp-settings.php" class="btn btn-outline-primary btn-sm w-100" target="_blank">
                                                    <i class="fas fa-edit me-1"></i> Editar Configurações
                                                </a>
                                            </div>
                                        </div>
                                    </div>
                                    
                                    <div class="mb-3">
                                        <label for="whatsapp_position" class="form-label">Posição no Conteúdo</label>
                                        <select class="form-select" id="whatsapp_position" name="whatsapp_position" 
                                                <?php echo !$use_whatsapp_cta ? 'disabled' : ''; ?>>
                                            <?php foreach ($availablePositions as $key => $label): ?>
                                            <option value="<?php echo $key; ?>" <?php echo $whatsapp_position == $key ? 'selected' : ''; ?>>
                                                <?php echo htmlspecialchars($label); ?>
                                            </option>
                                            <?php endforeach; ?>
                                        </select>
                                    </div>
                                    
                                    <div class="whatsapp-preview p-3 bg-light rounded">
                                        <p class="small mb-2">Prévia do botão:</p>
                                        <div class="whatsapp-cta-container">
                                            <h3 class="whatsapp-title"><?php echo htmlspecialchars($whatsappSettings['title']); ?></h3>
                                            <a href="#" class="whatsapp-cta-button" target="_blank" onclick="return false;">
                                                <i class="fab fa-whatsapp"></i> <?php echo htmlspecialchars($whatsappSettings['button_text']); ?>
                                            </a>
                                            <!-- CORREÇÃO: Indicação clara da URL selecionada -->
                                            <div class="mt-2">
                                                <small class="whatsapp-url-info" style="color: #007bff;">
                                                    <strong>URL Selecionada:</strong> <span id="preview-selected-url">
                                                        <?php 
                                                        $urlLabels = ['url_1' => 'Grupo 1', 'url_2' => 'Grupo 2', 'url_3' => 'Grupo 3'];
                                                        echo $urlLabels[$selected_whatsapp_url] ?? 'Grupo 1';
                                                        ?>
                                                    </span>
                                                </small>
                                            </div>
                                            <div class="mt-1">
                                                <small class="text-muted" id="preview-selected-url-full">
                                                    <?php 
                                                    $currentUrl = '';
                                                    switch($selected_whatsapp_url) {
                                                        case 'url_1': $currentUrl = $whatsappSettings['url_1']; break;
                                                        case 'url_2': $currentUrl = $whatsappSettings['url_2']; break;
                                                        case 'url_3': $currentUrl = $whatsappSettings['url_3']; break;
                                                    }
                                                    echo htmlspecialchars(substr($currentUrl, 0, 80) . (strlen($currentUrl) > 80 ? '...' : ''));
                                                    ?>
                                                </small>
                                            </div>
                                        </div>
                                    </div>
                                </div>
                            </div>
                            
                            <!-- Conteúdo AdSense -->
                            <div class="tab-pane fade" id="adsense-content" role="tabpanel" aria-labelledby="adsense-tab">
                                <div class="form-check form-switch mb-3">
                                    <input class="form-check-input" type="checkbox" id="use_adsense" 
                                           name="use_adsense" value="1" <?php echo $use_adsense ? 'checked' : ''; ?>>
                                    <label class="form-check-label" for="use_adsense">
                                        Inserir anúncio AdSense no conteúdo
                                    </label>
                                </div>
                                
                                <div id="adsense_options" class="<?php echo !$use_adsense ? 'opacity-30' : ''; ?>">
                                    <div class="mb-3">
                                        <label for="adsense_code" class="form-label">Código do AdSense</label>
                                        <textarea class="form-control" id="adsense_code" name="adsense_code" 
                                                  rows="5" <?php echo !$use_adsense ? 'disabled' : ''; ?>><?php echo htmlspecialchars($adsense_code); ?></textarea>
                                        <div class="form-text">Cole o código completo do anúncio fornecido pelo Google AdSense.</div>
                                    </div>
                                    
                                    <div class="mb-3">
                                        <label for="adsense_position" class="form-label">Posição no Conteúdo</label>
                                        <select class="form-select" id="adsense_position" name="adsense_position" 
                                                <?php echo !$use_adsense ? 'disabled' : ''; ?>>
                                            <?php foreach ($availablePositions as $key => $label): ?>
                                            <option value="<?php echo $key; ?>" <?php echo $adsense_position == $key ? 'selected' : ''; ?>>
                                                <?php echo htmlspecialchars($label); ?>
                                            </option>
                                            <?php endforeach; ?>
                                        </select>
                                    </div>
                                    
                                    <div class="adsense-preview p-3 bg-light rounded">
                                        <p class="small mb-2">O anúncio AdSense será inserido na posição selecionada.</p>
                                        <div class="adsense-container">
                                            <div class="adsense-placeholder">
                                                <i class="fas fa-ad"></i>
                                                <span>Anúncio AdSense</span>
                                            </div>
                                        </div>
                                    </div>
                                </div>
                            </div>
                            
                            <!-- Conteúdo JoinAds -->
                            <div class="tab-pane fade" id="joinads-content" role="tabpanel" aria-labelledby="joinads-tab">
                                <div class="form-check form-switch mb-3">
                                    <input class="form-check-input" type="checkbox" id="use_joinads" 
                                           name="use_joinads" value="1" <?php echo $use_joinads ? 'checked' : ''; ?> 
                                           <?php echo ($page['type'] === 'step1' || $page['type'] === 'registration') ? 'disabled' : ''; ?>>
                                    <label class="form-check-label" for="use_joinads">
                                        Inserir anúncio JoinAds no conteúdo
                                        <?php if ($page['type'] === 'step1' || $page['type'] === 'registration'): ?>
                                        <small class="text-success">(Ativado automaticamente para este tipo de página)</small>
                                        <?php endif; ?>
                                    </label>
                                </div>
                                
                                <div id="joinads_options" class="<?php echo !$use_joinads ? 'opacity-30' : ''; ?>">
                                    <div class="mb-3">
                                        <label for="joinads_position" class="form-label">Posição no Conteúdo</label>
                                        <select class="form-select" id="joinads_position" name="joinads_position" 
                                                <?php echo !$use_joinads ? 'disabled' : ''; ?> 
                                                <?php echo ($page['type'] === 'step1' || $page['type'] === 'registration') ? 'disabled' : ''; ?>>
                                            <?php foreach ($availablePositions as $key => $label): ?>
                                            <option value="<?php echo $key; ?>" <?php echo $joinads_position == $key ? 'selected' : ''; ?>>
                                                <?php echo htmlspecialchars($label); ?>
                                            </option>
                                            <?php endforeach; ?>
                                        </select>
                                        <?php if ($page['type'] === 'step1' || $page['type'] === 'registration'): ?>
                                        <div class="form-text text-success">Para páginas do tipo Step1 e Registration, o elemento é sempre inserido após o terceiro parágrafo.</div>
                                        <?php endif; ?>
                                    </div>
                                    
                                    <div class="joinads-preview p-3 bg-light rounded">
                                        <p class="small mb-2">Este elemento JoinAds será inserido na posição selecionada:</p>
                                        <div class="joinads-container">
                                            <div class="joinads-placeholder">
                                                <i class="fas fa-ad"></i>
                                                <span>JoinAds Content2</span>
                                            </div>
                                        </div>
                                    </div>
                                </div>
                            </div>
                        </div>
                    </div>
                    
                    <!-- Tab de Configurações -->
                    <div class="tab-pane fade" id="settings" role="tabpanel" aria-labelledby="settings-tab">
                        <div class="row g-4">
                            <div class="col-md-6">
                                <div class="mb-3">
                                    <label for="page_type" class="form-label">Tipo de Página <span class="text-danger">*</span></label>
                                    <select class="form-select" id="page_type" name="page_type" required>
                                        <?php foreach ($pageTypes as $value => $label): ?>
                                        <option value="<?php echo $value; ?>" <?php echo $page['type'] == $value ? 'selected' : ''; ?>>
                                            <?php echo htmlspecialchars($label); ?>
                                        </option>
                                        <?php endforeach; ?>
                                    </select>
                                </div>
                                
                                <!-- Campo para associar a uma Landing Page -->
                                <div class="mb-3 landing-association-field" <?php echo !in_array($page['type'], ['step1', 'registration']) ? 'style="display: none;"' : ''; ?>>
                                    <label for="landing_page_id" class="form-label">Pertence à Landing Page <span class="text-danger">*</span></label>
                                    <select class="form-select" id="landing_page_id" name="landing_page_id" <?php echo in_array($page['type'], ['step1', 'registration']) ? 'required' : ''; ?>>
                                        <option value="">Selecione uma Landing Page...</option>
                                        <?php foreach ($landingPages as $lp): ?>
                                        <option value="<?php echo $lp['id']; ?>" <?php echo $landing_page_id == $lp['id'] ? 'selected' : ''; ?>>
                                            <?php echo htmlspecialchars($lp['title']); ?>
                                        </option>
                                        <?php endforeach; ?>
                                    </select>
                                    <div class="form-text">Selecione a qual Landing Page esta etapa pertence no fluxo.</div>
                                </div>
                                
                                <div class="mb-3">
                                    <label for="sequence" class="form-label">Sequência no Fluxo</label>
                                    <input type="number" class="form-control" id="sequence" name="sequence" 
                                           value="<?php echo $page['sequence']; ?>" min="0">
                                    <div class="form-text">Ordem de exibição dentro do tipo.</div>
                                </div>
                                
                                <div class="mb-3">
                                    <label for="cta_text" class="form-label">Texto do Botão (CTA)</label>
                                    <input type="text" class="form-control" id="cta_text" name="cta_text" 
                                           value="<?php echo htmlspecialchars($page['cta_text']); ?>">
                                    <div class="form-text">Texto que aparecerá no botão principal da página.</div>
                                </div>
                                
                                <div class="mb-3">
                                    <label for="cta_link" class="form-label">Link do Botão (CTA)</label>
                                    <input type="text" class="form-control" id="cta_link" name="cta_link" 
                                           value="<?php echo htmlspecialchars($page['cta_link']); ?>"
                                           placeholder="Ex: /proxima-pagina ou https://site.com/registro">
                                    <div class="form-text">URL para onde o botão principal levará os visitantes.</div>
                                </div>
                            </div>
                            
                            <div class="col-md-6">
                                <div class="mb-4">
                                    <label for="featured_image" class="form-label">Imagem Destacada</label>
                                    <?php if (!empty($page['featured_image'])): ?>
                                    <div class="current-image mb-2">
                                        <img src="<?php echo htmlspecialchars($page['featured_image']); ?>" 
                                             alt="Imagem atual" class="img-fluid img-thumbnail">
                                        <div class="form-text">Imagem atual</div>
                                    </div>
                                    <?php endif; ?>
                                    <input type="file" class="form-control" id="featured_image" name="featured_image">
                                    <div class="form-text">Deixe em branco para manter a imagem atual.</div>
                                </div>
                                
                                <div class="form-check form-switch mb-3">
                                    <input class="form-check-input" type="checkbox" id="published" name="published" 
                                           value="1" <?php echo $page['published'] ? 'checked' : ''; ?>>
                                    <label class="form-check-label" for="published">Publicado</label>
                                    <div class="form-text">
                                        <?php if ($page['published']): ?>
                                            Esta página está visível para os visitantes.
                                        <?php else: ?>
                                            Esta página não está visível para os visitantes (rascunho).
                                        <?php endif; ?>
                                    </div>
                                </div>
                                
                                <div class="card bg-light border-0 mb-3">
                                    <div class="card-body">
                                        <h6 class="card-title"><i class="fas fa-link me-2"></i>Link Permanente</h6>
                                        <div class="input-group">
                                            <span class="input-group-text bg-white text-muted"><?php echo SITE_URL; ?>/<?php echo $page['slug']; ?></span>
                                            <button class="btn btn-outline-secondary" type="button" id="copySlug">
                                                <i class="fas fa-copy"></i>
                                            </button>
                                        </div>
                                    </div>
                                </div>
                            </div>
                        </div>
                    </div>
                </div>
                
                <div class="d-flex justify-content-between mt-4 pt-3 border-top">
                    <a href="page-list.php" class="btn btn-outline-secondary">
                        <i class="fas fa-arrow-left me-2"></i>Voltar para Lista
                    </a>
                    <button type="submit" name="save" class="btn btn-primary">
                        <i class="fas fa-save me-2"></i>Salvar Alterações
                    </button>
                </div>
            </form>
        </div>
    </div>

    <!-- Seção de Regenerar Conteúdo -->
    <div class="card border-0 shadow-sm mb-4">
        <div class="card-header bg-white">
            <h5 class="card-title mb-0"><i class="fas fa-robot me-2 text-primary"></i>Regenerar Conteúdo com API Claude</h5>
        </div>
        <div class="card-body p-4">
            <form method="post" action="">
                <div class="row g-4">
                    <div class="col-md-3">
                        <div class="mb-3">
                            <label for="api_title" class="form-label">Título para Regeneração</label>
                            <input type="text" class="form-control" id="api_title" name="title" 
                                   value="<?php echo htmlspecialchars($page['title']); ?>">
                        </div>
                    </div>
                    <div class="col-md-3">
                        <div class="mb-3">
                            <label for="keywords" class="form-label">Palavras-chave</label>
                            <input type="text" class="form-control" id="keywords" name="keywords" placeholder="Ex: marketing, vendas, curso">
                            <div class="form-text">Palavras-chave separadas por vírgula.</div>
                        </div>
                    </div>
                    <div class="col-md-3">
                        <div class="mb-3">
                            <label for="tone" class="form-label">Tom do Conteúdo</label>
                            <select class="form-select" id="tone" name="tone">
                                <option value="informativo">Informativo</option>
                                <option value="formal">Formal</option>
                                <option value="casual">Casual/Conversacional</option>
                                <option value="persuasivo">Persuasivo</option>
                                <option value="educativo">Educativo</option>
                            </select>
                        </div>
                    </div>
                    <div class="col-md-3">
                        <div class="mb-3">
                            <label for="word_count" class="form-label">Quantidade de Palavras</label>
                            <select class="form-select" id="word_count" name="word_count">
                                <option value="500" <?php echo ($wordCount == 500) ? 'selected' : ''; ?>>500 palavras</option>
                                <option value="1000" <?php echo ($wordCount == 1000 || $wordCount == 0) ? 'selected' : ''; ?>>1000 palavras</option>
                                <option value="1500" <?php echo ($wordCount == 1500) ? 'selected' : ''; ?>>1500 palavras</option>
                                <option value="2000" <?php echo ($wordCount == 2000) ? 'selected' : ''; ?>>2000 palavras</option>
                                <option value="3000" <?php echo ($wordCount == 3000) ? 'selected' : ''; ?>>3000 palavras</option>
                            </select>
                            <div class="form-text">Tamanho aproximado do conteúdo.</div>
                        </div>
                    </div>
                </div>

                <div class="alert alert-info">
                    <i class="fas fa-info-circle me-2"></i>
                    <strong>Atenção:</strong> Esta ação irá substituir o conteúdo atual da página pelo conteúdo gerado pela API Claude. 
                    Os elementos adicionais (WhatsApp, AdSense e JoinAds) serão mantidos nas posições selecionadas com a URL do WhatsApp escolhida.
                </div>

                <div class="text-end">
                    <input type="hidden" name="page_type" value="<?php echo htmlspecialchars($page['type']); ?>">
                    <input type="hidden" name="use_api" value="1">
                    <!-- CORREÇÃO: Preservar URL selecionada na regeneração -->
                    <input type="hidden" name="selected_whatsapp_url" value="<?php echo htmlspecialchars($selected_whatsapp_url); ?>">
                    <input type="hidden" name="whatsapp_position" value="<?php echo htmlspecialchars($whatsapp_position); ?>">
                    <input type="hidden" name="use_whatsapp_cta" value="<?php echo $use_whatsapp_cta ? '1' : '0'; ?>">
                    <button type="submit" name="regenerate" class="btn btn-primary">
                        <i class="fas fa-sync-alt me-2"></i>Regenerar Conteúdo
                    </button>
                </div>
            </form>
        </div>
    </div>
</div>

<!-- Estilos específicos da página -->
<style>
    :root {
        --primary-color: #4F46E5;
        --secondary-color: #7C3AED;
        --accent-color: #EC4899;
        --dark-color: #1F2937;
        --light-color: #F8FAFC;
        --text-color: #1F2937;
        --border-color: #E5E7EB;
        --gradient: linear-gradient(135deg, var(--primary-color), var(--secondary-color));
        --success-light: rgba(16, 185, 129, 0.1);
        --warning-light: rgba(245, 158, 11, 0.1);
        --primary-light: rgba(79, 70, 229, 0.1);
        --info-light: rgba(59, 130, 246, 0.1);
        --whatsapp-color: #25D366;
    }

    .page-header {
        margin-bottom: 2rem;
    }
    
    .page-title {
        font-size: 1.75rem;
        font-weight: 700;
        margin-bottom: 0.5rem;
        color: var(--dark-color);
    }
    
    .card {
        border-radius: 0.75rem;
        box-shadow: 0 4px 6px rgba(0, 0, 0, 0.05);
        transition: all 0.3s ease;
    }
    
    .icon-box {
        width: 48px;
        height: 48px;
        border-radius: 12px;
        display: flex;
        align-items: center;
        justify-content: center;
        font-size: 20px;
    }
    
    .nav-tabs {
        border-bottom: 1px solid var(--border-color);
    }
    
    .nav-tabs .nav-link {
        border: none;
        border-radius: 0.5rem 0.5rem 0 0;
        padding: 0.75rem 1.5rem;
        font-weight: 500;
        color: var(--dark-color);
        transition: all 0.3s ease;
    }
    
    .nav-tabs .nav-link.active {
        background: var(--gradient);
        color: white;
    }
    
    .nav-tabs .nav-link:hover:not(.active) {
        background: rgba(79, 70, 229, 0.1);
        color: var(--primary-color);
    }
    
    .nav-pills .nav-link {
        border-radius: 0.5rem;
        padding: 0.5rem 1rem;
        font-weight: 500;
        color: var(--dark-color);
        transition: all 0.3s ease;
    }
    
    .nav-pills .nav-link.active {
        background-color: var(--primary-color);
        color: white;
    }
    
    /* Estilos para o botão CTA do WhatsApp */
    .whatsapp-cta-container {
        text-align: center;
        margin: 2rem 0;
        padding: 1rem;
        background-color: rgba(37, 211, 102, 0.1);
        border-radius: 0.75rem;
        border: 1px solid rgba(37, 211, 102, 0.2);
    }

    .whatsapp-title {
        font-size: 1.25rem;
        margin-bottom: 1rem;
        color: #075E54;
    }

    .whatsapp-cta-button {
        display: inline-block;
        background-color: #25D366;
        color: white !important;
        font-weight: 600;
        padding: 1rem 2rem;
        border-radius: 0.5rem;
        text-decoration: none !important;
        transition: all 0.3s ease;
        box-shadow: 0 4px 15px rgba(37, 211, 102, 0.4);
        font-size: 1.1rem;
    }

    .whatsapp-cta-button:hover {
        transform: translateY(-3px);
        box-shadow: 0 8px 25px rgba(37, 211, 102, 0.5);
        color: white !important;
    }

    .whatsapp-cta-button i {
        margin-right: 0.5rem;
        font-size: 1.2rem;
    }
    
    /* Estilos para indicar URL selecionada */
    .whatsapp-url-info {
        font-weight: 500;
        padding: 0.25rem 0.5rem;
        background: rgba(0, 123, 255, 0.1);
        border-radius: 0.25rem;
        border: 1px solid rgba(0, 123, 255, 0.2);
    }
    
    /* Estilos para o container de AdSense */
    .adsense-container {
        margin: 2rem 0;
        padding: 1rem;
        background-color: rgba(79, 70, 229, 0.05);
        border-radius: 0.75rem;
        border: 1px solid rgba(79, 70, 229, 0.2);
        text-align: center;
    }
    
    .adsense-placeholder {
        height: 90px;
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        color: var(--primary-color);
        background-color: rgba(79, 70, 229, 0.1);
        border-radius: 0.5rem;
    }
    
    .adsense-placeholder i {
        font-size: 1.5rem;
        margin-bottom: 0.5rem;
    }
    
    /* Estilos para o container de JoinAds */
    .joinads-container {
        margin: 2rem 0;
        padding: 1rem;
        background-color: rgba(0, 123, 255, 0.05);
        border-radius: 0.75rem;
        border: 1px solid rgba(0, 123, 255, 0.2);
        text-align: center;
    }
    
    .joinads-placeholder {
        height: 90px;
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        color: #0d6efd;
        background-color: rgba(0, 123, 255, 0.1);
        border-radius: 0.5rem;
    }
    
    .joinads-placeholder i {
        font-size: 1.5rem;
        margin-bottom: 0.5rem;
    }
    
    .opacity-30 {
        opacity: 0.3;
        transition: opacity 0.3s ease;
    }
</style>

<!-- Importar CKEditor -->
<script src="https://cdn.ckeditor.com/ckeditor5/38.1.0/classic/ckeditor.js"></script>

<!-- Script para funcionalidades da página -->
<script>
// Inicialização do CKEditor
ClassicEditor
    .create(document.querySelector('#editor'), {
        toolbar: [
            'heading', '|',
            'bold', 'italic', 'link', 'bulletedList', 'numberedList', '|',
            'outdent', 'indent', '|',
            'blockQuote', 'insertTable', 'mediaEmbed', 'undo', 'redo'
        ]
    })
    .then(editor => {
        console.log('Editor inicializado com sucesso', editor);
    })
    .catch(error => {
        console.error('Erro ao inicializar o editor:', error);
        document.querySelector('#editor').style.display = 'block';
        document.querySelector('.editor-container').classList.add('has-error');
    });

// Meta description counter
document.getElementById('meta_description').addEventListener('input', function() {
    const maxChars = 160;
    const remaining = maxChars - this.value.length;
    document.getElementById('meta-chars').textContent = remaining;
    
    if (remaining < 0) {
        document.getElementById('meta-chars').classList.add('text-danger');
    } else {
        document.getElementById('meta-chars').classList.remove('text-danger');
    }
});

// Funções de habilitação/desabilitação dos elementos WhatsApp
function enableWhatsAppFields() {
    const whatsappOptions = document.getElementById('whatsapp_options');
    if (whatsappOptions) whatsappOptions.classList.remove('opacity-30');
    
    const whatsappFields = document.querySelectorAll('#whatsapp_position, #selected_whatsapp_url');
    whatsappFields.forEach(field => field.removeAttribute('disabled'));
}

function disableWhatsAppFields() {
    const whatsappOptions = document.getElementById('whatsapp_options');
    if (whatsappOptions) whatsappOptions.classList.add('opacity-30');
    
    const whatsappFields = document.querySelectorAll('#whatsapp_position, #selected_whatsapp_url');
    whatsappFields.forEach(field => field.setAttribute('disabled', 'disabled'));
}

// Funções de habilitação/desabilitação dos elementos AdSense
function enableAdSenseFields() {
    const adsenseOptions = document.getElementById('adsense_options');
    if (adsenseOptions) adsenseOptions.classList.remove('opacity-30');
    
    const adsenseFields = document.querySelectorAll('#adsense_code, #adsense_position');
    adsenseFields.forEach(field => field.removeAttribute('disabled'));
}

function disableAdSenseFields() {
    const adsenseOptions = document.getElementById('adsense_options');
    if (adsenseOptions) adsenseOptions.classList.add('opacity-30');
    
    const adsenseFields = document.querySelectorAll('#adsense_code, #adsense_position');
    adsenseFields.forEach(field => field.setAttribute('disabled', 'disabled'));
}

// Funções de habilitação/desabilitação dos elementos JoinAds
function enableJoinAdsFields() {
    const joinadsOptions = document.getElementById('joinads_options');
    if (joinadsOptions) joinadsOptions.classList.remove('opacity-30');
    
    const joinadsFields = document.querySelectorAll('#joinads_position');
    joinadsFields.forEach(field => field.removeAttribute('disabled'));
}

function disableJoinAdsFields() {
    const joinadsOptions = document.getElementById('joinads_options');
    if (joinadsOptions) joinadsOptions.classList.add('opacity-30');
    
    const joinadsFields = document.querySelectorAll('#joinads_position');
    joinadsFields.forEach(field => field.setAttribute('disabled', 'disabled'));
}

// Event listeners para os toggles
document.getElementById('use_whatsapp_cta').addEventListener('change', function() {
    if (this.checked) {
        enableWhatsAppFields();
        // CORREÇÃO: Preservar URL selecionada quando ativar
        preserveSelectedWhatsAppUrl();
    } else {
        disableWhatsAppFields();
    }
});

document.getElementById('use_adsense').addEventListener('change', function() {
    if (this.checked) {
        enableAdSenseFields();
    } else {
        disableAdSenseFields();
    }
});

document.getElementById('use_joinads').addEventListener('change', function() {
    if (this.checked) {
        enableJoinAdsFields();
    } else {
        disableJoinAdsFields();
    }
});

// CORREÇÃO: Função para atualizar prévia do WhatsApp com dados das configurações
function updateWhatsAppPreview() {
    const selectedUrl = document.getElementById('selected_whatsapp_url').value;
    const previewUrlSpan = document.getElementById('preview-selected-url');
    const previewUrlFull = document.getElementById('preview-selected-url-full');
    
    if (previewUrlSpan && selectedUrl) {
        const urlLabels = {
            'url_1': 'Grupo 1',
            'url_2': 'Grupo 2', 
            'url_3': 'Grupo 3'
        };
        
        const urlColors = {
            'url_1': '#007bff',
            'url_2': '#6c757d',
            'url_3': '#28a745'
        };
        
        previewUrlSpan.textContent = urlLabels[selectedUrl] || 'Grupo 1';
        previewUrlSpan.style.color = urlColors[selectedUrl] || '#007bff';
        
        // CORREÇÃO: Atualizar URL completa na prévia
        if (previewUrlFull) {
            // Buscar URL real das configurações (seria ideal buscar via AJAX, mas vamos simular)
            const urlMappings = {
                'url_1': '<?php echo htmlspecialchars($whatsappSettings['url_1']); ?>',
                'url_2': '<?php echo htmlspecialchars($whatsappSettings['url_2']); ?>',
                'url_3': '<?php echo htmlspecialchars($whatsappSettings['url_3']); ?>'
            };
            
            const fullUrl = urlMappings[selectedUrl] || '';
            previewUrlFull.textContent = fullUrl.length > 80 ? fullUrl.substring(0, 80) + '...' : fullUrl;
        }
    }
}

// CORREÇÃO: Função para preservar URL selecionada
function preserveSelectedWhatsAppUrl() {
    const selectedUrlField = document.getElementById('selected_whatsapp_url');
    const currentSelectedUrl = document.getElementById('current_selected_whatsapp_url');
    
    if (selectedUrlField && currentSelectedUrl) {
        // Se o valor atual não está selecionado, selecionar automaticamente
        if (selectedUrlField.value === '' || selectedUrlField.value !== currentSelectedUrl.value) {
            selectedUrlField.value = currentSelectedUrl.value;
            updateWhatsAppPreview();
        }
    }
}

// Função para preservar a posição atual se não foi modificada pelo usuário
function preserveWhatsAppPosition() {
    const whatsappPositionSelect = document.getElementById('whatsapp_position');
    const currentPosition = document.getElementById('current_whatsapp_position');
    
    if (whatsappPositionSelect && currentPosition) {
        // Se o valor atual não está selecionado, selecionar automaticamente
        if (whatsappPositionSelect.value === '' || whatsappPositionSelect.value !== currentPosition.value) {
            whatsappPositionSelect.value = currentPosition.value;
        }
    }
}

// Função para mostrar/esconder campo de associação com landing page e configurar JoinAds
function toggleLandingPageAssociation() {
    const pageType = document.getElementById('page_type').value;
    const associationField = document.querySelector('.landing-association-field');
    const useJoinAds = document.getElementById('use_joinads');
    
    // Configurar campo de associação de landing page
    if (pageType === 'step1' || pageType === 'registration') {
        associationField.style.display = 'block';
        document.getElementById('landing_page_id').setAttribute('required', 'required');
        
        // Configurar JoinAds para step1 e registration
        useJoinAds.checked = true;
        useJoinAds.disabled = true; // Não permite desativar
        enableJoinAdsFields();
        document.getElementById('joinads_position').value = 'after-third';
        document.getElementById('joinads_position').disabled = true; // Fixa na posição after-third
    } else {
        associationField.style.display = 'none';
        document.getElementById('landing_page_id').removeAttribute('required');
        
        // Configurar JoinAds para outros tipos de página
        useJoinAds.disabled = false;
        document.getElementById('joinads_position').disabled = false;
        
        // Se mudou para landing, remover o valor do landing_page_id
        if (pageType === 'landing') {
            document.getElementById('landing_page_id').value = '';
        }
    }
}

// Image preview
document.getElementById('featured_image')?.addEventListener('change', function() {
    if (this.files && this.files[0]) {
        const reader = new FileReader();
        reader.onload = function(e) {
            const currentImage = document.querySelector('.current-image');
            if (currentImage) {
                const img = currentImage.querySelector('img');
                if (img) {
                    img.src = e.target.result;
                }
            } else {
                const container = document.createElement('div');
                container.className = 'current-image mb-2';
                container.innerHTML = `
                    <img src="${e.target.result}" alt="Nova imagem" class="img-fluid img-thumbnail">
                    <div class="form-text">Prévia da nova imagem</div>
                `;
                this.parentElement.insertBefore(container, this);
            }
        }.bind(this);
        reader.readAsDataURL(this.files[0]);
    }
});

// Clipboard
document.getElementById('copySlug')?.addEventListener('click', function() {
    const slugText = '<?php echo SITE_URL . '/' . $page['slug']; ?>';
    navigator.clipboard.writeText(slugText).then(function() {
        const button = document.getElementById('copySlug');
        button.innerHTML = '<i class="fas fa-check"></i>';
        button.classList.add('btn-success');
        button.classList.remove('btn-outline-secondary');
        
        setTimeout(() => {
            button.innerHTML = '<i class="fas fa-copy"></i>';
            button.classList.remove('btn-success');
            button.classList.add('btn-outline-secondary');
        }, 1500);
    });
});

// Event listeners para os tipos de página
document.getElementById('page_type').addEventListener('change', function() {
    toggleLandingPageAssociation();
});

// CORREÇÃO: Event listener para mudança de URL do WhatsApp
document.getElementById('selected_whatsapp_url').addEventListener('change', function() {
    updateWhatsAppPreview();
    console.log('URL WhatsApp selecionada alterada para:', this.value);
});

// Inicialização na carga da página
document.addEventListener('DOMContentLoaded', function() {
    console.log("DOM carregado - inicializando elementos");
    
    // Inicializar contador de meta description
    document.getElementById('meta_description').dispatchEvent(new Event('input'));
    
    // Inicializar campo de associação de landing page
    toggleLandingPageAssociation();
    
    // CORREÇÃO: Executar quando a página carrega
    preserveSelectedWhatsAppUrl();
    preserveWhatsAppPosition();
    
    // Inicializar prévia da URL do WhatsApp
    updateWhatsAppPreview();
    
    // Disparar os eventos normais
    const whatsappToggle = document.getElementById('use_whatsapp_cta');
    const adsenseToggle = document.getElementById('use_adsense');
    const joinadsToggle = document.getElementById('use_joinads');
    
    if (whatsappToggle) {
        whatsappToggle.dispatchEvent(new Event('change'));
        
        // CORREÇÃO: Executar quando o checkbox do WhatsApp é alterado
        whatsappToggle.addEventListener('change', function() {
            if (this.checked) {
                setTimeout(function() {
                    preserveSelectedWhatsAppUrl();
                    preserveWhatsAppPosition();
                }, 100);
            }
        });
    }
    
    if (adsenseToggle) adsenseToggle.dispatchEvent(new Event('change'));
    if (joinadsToggle) joinadsToggle.dispatchEvent(new Event('change'));
    
    // Verificar o tipo de página para ativar/desativar JoinAds
    const pageType = document.getElementById('page_type').value;
    if (pageType === 'step1' || pageType === 'registration') {
        if (joinadsToggle) {
            joinadsToggle.checked = true;
            joinadsToggle.disabled = true;
            enableJoinAdsFields();
            document.getElementById('joinads_position').value = 'after-third';
            document.getElementById('joinads_position').disabled = true;
        }
    }
    
    // Animações para alertas
    const alerts = document.querySelectorAll('.alert:not(.alert-info)');
    alerts.forEach(alert => {
        alert.style.opacity = '0';
        alert.style.transform = 'translateY(-20px)';
        alert.style.transition = 'opacity 0.5s ease, transform 0.5s ease';
        
        setTimeout(() => {
            alert.style.opacity = '1';
            alert.style.transform = 'translateY(0)';
        }, 100);
    });
    
    // CORREÇÃO: Log da URL atual para debug
    console.log('URL WhatsApp carregada:', document.getElementById('current_selected_whatsapp_url').value);
});
</script>

<?php require_once 'inc/footer.php'; ?>

