<?php
require_once '../includes/auth.php';

$auth = new Auth();
$auth->requireLogin();

// Get article ID from URL
$article_id = $_GET['id'] ?? '';
$plan_id = $_GET['plan_id'] ?? '';

if (empty($article_id) && empty($plan_id)) {
    header('Location: content.php');
    exit();
}

require_once '../config/database.php';
$database = new Database();
$db = $database->getConnection();

$article = null;
$plan = null;

// Get article data if editing
if (!empty($article_id)) {
    $query = "SELECT ca.*, cp.title as plan_title, b.name as brand_name 
              FROM content_articles ca 
              LEFT JOIN content_plans cp ON ca.plan_id = cp.id 
              LEFT JOIN brands b ON cp.brand_id = b.id 
              WHERE ca.id = :article_id";
    $stmt = $db->prepare($query);
    $stmt->bindParam(':article_id', $article_id);
    $stmt->execute();
    $article = $stmt->fetch(PDO::FETCH_ASSOC);
    
    if ($article) {
        $plan_id = $article['plan_id'];
    }
}

// Get plan data
if (!empty($plan_id)) {
    $query = "SELECT cp.*, b.name as brand_name 
              FROM content_plans cp 
              LEFT JOIN brands b ON cp.brand_id = b.id 
              WHERE cp.id = :plan_id";
    $stmt = $db->prepare($query);
    $stmt->bindParam(':plan_id', $plan_id);
    $stmt->execute();
    $plan = $stmt->fetch(PDO::FETCH_ASSOC);
}

if (!$plan) {
    header('Location: content.php');
    exit();
}
?>
<!DOCTYPE html>
<html lang="zh-TW">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title><?php echo $article ? '編輯文章' : '新增文章'; ?> - SEO AI 自動化系統</title>
    <link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.0.0/css/all.min.css" rel="stylesheet">
    <link href="../assets/css/admin.css" rel="stylesheet">
    <script src="https://cdn.ckeditor.com/ckeditor5/39.0.1/classic/ckeditor.js"></script>
</head>
<body>
    <div class="admin-layout">
        <!-- Sidebar -->
        <aside class="sidebar">
            <div class="sidebar-header">
                <div class="logo">
                    <i class="fas fa-robot"></i>
                    <span>SEO AI</span>
                </div>
            </div>
            
            <nav class="sidebar-nav">
                <ul>
                    <li>
                        <a href="dashboard.php">
                            <i class="fas fa-tachometer-alt"></i>
                            <span>儀表板</span>
                        </a>
                    </li>
                    <li>
                        <a href="brands.php">
                            <i class="fas fa-building"></i>
                            <span>品牌管理</span>
                        </a>
                    </li>
                    <li>
                        <a href="reports.php">
                            <i class="fas fa-chart-bar"></i>
                            <span>SEO報告</span>
                        </a>
                    </li>
                    <li>
                        <a href="seo_analysis.php">
                            <i class="fas fa-search"></i>
                            <span>SEO分析</span>
                        </a>
                    </li>
                    <li class="active">
                        <a href="content.php">
                            <i class="fas fa-edit"></i>
                            <span>內容管理</span>
                        </a>
                    </li>
                    <li>
                        <a href="analytics.php">
                            <i class="fas fa-analytics"></i>
                            <span>成效分析</span>
                        </a>
                    </li>
                    <li>
                        <a href="settings.php">
                            <i class="fas fa-cog"></i>
                            <span>系統設定</span>
                        </a>
                    </li>
                    <li>
                        <a href="help.php">
                            <i class="fas fa-question-circle"></i>
                            <span>使用說明</span>
                        </a>
                    </li>
                    <li>
                        <a href="profile.php">
                            <i class="fas fa-user"></i>
                            <span>個人資料</span>
                        </a>
                    </li>
                </ul>
            </nav>
            
            <div class="sidebar-footer">
                <a href="logout.php" class="logout-btn">
                    <i class="fas fa-sign-out-alt"></i>
                    <span>登出</span>
                </a>
            </div>
        </aside>
        
        <!-- Main Content -->
        <main class="main-content">
            <header class="header">
                <div class="header-left">
                    <h1><?php echo $article ? '編輯文章' : '新增文章'; ?></h1>
                    <p><?php echo htmlspecialchars($plan['title']); ?> - <?php echo htmlspecialchars($plan['brand_name']); ?></p>
                </div>
                <div class="header-right">
                    <button class="btn btn-secondary" onclick="goBack()">
                        <i class="fas fa-arrow-left"></i>
                        返回
                    </button>
                    <button class="btn btn-primary" onclick="saveArticle()">
                        <i class="fas fa-save"></i>
                        儲存文章
                    </button>
                </div>
            </header>
            
            <div class="article-editor">
                <form id="articleForm">
                    <input type="hidden" id="articleId" name="article_id" value="<?php echo $article['id'] ?? ''; ?>">
                    <input type="hidden" id="planId" name="plan_id" value="<?php echo $plan_id; ?>">
                    
                    <div class="editor-layout">
                        <div class="editor-main">
                            <div class="form-group">
                                <label for="articleTitle">文章標題 *</label>
                                <input type="text" id="articleTitle" name="title" class="form-control" required 
                                       value="<?php echo htmlspecialchars($article['title'] ?? ''); ?>" 
                                       placeholder="請輸入文章標題">
                            </div>
                            
                            <div class="form-group">
                                <label for="articleContent">文章內容 *</label>
                                <div id="editor"></div>
                                <textarea id="articleContent" name="content" style="display: none;"><?php echo htmlspecialchars($article['content'] ?? ''); ?></textarea>
                            </div>
                        </div>
                        
                        <div class="editor-sidebar">
                            <div class="sidebar-section">
                                <h3>發布設定</h3>
                                
                                <div class="form-group">
                                    <label for="publishDate">發布日期</label>
                                    <input type="date" id="publishDate" name="publish_date" class="form-control" 
                                           value="<?php echo $article['publish_date'] ?? ''; ?>">
                                </div>
                                
                                <div class="form-group">
                                    <label for="articleStatus">狀態</label>
                                    <select id="articleStatus" name="status" class="form-control">
                                        <option value="draft" <?php echo ($article['status'] ?? 'draft') === 'draft' ? 'selected' : ''; ?>>草稿</option>
                                        <option value="scheduled" <?php echo ($article['status'] ?? '') === 'scheduled' ? 'selected' : ''; ?>>已排程</option>
                                        <option value="published" <?php echo ($article['status'] ?? '') === 'published' ? 'selected' : ''; ?>>已發布</option>
                                    </select>
                                </div>
                            </div>
                            
                            <div class="sidebar-section">
                                <h3>SEO設定</h3>
                                
                                <div class="form-group">
                                    <label for="articleKeywords">關鍵字</label>
                                    <textarea id="articleKeywords" name="keywords" class="form-control" rows="3" 
                                              placeholder="請輸入關鍵字，用逗號分隔"><?php echo htmlspecialchars($article['keywords'] ?? ''); ?></textarea>
                                </div>
                                
                                <div class="form-group">
                                    <label for="metaDescription">Meta描述</label>
                                    <textarea id="metaDescription" name="meta_description" class="form-control" rows="3" 
                                              placeholder="請輸入Meta描述（建議150字以內）"></textarea>
                                </div>
                            </div>
                            
                            <div class="sidebar-section">
                                <h3>AI輔助</h3>
                                
                                <button type="button" class="btn btn-secondary btn-block" onclick="generateTitle()">
                                    <i class="fas fa-magic"></i>
                                    生成標題
                                </button>
                                
                                <button type="button" class="btn btn-secondary btn-block" onclick="generateContent()">
                                    <i class="fas fa-robot"></i>
                                    生成內容
                                </button>
                                
                                <button type="button" class="btn btn-secondary btn-block" onclick="optimizeSEO()">
                                    <i class="fas fa-search"></i>
                                    SEO優化
                                </button>
                            </div>
                            
                            <div class="sidebar-section">
                                <h3>文章統計</h3>
                                <div class="stats">
                                    <div class="stat-item">
                                        <span class="stat-label">字數:</span>
                                        <span class="stat-value" id="wordCount">0</span>
                                    </div>
                                    <div class="stat-item">
                                        <span class="stat-label">段落:</span>
                                        <span class="stat-value" id="paragraphCount">0</span>
                                    </div>
                                    <div class="stat-item">
                                        <span class="stat-label">關鍵字密度:</span>
                                        <span class="stat-value" id="keywordDensity">0%</span>
                                    </div>
                                </div>
                            </div>
                        </div>
                    </div>
                </form>
            </div>
        </main>
    </div>
    
    <style>
        .article-editor {
            padding: 30px;
        }
        
        .editor-layout {
            display: grid;
            grid-template-columns: 1fr 350px;
            gap: 30px;
        }
        
        .editor-main {
            background: white;
            border-radius: 15px;
            padding: 30px;
            box-shadow: 0 5px 20px rgba(0, 0, 0, 0.08);
        }
        
        .editor-sidebar {
            display: flex;
            flex-direction: column;
            gap: 20px;
        }
        
        .sidebar-section {
            background: white;
            border-radius: 15px;
            padding: 20px;
            box-shadow: 0 5px 20px rgba(0, 0, 0, 0.08);
        }
        
        .sidebar-section h3 {
            color: #333;
            margin-bottom: 15px;
            font-size: 1.1rem;
            border-bottom: 2px solid #667eea;
            padding-bottom: 8px;
        }
        
        .form-group {
            margin-bottom: 20px;
        }
        
        .form-group label {
            display: block;
            margin-bottom: 8px;
            color: #333;
            font-weight: 500;
        }
        
        .form-control {
            width: 100%;
            padding: 12px;
            border: 2px solid #e0e0e0;
            border-radius: 8px;
            font-size: 1rem;
            transition: border-color 0.3s ease;
        }
        
        .form-control:focus {
            outline: none;
            border-color: #667eea;
        }
        
        .btn {
            padding: 12px 25px;
            border: none;
            border-radius: 8px;
            font-size: 1rem;
            font-weight: 600;
            cursor: pointer;
            transition: all 0.3s ease;
            text-decoration: none;
            display: inline-flex;
            align-items: center;
            gap: 8px;
        }
        
        .btn-primary {
            background: linear-gradient(135deg, #667eea, #764ba2);
            color: white;
        }
        
        .btn-primary:hover {
            transform: translateY(-2px);
            box-shadow: 0 5px 15px rgba(102, 126, 234, 0.4);
        }
        
        .btn-secondary {
            background: #6c757d;
            color: white;
        }
        
        .btn-secondary:hover {
            background: #5a6268;
        }
        
        .btn-block {
            width: 100%;
            justify-content: center;
            margin-bottom: 10px;
        }
        
        .stats {
            display: flex;
            flex-direction: column;
            gap: 10px;
        }
        
        .stat-item {
            display: flex;
            justify-content: space-between;
            align-items: center;
            padding: 8px 0;
            border-bottom: 1px solid #f0f0f0;
        }
        
        .stat-label {
            color: #666;
            font-size: 0.9rem;
        }
        
        .stat-value {
            color: #333;
            font-weight: 600;
        }
        
        .ck-editor__editable {
            min-height: 400px;
        }
        
        .notification {
            position: fixed;
            top: 20px;
            right: 20px;
            background: white;
            border-radius: 10px;
            box-shadow: 0 5px 20px rgba(0, 0, 0, 0.1);
            padding: 15px 20px;
            z-index: 2000;
            transform: translateX(400px);
            transition: transform 0.3s ease;
        }
        
        .notification.show {
            transform: translateX(0);
        }
        
        .notification-success {
            border-left: 4px solid #28a745;
        }
        
        .notification-error {
            border-left: 4px solid #dc3545;
        }
        
        .notification-info {
            border-left: 4px solid #17a2b8;
        }
        
        .notification-content {
            display: flex;
            align-items: center;
            gap: 10px;
        }
        
        .notification-content i {
            font-size: 1.2rem;
        }
        
        .notification-success .notification-content i {
            color: #28a745;
        }
        
        .notification-error .notification-content i {
            color: #dc3545;
        }
        
        .notification-info .notification-content i {
            color: #17a2b8;
        }
        
        @media (max-width: 768px) {
            .editor-layout {
                grid-template-columns: 1fr;
            }
        }
    </style>
    
    <script>
        let editor;
        let currentArticleId = '<?php echo $article['id'] ?? ''; ?>';
        
        document.addEventListener('DOMContentLoaded', function() {
            // Initialize CKEditor
            ClassicEditor
                .create(document.querySelector('#editor'), {
                    toolbar: {
                        items: [
                            'heading', '|',
                            'bold', 'italic', 'underline', '|',
                            'bulletedList', 'numberedList', '|',
                            'outdent', 'indent', '|',
                            'link', 'blockQuote', '|',
                            'insertTable', '|',
                            'undo', 'redo'
                        ]
                    },
                    language: 'zh',
                    table: {
                        contentToolbar: [
                            'tableColumn',
                            'tableRow',
                            'mergeTableCells'
                        ]
                    }
                })
                .then(newEditor => {
                    editor = newEditor;
                    
                    // Update hidden textarea when editor content changes
                    editor.model.document.on('change:data', () => {
                        document.getElementById('articleContent').value = editor.getData();
                        updateStats();
                    });
                    
                    // Initial stats update
                    updateStats();
                })
                .catch(error => {
                    console.error('CKEditor initialization failed:', error);
                });
        });
        
        function goBack() {
            window.history.back();
        }
        
        async function saveArticle() {
            const form = document.getElementById('articleForm');
            const formData = new FormData(form);
            const data = Object.fromEntries(formData);
            
            // Get content from CKEditor
            if (editor) {
                data.content = editor.getData();
            }
            
            // Validate required fields
            if (!data.title || !data.content) {
                showNotification('請填寫標題和內容', 'error');
                return;
            }
            
            const action = currentArticleId ? 'update_article' : 'create_article';
            data.action = action;
            
            const saveBtn = document.querySelector('button[onclick="saveArticle()"]');
            const originalText = saveBtn.innerHTML;
            saveBtn.innerHTML = '<i class="fas fa-spinner fa-spin"></i> 儲存中...';
            saveBtn.disabled = true;
            
            try {
                const response = await fetch('/api/content.php', {
                    method: 'POST',
                    headers: {
                        'Content-Type': 'application/json',
                    },
                    credentials: 'same-origin',
                    body: JSON.stringify(data)
                });
                
                const result = await response.json();
                
                if (result.success) {
                    showNotification('文章儲存成功！', 'success');
                    
                    // If creating new article, redirect to edit mode
                    if (!currentArticleId && result.data.article_id) {
                        currentArticleId = result.data.article_id;
                        document.getElementById('articleId').value = currentArticleId;
                        window.history.replaceState({}, '', `?id=${currentArticleId}`);
                    }
                } else {
                    showNotification('儲存失敗: ' + result.message, 'error');
                }
            } catch (error) {
                console.error('Error:', error);
                showNotification('網路錯誤，請稍後再試', 'error');
            } finally {
                saveBtn.innerHTML = originalText;
                saveBtn.disabled = false;
            }
        }
        
        function updateStats() {
            const content = editor ? editor.getData() : '';
            const textContent = content.replace(/<[^>]*>/g, ''); // Remove HTML tags
            
            // Word count
            const wordCount = textContent.length;
            document.getElementById('wordCount').textContent = wordCount;
            
            // Paragraph count
            const paragraphCount = content.split('</p>').length - 1;
            document.getElementById('paragraphCount').textContent = paragraphCount;
            
            // Keyword density (simplified)
            const keywords = document.getElementById('articleKeywords').value.split(',').map(k => k.trim()).filter(k => k);
            if (keywords.length > 0) {
                const keywordCount = keywords.reduce((count, keyword) => {
                    const regex = new RegExp(keyword, 'gi');
                    return count + (textContent.match(regex) || []).length;
                }, 0);
                const density = wordCount > 0 ? ((keywordCount / wordCount) * 100).toFixed(1) : 0;
                document.getElementById('keywordDensity').textContent = density + '%';
            } else {
                document.getElementById('keywordDensity').textContent = '0%';
            }
        }
        
        function generateTitle() {
            showTitleGeneratorModal();
        }
        
        function generateContent() {
            showContentGeneratorModal();
            showNotification('AI內容生成功能開發中...', 'info');
        }
        
        function optimizeSEO() {
            showSEOOptimizerModal();
            // SEO優化功能已實現
        }
        
        function showNotification(message, type = 'success') {
            const notification = document.createElement('div');
            notification.className = `notification notification-${type}`;
            notification.innerHTML = `
                <div class="notification-content">
                    <i class="fas fa-${type === 'success' ? 'check-circle' : type === 'error' ? 'exclamation-circle' : 'info-circle'}"></i>
                    <span>${message}</span>
                </div>
            `;
            
            document.body.appendChild(notification);
            
            setTimeout(() => {
                notification.classList.add('show');
            }, 100);
            
            setTimeout(() => {
                notification.classList.remove('show');
                setTimeout(() => {
                    if (document.body.contains(notification)) {
                        document.body.removeChild(notification);
                    }
                }, 300);
            }, 3000);
        }
        
        // Update stats when keywords change
        document.getElementById('articleKeywords').addEventListener('input', updateStats);
    </script>
</body>
</html>
    
    <!-- AI標題生成器模態框 -->
    <div id="titleGeneratorModal" class="modal">
        <div class="modal-content">
            <div class="modal-header">
                <h2><i class="fas fa-magic"></i> AI標題生成器</h2>
                <span class="close" onclick="closeTitleGeneratorModal()">&times;</span>
            </div>
            <div class="modal-body">
                <div class="generator-settings">
                    <div class="form-group">
                        <label for="contentType">內容類型</label>
                        <select id="contentType" class="form-control">
                            <option value="blog">部落格文章</option>
                            <option value="news">新聞報導</option>
                            <option value="tutorial">教學指南</option>
                            <option value="review">產品評測</option>
                            <option value="case-study">案例研究</option>
                        </select>
                    </div>
                    
                    <div class="form-group">
                        <label for="tone">語調風格</label>
                        <select id="tone" class="form-control">
                            <option value="professional">專業</option>
                            <option value="friendly">友善</option>
                            <option value="authoritative">權威</option>
                            <option value="casual">輕鬆</option>
                            <option value="urgent">緊急</option>
                        </select>
                    </div>
                    
                    <div class="form-group">
                        <label for="titleCount">生成數量</label>
                        <select id="titleCount" class="form-control">
                            <option value="3">3個標題</option>
                            <option value="5" selected>5個標題</option>
                            <option value="8">8個標題</option>
                        </select>
                    </div>
                    
                    <div class="form-group">
                        <label for="customKeywords">自訂關鍵字</label>
                        <input type="text" id="customKeywords" class="form-control" 
                               placeholder="輸入額外關鍵字（可選）">
                    </div>
                </div>
                
                <div class="generator-actions">
                    <button class="btn btn-primary" onclick="generateAITitles()">
                        <i class="fas fa-robot"></i>
                        生成標題
                    </button>
                    <button class="btn btn-secondary" onclick="closeTitleGeneratorModal()">
                        取消
                    </button>
                </div>
                
                <div id="titleResults" class="title-results" style="display: none;">
                    <h3>生成的標題</h3>
                    <div id="generatedTitles"></div>
                </div>
            </div>
        </div>
    </div>
    
    <!-- 標題分析模態框 -->
    <div id="titleAnalysisModal" class="modal">
        <div class="modal-content">
            <div class="modal-header">
                <h2><i class="fas fa-chart-line"></i> 標題分析</h2>
                <span class="close" onclick="closeTitleAnalysisModal()">&times;</span>
            </div>
            <div class="modal-body">
                <div id="titleAnalysisContent"></div>
            </div>
        </div>
    </div>
        
        .modal {
            display: none;
            position: fixed;
            z-index: 2000;
            left: 0;
            top: 0;
            width: 100%;
            height: 100%;
            background-color: rgba(0, 0, 0, 0.5);
        }
        
        .modal-content {
            background-color: white;
            margin: 5% auto;
            padding: 0;
            border-radius: 15px;
            width: 90%;
            max-width: 800px;
            max-height: 90vh;
            overflow-y: auto;
            box-shadow: 0 10px 30px rgba(0, 0, 0, 0.3);
        }
        
        .modal-header {
            background: linear-gradient(135deg, #667eea, #764ba2);
            color: white;
            padding: 20px 30px;
            border-radius: 15px 15px 0 0;
            display: flex;
            justify-content: space-between;
            align-items: center;
        }
        
        .modal-header h2 {
            margin: 0;
            font-size: 1.5rem;
        }
        
        .modal-header .close {
            color: white;
            font-size: 28px;
            font-weight: bold;
            cursor: pointer;
            transition: opacity 0.3s ease;
        }
        
        .modal-header .close:hover {
            opacity: 0.7;
        }
        
        .modal-body {
            padding: 30px;
        }
        
        .generator-settings {
            display: grid;
            grid-template-columns: 1fr 1fr;
            gap: 20px;
            margin-bottom: 30px;
        }
        
        .generator-actions {
            display: flex;
            gap: 15px;
            justify-content: center;
            margin-bottom: 30px;
        }
        
        .title-results {
            border-top: 2px solid #f0f0f0;
            padding-top: 20px;
        }
        
        .title-results h3 {
            color: #333;
            margin-bottom: 20px;
            text-align: center;
        }
        
        .title-item {
            background: #f8f9fa;
            border: 2px solid #e9ecef;
            border-radius: 10px;
            padding: 15px;
            margin-bottom: 15px;
            transition: all 0.3s ease;
            cursor: pointer;
        }
        
        .title-item:hover {
            border-color: #667eea;
            background: #f0f2ff;
            transform: translateY(-2px);
        }
        
        .title-item.selected {
            border-color: #667eea;
            background: #e8f0ff;
        }
        
        .title-text {
            font-size: 1.1rem;
            font-weight: 600;
            color: #333;
            margin-bottom: 8px;
        }
        
        .title-meta {
            display: flex;
            justify-content: space-between;
            align-items: center;
            font-size: 0.9rem;
            color: #666;
        }
        
        .title-type {
            background: #667eea;
            color: white;
            padding: 4px 8px;
            border-radius: 4px;
            font-size: 0.8rem;
        }
        
        .title-actions {
            display: flex;
            gap: 10px;
        }
        
        .title-actions button {
            padding: 6px 12px;
            border: none;
            border-radius: 6px;
            font-size: 0.8rem;
            cursor: pointer;
            transition: all 0.3s ease;
        }
        
        .btn-use {
            background: #28a745;
            color: white;
        }
        
        .btn-use:hover {
            background: #218838;
        }
        
        .btn-analyze {
            background: #17a2b8;
            color: white;
        }
        
        .btn-analyze:hover {
            background: #138496;
        }
        
        .analysis-result {
            background: #f8f9fa;
            border-radius: 10px;
            padding: 20px;
            margin-top: 20px;
        }
        
        .score-grid {
            display: grid;
            grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
            gap: 15px;
            margin-bottom: 20px;
        }
        
        .score-item {
            text-align: center;
            padding: 15px;
            background: white;
            border-radius: 8px;
            box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);
        }
        
        .score-label {
            font-size: 0.9rem;
            color: #666;
            margin-bottom: 5px;
        }
        
        .score-value {
            font-size: 1.5rem;
            font-weight: bold;
            color: #333;
        }
        
        .score-excellent { color: #28a745; }
        .score-good { color: #17a2b8; }
        .score-average { color: #ffc107; }
        .score-poor { color: #dc3545; }
        
        .suggestions {
            background: white;
            border-radius: 8px;
            padding: 15px;
            margin-top: 15px;
        }
        
        .suggestions h4 {
            color: #333;
            margin-bottom: 10px;
        }
        
        .suggestions ul {
            margin: 0;
            padding-left: 20px;
        }
        
        .suggestions li {
            margin-bottom: 5px;
            color: #666;
        }
        
        .loading {
            text-align: center;
            padding: 40px;
            color: #666;
        }
        
        .loading i {
            font-size: 2rem;
            margin-bottom: 15px;
            animation: spin 1s linear infinite;
        }
        
        @keyframes spin {
            0% { transform: rotate(0deg); }
            100% { transform: rotate(360deg); }
        }
        
        @media (max-width: 768px) {
            .generator-settings {
                grid-template-columns: 1fr;
            }
            
            .modal-content {
                width: 95%;
                margin: 10% auto;
            }
            
            .generator-actions {
                flex-direction: column;
            }
        }
        
        function showTitleGeneratorModal() {
            document.getElementById('titleGeneratorModal').style.display = 'block';
        }
        
        function closeTitleGeneratorModal() {
            document.getElementById('titleGeneratorModal').style.display = 'none';
            document.getElementById('titleResults').style.display = 'none';
        }
        
        function closeTitleAnalysisModal() {
            document.getElementById('titleAnalysisModal').style.display = 'none';
        }
        
        async function generateAITitles() {
            const contentType = document.getElementById('contentType').value;
            const tone = document.getElementById('tone').value;
            const titleCount = document.getElementById('titleCount').value;
            const customKeywords = document.getElementById('customKeywords').value;
            const planId = document.getElementById('planId').value;
            
            const generateBtn = document.querySelector('button[onclick="generateAITitles()"]');
            const originalText = generateBtn.innerHTML;
            generateBtn.innerHTML = '<i class="fas fa-spinner fa-spin"></i> 生成中...';
            generateBtn.disabled = true;
            
            try {
                const response = await fetch('/api/ai_title_generator.php', {
                    method: 'POST',
                    headers: {
                        'Content-Type': 'application/json',
                    },
                    credentials: 'same-origin',
                    body: JSON.stringify({
                        action: 'generate_titles',
                        plan_id: planId,
                        content_type: contentType,
                        tone: tone,
                        count: parseInt(titleCount),
                        keywords: customKeywords
                    })
                });
                
                const result = await response.json();
                
                if (result.success) {
                    displayGeneratedTitles(result.data.titles);
                    showNotification('標題生成成功！', 'success');
                } else {
                    showNotification('生成失敗: ' + result.message, 'error');
                }
            } catch (error) {
                console.error('Error:', error);
                showNotification('網路錯誤，請稍後再試', 'error');
            } finally {
                generateBtn.innerHTML = originalText;
                generateBtn.disabled = false;
            }
        }
        
        function displayGeneratedTitles(titles) {
            const resultsDiv = document.getElementById('titleResults');
            const titlesDiv = document.getElementById('generatedTitles');
            
            titlesDiv.innerHTML = '';
            
            titles.forEach((titleData, index) => {
                const titleItem = document.createElement('div');
                titleItem.className = 'title-item';
                titleItem.innerHTML = `
                    <div class="title-text">${titleData.title}</div>
                    <div class="title-meta">
                        <span class="title-type">${titleData.type}</span>
                        <div class="title-actions">
                            <button class="btn-use" onclick="useTitle('${titleData.title.replace(/'/g, "\\'")}')">
                                <i class="fas fa-check"></i> 使用
                            </button>
                            <button class="btn-analyze" onclick="analyzeTitle('${titleData.title.replace(/'/g, "\\'")}')">
                                <i class="fas fa-chart-line"></i> 分析
                            </button>
                        </div>
                    </div>
                    <div class="title-reason" style="font-size: 0.8rem; color: #888; margin-top: 5px;">
                        ${titleData.reason}
                    </div>
                `;
                
                titlesDiv.appendChild(titleItem);
            });
            
            resultsDiv.style.display = 'block';
        }
        
        function useTitle(title) {
            document.getElementById('articleTitle').value = title;
            closeTitleGeneratorModal();
            showNotification('標題已套用！', 'success');
        }
        
        async function analyzeTitle(title) {
            const keywords = document.getElementById('articleKeywords').value;
            
            const analyzeBtn = event.target;
            const originalText = analyzeBtn.innerHTML;
            analyzeBtn.innerHTML = '<i class="fas fa-spinner fa-spin"></i> 分析中...';
            analyzeBtn.disabled = true;
            
            try {
                const response = await fetch('/api/ai_title_generator.php', {
                    method: 'POST',
                    headers: {
                        'Content-Type': 'application/json',
                    },
                    credentials: 'same-origin',
                    body: JSON.stringify({
                        action: 'analyze_title',
                        title: title,
                        keywords: keywords
                    })
                });
                
                const result = await response.json();
                
                if (result.success) {
                    displayTitleAnalysis(result.data);
                    showNotification('標題分析完成！', 'success');
                } else {
                    showNotification('分析失敗: ' + result.message, 'error');
                }
            } catch (error) {
                console.error('Error:', error);
                showNotification('網路錯誤，請稍後再試', 'error');
            } finally {
                analyzeBtn.innerHTML = originalText;
                analyzeBtn.disabled = false;
            }
        }
        
        function displayTitleAnalysis(analysis) {
            const modal = document.getElementById('titleAnalysisModal');
            const content = document.getElementById('titleAnalysisContent');
            
            const scoreClass = (score) => {
                if (score >= 8) return 'score-excellent';
                if (score >= 6) return 'score-good';
                if (score >= 4) return 'score-average';
                return 'score-poor';
            };
            
            content.innerHTML = `
                <div class="analysis-result">
                    <h3>標題分析結果</h3>
                    <div class="score-grid">
                        <div class="score-item">
                            <div class="score-label">SEO優化</div>
                            <div class="score-value ${scoreClass(analysis.seo_score)}">${analysis.seo_score}/10</div>
                        </div>
                        <div class="score-item">
                            <div class="score-label">吸引力</div>
                            <div class="score-value ${scoreClass(analysis.attractiveness_score)}">${analysis.attractiveness_score}/10</div>
                        </div>
                        <div class="score-item">
                            <div class="score-label">長度適宜</div>
                            <div class="score-value ${scoreClass(analysis.length_score)}">${analysis.length_score}/10</div>
                        </div>
                        <div class="score-item">
                            <div class="score-label">情感觸發</div>
                            <div class="score-value ${scoreClass(analysis.emotion_score)}">${analysis.emotion_score}/10</div>
                        </div>
                        <div class="score-item">
                            <div class="score-label">總體評分</div>
                            <div class="score-value ${scoreClass(analysis.overall_score)}">${analysis.overall_score}/10</div>
                        </div>
                    </div>
                    
                    <div class="analysis-text">
                        <h4>詳細分析</h4>
                        <p>${analysis.analysis}</p>
                    </div>
                    
                    <div class="suggestions">
                        <h4>改進建議</h4>
                        <ul>
                            ${analysis.suggestions.map(suggestion => `<li>${suggestion}</li>`).join('')}
                        </ul>
                    </div>
                </div>
            `;
            
            modal.style.display = 'block';
        }
        
        // Close modals when clicking outside
        window.onclick = function(event) {
            const titleModal = document.getElementById('titleGeneratorModal');
            const analysisModal = document.getElementById('titleAnalysisModal');
            
            if (event.target === titleModal) {
                closeTitleGeneratorModal();
            }
            if (event.target === analysisModal) {
                closeTitleAnalysisModal();
            }
        }
    
    <!-- AI內容生成器模態框 -->
    <div id="contentGeneratorModal" class="modal">
        <div class="modal-content">
            <div class="modal-header">
                <h2><i class="fas fa-robot"></i> AI內容生成器</h2>
                <span class="close" onclick="closeContentGeneratorModal()">&times;</span>
            </div>
            <div class="modal-body">
                <div class="generator-tabs">
                    <button class="tab-btn active" onclick="switchTab('full-content')">完整內容</button>
                    <button class="tab-btn" onclick="switchTab('outline')">大綱生成</button>
                    <button class="tab-btn" onclick="switchTab('section')">章節擴展</button>
                    <button class="tab-btn" onclick="switchTab('intro')">引言生成</button>
                    <button class="tab-btn" onclick="switchTab('conclusion')">結論生成</button>
                </div>
                
                <!-- 完整內容生成 -->
                <div id="full-content-tab" class="tab-content active">
                    <div class="generator-settings">
                        <div class="form-group">
                            <label for="contentLength">內容長度</label>
                            <select id="contentLength" class="form-control">
                                <option value="short">短篇 (500-800字)</option>
                                <option value="medium" selected>中篇 (1000-1500字)</option>
                                <option value="long">長篇 (2000-3000字)</option>
                            </select>
                        </div>
                        
                        <div class="form-group">
                            <label for="contentTone">語調風格</label>
                            <select id="contentTone" class="form-control">
                                <option value="professional">專業</option>
                                <option value="friendly">友善</option>
                                <option value="authoritative">權威</option>
                                <option value="casual">輕鬆</option>
                            </select>
                        </div>
                        
                        <div class="form-group">
                            <label for="targetAudience">目標受眾</label>
                            <input type="text" id="targetAudience" class="form-control" 
                                   placeholder="例如：企業主、學生、專業人士">
                        </div>
                        
                        <div class="form-group">
                            <label for="contentKeywords">關鍵字</label>
                            <textarea id="contentKeywords" class="form-control" rows="2" 
                                      placeholder="輸入關鍵字，用逗號分隔"></textarea>
                        </div>
                    </div>
                    
                    <div class="generator-actions">
                        <button class="btn btn-primary" onclick="generateFullContent()">
                            <i class="fas fa-magic"></i>
                            生成完整內容
                        </button>
                        <button class="btn btn-secondary" onclick="closeContentGeneratorModal()">
                            取消
                        </button>
                    </div>
                </div>
                
                <!-- 大綱生成 -->
                <div id="outline-tab" class="tab-content">
                    <div class="generator-settings">
                        <div class="form-group">
                            <label for="outlineLength">大綱長度</label>
                            <select id="outlineLength" class="form-control">
                                <option value="short">簡短 (3-4章節)</option>
                                <option value="medium" selected>中等 (5-6章節)</option>
                                <option value="long">詳細 (7-8章節)</option>
                            </select>
                        </div>
                        
                        <div class="form-group">
                            <label for="outlineKeywords">關鍵字</label>
                            <textarea id="outlineKeywords" class="form-control" rows="2" 
                                      placeholder="輸入關鍵字，用逗號分隔"></textarea>
                        </div>
                    </div>
                    
                    <div class="generator-actions">
                        <button class="btn btn-primary" onclick="generateOutline()">
                            <i class="fas fa-list"></i>
                            生成大綱
                        </button>
                        <button class="btn btn-secondary" onclick="closeContentGeneratorModal()">
                            取消
                        </button>
                    </div>
                </div>
                
                <!-- 章節擴展 -->
                <div id="section-tab" class="tab-content">
                    <div class="generator-settings">
                        <div class="form-group">
                            <label for="sectionTitle">章節標題</label>
                            <input type="text" id="sectionTitle" class="form-control" 
                                   placeholder="輸入要擴展的章節標題">
                        </div>
                        
                        <div class="form-group">
                            <label for="sectionContent">現有內容 (可選)</label>
                            <textarea id="sectionContent" class="form-control" rows="3" 
                                      placeholder="輸入現有的章節內容"></textarea>
                        </div>
                        
                        <div class="form-group">
                            <label for="sectionLength">擴展長度</label>
                            <select id="sectionLength" class="form-control">
                                <option value="short">簡短</option>
                                <option value="medium" selected>中等</option>
                                <option value="long">詳細</option>
                            </select>
                        </div>
                    </div>
                    
                    <div class="generator-actions">
                        <button class="btn btn-primary" onclick="expandSection()">
                            <i class="fas fa-expand"></i>
                            擴展章節
                        </button>
                        <button class="btn btn-secondary" onclick="closeContentGeneratorModal()">
                            取消
                        </button>
                    </div>
                </div>
                
                <!-- 引言生成 -->
                <div id="intro-tab" class="tab-content">
                    <div class="generator-settings">
                        <div class="form-group">
                            <label for="hookType">開頭類型</label>
                            <select id="hookType" class="form-control">
                                <option value="question">問句</option>
                                <option value="statistic">數據</option>
                                <option value="story">故事</option>
                                <option value="quote">引言</option>
                                <option value="problem">問題</option>
                            </select>
                        </div>
                        
                        <div class="form-group">
                            <label for="introKeywords">關鍵字</label>
                            <textarea id="introKeywords" class="form-control" rows="2" 
                                      placeholder="輸入關鍵字，用逗號分隔"></textarea>
                        </div>
                    </div>
                    
                    <div class="generator-actions">
                        <button class="btn btn-primary" onclick="generateIntro()">
                            <i class="fas fa-play"></i>
                            生成引言
                        </button>
                        <button class="btn btn-secondary" onclick="closeContentGeneratorModal()">
                            取消
                        </button>
                    </div>
                </div>
                
                <!-- 結論生成 -->
                <div id="conclusion-tab" class="tab-content">
                    <div class="generator-settings">
                        <div class="form-group">
                            <label for="contentSummary">內容摘要</label>
                            <textarea id="contentSummary" class="form-control" rows="3" 
                                      placeholder="輸入文章主要內容摘要"></textarea>
                        </div>
                        
                        <div class="form-group">
                            <label for="callToAction">行動呼籲</label>
                            <input type="text" id="callToAction" class="form-control" 
                                   placeholder="例如：立即開始、了解更多、聯繫我們">
                        </div>
                        
                        <div class="form-group">
                            <label for="conclusionKeywords">關鍵字</label>
                            <textarea id="conclusionKeywords" class="form-control" rows="2" 
                                      placeholder="輸入關鍵字，用逗號分隔"></textarea>
                        </div>
                    </div>
                    
                    <div class="generator-actions">
                        <button class="btn btn-primary" onclick="generateConclusion()">
                            <i class="fas fa-flag-checkered"></i>
                            生成結論
                        </button>
                        <button class="btn btn-secondary" onclick="closeContentGeneratorModal()">
                            取消
                        </button>
                    </div>
                </div>
                
                <div id="contentResults" class="content-results" style="display: none;">
                    <h3>生成結果</h3>
                    <div id="generatedContent"></div>
                </div>
            </div>
        </div>
    </div>

    <!-- SEO優化器模態框 -->
    <div id="seoOptimizerModal" class="modal">
        <div class="modal-content">
            <div class="modal-header">
                <h2><i class="fas fa-search"></i> SEO優化器</h2>
                <span class="close" onclick="closeSEOOptimizerModal()">&times;</span>
            </div>
            <div class="modal-body">
                <div class="seo-tabs">
                    <button class="tab-btn active" onclick="switchSEOTab('analyze')">內容分析</button>
                    <button class="tab-btn" onclick="switchSEOTab('optimize')">內容優化</button>
                    <button class="tab-btn" onclick="switchSEOTab('meta')">Meta標籤</button>
                    <button class="tab-btn" onclick="switchSEOTab('keywords')">關鍵字分析</button>
                    <button class="tab-btn" onclick="switchSEOTab('technical')">技術SEO</button>
                    <button class="tab-btn" onclick="switchSEOTab('suggestions')">改進建議</button>
                </div>
                
                <!-- 內容分析 -->
                <div id="analyze-tab" class="tab-content active">
                    <div class="seo-settings">
                        <div class="form-group">
                            <label for="seoKeywords">目標關鍵字</label>
                            <input type="text" id="seoKeywords" class="form-control" 
                                   placeholder="請輸入目標關鍵字，用逗號分隔">
                        </div>
                        
                        <div class="form-group">
                            <label for="seoUrl">目標網址</label>
                            <input type="url" id="seoUrl" class="form-control" 
                                   placeholder="請輸入目標網址">
                        </div>
                    </div>
                    
                    <div class="seo-actions">
                        <button class="btn btn-primary" onclick="analyzeContentSEO()">
                            <i class="fas fa-chart-line"></i>
                            分析內容
                        </button>
                        <button class="btn btn-secondary" onclick="closeSEOOptimizerModal()">
                            取消
                        </button>
                    </div>
                </div>
                
                <!-- 內容優化 -->
                <div id="optimize-tab" class="tab-content">
                    <div class="seo-settings">
                        <div class="form-group">
                            <label for="optimizeKeywords">目標關鍵字</label>
                            <input type="text" id="optimizeKeywords" class="form-control" 
                                   placeholder="請輸入目標關鍵字，用逗號分隔">
                        </div>
                        
                        <div class="form-group">
                            <label for="targetAudience">目標受眾</label>
                            <input type="text" id="targetAudience" class="form-control" 
                                   placeholder="例如：企業主、學生、專業人士">
                        </div>
                        
                        <div class="form-group">
                            <label for="optimizationGoals">優化目標</label>
                            <div class="checkbox-group">
                                <label><input type="checkbox" value="keyword_density"> 關鍵字密度</label>
                                <label><input type="checkbox" value="readability"> 可讀性</label>
                                <label><input type="checkbox" value="structure"> 內容結構</label>
                                <label><input type="checkbox" value="engagement"> 用戶參與度</label>
                            </div>
                        </div>
                    </div>
                    
                    <div class="seo-actions">
                        <button class="btn btn-primary" onclick="optimizeContentSEO()">
                            <i class="fas fa-magic"></i>
                            優化內容
                        </button>
                        <button class="btn btn-secondary" onclick="closeSEOOptimizerModal()">
                            取消
                        </button>
                    </div>
                </div>
                
                <!-- Meta標籤 -->
                <div id="meta-tab" class="tab-content">
                    <div class="seo-settings">
                        <div class="form-group">
                            <label for="metaKeywords">關鍵字</label>
                            <input type="text" id="metaKeywords" class="form-control" 
                                   placeholder="請輸入關鍵字，用逗號分隔">
                        </div>
                        
                        <div class="form-group">
                            <label for="brandName">品牌名稱</label>
                            <input type="text" id="brandName" class="form-control" 
                                   placeholder="請輸入品牌名稱">
                        </div>
                    </div>
                    
                    <div class="seo-actions">
                        <button class="btn btn-primary" onclick="generateMetaTags()">
                            <i class="fas fa-tags"></i>
                            生成Meta標籤
                        </button>
                        <button class="btn btn-secondary" onclick="closeSEOOptimizerModal()">
                            取消
                        </button>
                    </div>
                </div>
                
                <!-- 關鍵字分析 -->
                <div id="keywords-tab" class="tab-content">
                    <div class="seo-settings">
                        <div class="form-group">
                            <label for="keywordTargetKeywords">目標關鍵字</label>
                            <input type="text" id="keywordTargetKeywords" class="form-control" 
                                   placeholder="請輸入目標關鍵字，用逗號分隔">
                        </div>
                        
                        <div class="form-group">
                            <label for="competitorUrls">競爭對手網址</label>
                            <textarea id="competitorUrls" class="form-control" rows="3" 
                                      placeholder="請輸入競爭對手網址，每行一個"></textarea>
                        </div>
                    </div>
                    
                    <div class="seo-actions">
                        <button class="btn btn-primary" onclick="analyzeKeywords()">
                            <i class="fas fa-key"></i>
                            分析關鍵字
                        </button>
                        <button class="btn btn-secondary" onclick="closeSEOOptimizerModal()">
                            取消
                        </button>
                    </div>
                </div>
                
                <!-- 技術SEO -->
                <div id="technical-tab" class="tab-content">
                    <div class="seo-settings">
                        <div class="form-group">
                            <label for="technicalUrl">網址</label>
                            <input type="url" id="technicalUrl" class="form-control" 
                                   placeholder="請輸入要檢查的網址">
                        </div>
                    </div>
                    
                    <div class="seo-actions">
                        <button class="btn btn-primary" onclick="checkTechnicalSEO()">
                            <i class="fas fa-cogs"></i>
                            檢查技術SEO
                        </button>
                        <button class="btn btn-secondary" onclick="closeSEOOptimizerModal()">
                            取消
                        </button>
                    </div>
                </div>
                
                <!-- 改進建議 -->
                <div id="suggestions-tab" class="tab-content">
                    <div class="seo-settings">
                        <div class="form-group">
                            <label for="suggestKeywords">關鍵字</label>
                            <input type="text" id="suggestKeywords" class="form-control" 
                                   placeholder="請輸入關鍵字，用逗號分隔">
                        </div>
                        
                        <div class="form-row">
                            <div class="form-group">
                                <label for="currentRanking">目前排名</label>
                                <input type="number" id="currentRanking" class="form-control" 
                                       min="0" max="100" placeholder="0表示未排名">
                            </div>
                            
                            <div class="form-group">
                                <label for="targetRanking">目標排名</label>
                                <input type="number" id="targetRanking" class="form-control" 
                                       min="1" max="100" value="1">
                            </div>
                        </div>
                    </div>
                    
                    <div class="seo-actions">
                        <button class="btn btn-primary" onclick="suggestImprovements()">
                            <i class="fas fa-lightbulb"></i>
                            獲取改進建議
                        </button>
                        <button class="btn btn-secondary" onclick="closeSEOOptimizerModal()">
                            取消
                        </button>
                    </div>
                </div>
                
                <div id="seoResults" class="seo-results" style="display: none;">
                    <h3>分析結果</h3>
                    <div id="seoAnalysisContent"></div>
                </div>
            </div>
        </div>
    </div>
        
        .generator-tabs {
            display: flex;
            border-bottom: 2px solid #e0e0e0;
            margin-bottom: 20px;
        }
        
        .tab-btn {
            background: none;
            border: none;
            padding: 12px 20px;
            cursor: pointer;
            font-size: 1rem;
            color: #666;
            border-bottom: 3px solid transparent;
            transition: all 0.3s ease;
        }
        
        .tab-btn:hover {
            color: #333;
            background: #f8f9fa;
        }
        
        .tab-btn.active {
            color: #667eea;
            border-bottom-color: #667eea;
            font-weight: 600;
        }
        
        .tab-content {
            display: none;
        }
        
        .tab-content.active {
            display: block;
        }
        
        .content-results {
            border-top: 2px solid #f0f0f0;
            padding-top: 20px;
            margin-top: 20px;
        }
        
        .content-results h3 {
            color: #333;
            margin-bottom: 15px;
            text-align: center;
        }
        
        .generated-content {
            background: #f8f9fa;
            border: 2px solid #e9ecef;
            border-radius: 10px;
            padding: 20px;
            margin-bottom: 15px;
            max-height: 400px;
            overflow-y: auto;
        }
        
        .content-actions {
            display: flex;
            gap: 10px;
            justify-content: center;
            margin-top: 15px;
        }
        
        .content-actions button {
            padding: 8px 16px;
            border: none;
            border-radius: 6px;
            font-size: 0.9rem;
            cursor: pointer;
            transition: all 0.3s ease;
        }
        
        .btn-use-content {
            background: #28a745;
            color: white;
        }
        
        .btn-use-content:hover {
            background: #218838;
        }
        
        .btn-append {
            background: #17a2b8;
            color: white;
        }
        
        .btn-append:hover {
            background: #138496;
        }
        
        .btn-optimize {
            background: #ffc107;
            color: #212529;
        }
        
        .btn-optimize:hover {
            background: #e0a800;
        }
        
        .outline-item {
            background: white;
            border: 1px solid #e0e0e0;
            border-radius: 8px;
            padding: 15px;
            margin-bottom: 10px;
        }
        
        .outline-title {
            font-weight: 600;
            color: #333;
            margin-bottom: 5px;
        }
        
        .outline-description {
            color: #666;
            font-size: 0.9rem;
            margin-bottom: 8px;
        }
        
        .outline-keywords {
            display: flex;
            gap: 5px;
            flex-wrap: wrap;
        }
        
        .keyword-tag {
            background: #667eea;
            color: white;
            padding: 2px 8px;
            border-radius: 4px;
            font-size: 0.8rem;
        }
        
        .loading-content {
            text-align: center;
            padding: 40px;
            color: #666;
        }
        
        .loading-content i {
            font-size: 2rem;
            margin-bottom: 15px;
            animation: spin 1s linear infinite;
        }
        
        @media (max-width: 768px) {
            .generator-tabs {
                flex-wrap: wrap;
            }
            
            .tab-btn {
                flex: 1;
                min-width: 120px;
            }
            
            .content-actions {
                flex-direction: column;
            }
        }
        
        function showContentGeneratorModal() {
            document.getElementById('contentGeneratorModal').style.display = 'block';
        }
        
        function closeContentGeneratorModal() {
            document.getElementById('contentGeneratorModal').style.display = 'none';
            document.getElementById('contentResults').style.display = 'none';
        }
        
        function switchTab(tabName) {
            // Hide all tab contents
            const tabContents = document.querySelectorAll('.tab-content');
            tabContents.forEach(tab => tab.classList.remove('active'));
            
            // Remove active class from all tab buttons
            const tabButtons = document.querySelectorAll('.tab-btn');
            tabButtons.forEach(btn => btn.classList.remove('active'));
            
            // Show selected tab content
            document.getElementById(tabName + '-tab').classList.add('active');
            
            // Add active class to clicked button
            event.target.classList.add('active');
        }
        
        async function generateFullContent() {
            const title = document.getElementById('articleTitle').value;
            const planId = document.getElementById('planId').value;
            const length = document.getElementById('contentLength').value;
            const tone = document.getElementById('contentTone').value;
            const audience = document.getElementById('targetAudience').value;
            const keywords = document.getElementById('contentKeywords').value;
            
            if (!title) {
                showNotification('請先輸入文章標題', 'error');
                return;
            }
            
            const generateBtn = document.querySelector('button[onclick="generateFullContent()"]');
            const originalText = generateBtn.innerHTML;
            generateBtn.innerHTML = '<i class="fas fa-spinner fa-spin"></i> 生成中...';
            generateBtn.disabled = true;
            
            try {
                const response = await fetch('/api/ai_content_generator.php', {
                    method: 'POST',
                    headers: {
                        'Content-Type': 'application/json',
                    },
                    credentials: 'same-origin',
                    body: JSON.stringify({
                        action: 'generate_content',
                        plan_id: planId,
                        title: title,
                        content_type: 'blog',
                        tone: tone,
                        length: length,
                        target_audience: audience,
                        keywords: keywords
                    })
                });
                
                const result = await response.json();
                
                if (result.success) {
                    displayGeneratedContent(result.data.content, 'full');
                    showNotification('內容生成成功！', 'success');
                } else {
                    showNotification('生成失敗: ' + result.message, 'error');
                }
            } catch (error) {
                console.error('Error:', error);
                showNotification('網路錯誤，請稍後再試', 'error');
            } finally {
                generateBtn.innerHTML = originalText;
                generateBtn.disabled = false;
            }
        }
        
        async function generateOutline() {
            const title = document.getElementById('articleTitle').value;
            const length = document.getElementById('outlineLength').value;
            const keywords = document.getElementById('outlineKeywords').value;
            
            if (!title) {
                showNotification('請先輸入文章標題', 'error');
                return;
            }
            
            const generateBtn = document.querySelector('button[onclick="generateOutline()"]');
            const originalText = generateBtn.innerHTML;
            generateBtn.innerHTML = '<i class="fas fa-spinner fa-spin"></i> 生成中...';
            generateBtn.disabled = true;
            
            try {
                const response = await fetch('/api/ai_content_generator.php', {
                    method: 'POST',
                    headers: {
                        'Content-Type': 'application/json',
                    },
                    credentials: 'same-origin',
                    body: JSON.stringify({
                        action: 'generate_outline',
                        title: title,
                        content_type: 'blog',
                        length: length,
                        keywords: keywords
                    })
                });
                
                const result = await response.json();
                
                if (result.success) {
                    displayGeneratedOutline(result.data);
                    showNotification('大綱生成成功！', 'success');
                } else {
                    showNotification('生成失敗: ' + result.message, 'error');
                }
            } catch (error) {
                console.error('Error:', error);
                showNotification('網路錯誤，請稍後再試', 'error');
            } finally {
                generateBtn.innerHTML = originalText;
                generateBtn.disabled = false;
            }
        }
        
        async function expandSection() {
            const sectionTitle = document.getElementById('sectionTitle').value;
            const sectionContent = document.getElementById('sectionContent').value;
            const length = document.getElementById('sectionLength').value;
            const keywords = document.getElementById('articleKeywords').value;
            const tone = document.getElementById('contentTone').value;
            
            if (!sectionTitle) {
                showNotification('請輸入章節標題', 'error');
                return;
            }
            
            const generateBtn = document.querySelector('button[onclick="expandSection()"]');
            const originalText = generateBtn.innerHTML;
            generateBtn.innerHTML = '<i class="fas fa-spinner fa-spin"></i> 擴展中...';
            generateBtn.disabled = true;
            
            try {
                const response = await fetch('/api/ai_content_generator.php', {
                    method: 'POST',
                    headers: {
                        'Content-Type': 'application/json',
                    },
                    credentials: 'same-origin',
                    body: JSON.stringify({
                        action: 'expand_section',
                        section_title: sectionTitle,
                        section_content: sectionContent,
                        keywords: keywords,
                        tone: tone,
                        length: length
                    })
                });
                
                const result = await response.json();
                
                if (result.success) {
                    displayGeneratedContent(result.data, 'section');
                    showNotification('章節擴展成功！', 'success');
                } else {
                    showNotification('擴展失敗: ' + result.message, 'error');
                }
            } catch (error) {
                console.error('Error:', error);
                showNotification('網路錯誤，請稍後再試', 'error');
            } finally {
                generateBtn.innerHTML = originalText;
                generateBtn.disabled = false;
            }
        }
        
        async function generateIntro() {
            const title = document.getElementById('articleTitle').value;
            const hookType = document.getElementById('hookType').value;
            const keywords = document.getElementById('introKeywords').value;
            const tone = document.getElementById('contentTone').value;
            
            if (!title) {
                showNotification('請先輸入文章標題', 'error');
                return;
            }
            
            const generateBtn = document.querySelector('button[onclick="generateIntro()"]');
            const originalText = generateBtn.innerHTML;
            generateBtn.innerHTML = '<i class="fas fa-spinner fa-spin"></i> 生成中...';
            generateBtn.disabled = true;
            
            try {
                const response = await fetch('/api/ai_content_generator.php', {
                    method: 'POST',
                    headers: {
                        'Content-Type': 'application/json',
                    },
                    credentials: 'same-origin',
                    body: JSON.stringify({
                        action: 'generate_intro',
                        title: title,
                        keywords: keywords,
                        tone: tone,
                        hook_type: hookType
                    })
                });
                
                const result = await response.json();
                
                if (result.success) {
                    displayGeneratedContent(result.data, 'intro');
                    showNotification('引言生成成功！', 'success');
                } else {
                    showNotification('生成失敗: ' + result.message, 'error');
                }
            } catch (error) {
                console.error('Error:', error);
                showNotification('網路錯誤，請稍後再試', 'error');
            } finally {
                generateBtn.innerHTML = originalText;
                generateBtn.disabled = false;
            }
        }
        
        async function generateConclusion() {
            const title = document.getElementById('articleTitle').value;
            const contentSummary = document.getElementById('contentSummary').value;
            const callToAction = document.getElementById('callToAction').value;
            const keywords = document.getElementById('conclusionKeywords').value;
            const tone = document.getElementById('contentTone').value;
            
            if (!title) {
                showNotification('請先輸入文章標題', 'error');
                return;
            }
            
            const generateBtn = document.querySelector('button[onclick="generateConclusion()"]');
            const originalText = generateBtn.innerHTML;
            generateBtn.innerHTML = '<i class="fas fa-spinner fa-spin"></i> 生成中...';
            generateBtn.disabled = true;
            
            try {
                const response = await fetch('/api/ai_content_generator.php', {
                    method: 'POST',
                    headers: {
                        'Content-Type': 'application/json',
                    },
                    credentials: 'same-origin',
                    body: JSON.stringify({
                        action: 'generate_conclusion',
                        title: title,
                        content_summary: contentSummary,
                        keywords: keywords,
                        tone: tone,
                        call_to_action: callToAction
                    })
                });
                
                const result = await response.json();
                
                if (result.success) {
                    displayGeneratedContent(result.data, 'conclusion');
                    showNotification('結論生成成功！', 'success');
                } else {
                    showNotification('生成失敗: ' + result.message, 'error');
                }
            } catch (error) {
                console.error('Error:', error);
                showNotification('網路錯誤，請稍後再試', 'error');
            } finally {
                generateBtn.innerHTML = originalText;
                generateBtn.disabled = false;
            }
        }
        
        function displayGeneratedContent(content, type) {
            const resultsDiv = document.getElementById('contentResults');
            const contentDiv = document.getElementById('generatedContent');
            
            contentDiv.innerHTML = `
                <div class="generated-content">
                    ${content}
                </div>
                <div class="content-actions">
                    <button class="btn-use-content" onclick="useGeneratedContent('${type}')">
                        <i class="fas fa-check"></i> 使用內容
                    </button>
                    <button class="btn-append" onclick="appendGeneratedContent('${type}')">
                        <i class="fas fa-plus"></i> 追加內容
                    </button>
                    <button class="btn-optimize" onclick="optimizeGeneratedContent()">
                        <i class="fas fa-magic"></i> 優化內容
                    </button>
                </div>
            `;
            
            resultsDiv.style.display = 'block';
        }
        
        function displayGeneratedOutline(outline) {
            const resultsDiv = document.getElementById('contentResults');
            const contentDiv = document.getElementById('generatedContent');
            
            let outlineHtml = '<div class="outline-list">';
            
            if (outline.outline && Array.isArray(outline.outline)) {
                outline.outline.forEach((item, index) => {
                    outlineHtml += `
                        <div class="outline-item">
                            <div class="outline-title">${item.title || item.section}</div>
                            <div class="outline-description">${item.description || ''}</div>
                            ${item.keywords ? `
                                <div class="outline-keywords">
                                    ${item.keywords.map(keyword => `<span class="keyword-tag">${keyword}</span>`).join('')}
                                </div>
                            ` : ''}
                        </div>
                    `;
                });
            } else {
                outlineHtml += '<div class="outline-item">' + outline + '</div>';
            }
            
            outlineHtml += '</div>';
            
            contentDiv.innerHTML = `
                ${outlineHtml}
                <div class="content-actions">
                    <button class="btn-use-content" onclick="useGeneratedOutline()">
                        <i class="fas fa-check"></i> 使用大綱
                    </button>
                </div>
            `;
            
            resultsDiv.style.display = 'block';
        }
        
        function useGeneratedContent(type) {
            const content = document.querySelector('.generated-content').innerHTML;
            
            if (editor) {
                if (type === 'full') {
                    editor.setData(content);
                } else {
                    const currentContent = editor.getData();
                    editor.setData(currentContent + content);
                }
            }
            
            closeContentGeneratorModal();
            showNotification('內容已套用！', 'success');
        }
        
        function appendGeneratedContent(type) {
            const content = document.querySelector('.generated-content').innerHTML;
            
            if (editor) {
                const currentContent = editor.getData();
                editor.setData(currentContent + content);
            }
            
            showNotification('內容已追加！', 'success');
        }
        
        function useGeneratedOutline() {
            const outlineItems = document.querySelectorAll('.outline-item');
            let outlineContent = '<h2>文章大綱</h2><ul>';
            
            outlineItems.forEach(item => {
                const title = item.querySelector('.outline-title').textContent;
                outlineContent += `<li>${title}</li>`;
            });
            
            outlineContent += '</ul>';
            
            if (editor) {
                editor.setData(outlineContent);
            }
            
            closeContentGeneratorModal();
            showNotification('大綱已套用！', 'success');
        }
        
        function optimizeGeneratedContent() {

        function showSEOOptimizerModal() {
            document.getElementById('seoOptimizerModal').style.display = 'block';
        }

        function closeSEOOptimizerModal() {
            document.getElementById('seoOptimizerModal').style.display = 'none';
                html += `
                    <div class="analysis-section">
                        <h4>關鍵字分析</h4>
                        <div class="analysis-item">
                            <h5>關鍵字密度</h5>
                            <p>${data.keyword_analysis.density}%</p>
                        </div>
                        <div class="analysis-item">
                            <h5>分佈評估</h5>
                            <p>${data.keyword_analysis.distribution}</p>
                        </div>
                        <div class="analysis-item">
                            <h5>相關性分數</h5>
                            <p>${data.keyword_analysis.relevance}/10</p>
                        </div>
                    </div>
                `;
            }

            if (data.improvements && data.improvements.length > 0) {
                html += `
                    <div class="analysis-section">
                        <h4>改進建議</h4>
                        <ul class="improvement-list">
                            ${data.improvements.map(improvement => `<li>${improvement}</li>`).join(''))}
                        </ul>
                    </div>
                `;
            }

            contentDiv.innerHTML = html;
            resultsDiv.style.display = 'block';
        }
            showNotification('內容優化功能開發中...', 'info');
        }
        
        // Close modals when clicking outside
        window.onclick = function(event) {
            const titleModal = document.getElementById('titleGeneratorModal');
            const analysisModal = document.getElementById('titleAnalysisModal');
            const contentModal = document.getElementById('contentGeneratorModal');
            const seoModal = document.getElementById('seoOptimizerModal');
            
            if (event.target === titleModal) {
                closeTitleGeneratorModal();
            }
            if (event.target === analysisModal) {
                closeTitleAnalysisModal();
            }
            if (event.target === contentModal) {
            if (event.target === seoModal) {
                closeSEOOptimizerModal();
            }
                closeContentGeneratorModal();
            }
        }

    </script>
