<?php
require_once '../includes/auth.php';
require_once '../includes/language_manager.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>
<?php include '../includes/language_switcher.php'; ?>
    <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>
    </div>
    
    <script src="https://cdn.ckeditor.com/ckeditor5/40.0.0/classic/ckeditor.js"></script>
    <script>
        let editor;
        
        document.addEventListener('DOMContentLoaded', function() {
            // Initialize CKEditor
            ClassicEditor
                .create(document.querySelector('#articleContent'), {
                    toolbar: {
                        items: [
                            'heading', '|',
                            'bold', 'italic', 'underline', '|',
                            'bulletedList', 'numberedList', '|',
                            'outdent', 'indent', '|',
                            'blockQuote', 'insertTable', '|',
                            'link', 'imageUpload', '|',
                            'undo', 'redo'
                        ]
                    },
                    language: 'zh',
                    table: {
                        contentToolbar: [
                            'tableColumn',
                            'tableRow',
                            'mergeTableCells'
                        ]
                    }
                })
                .then(newEditor => {
                    editor = newEditor;
                })
                .catch(error => {
                    console.error('CKEditor initialization error:', error);
                });
        });
        
        function generateTitle() {
            showTitleGeneratorModal();
        }
        
        function generateContent() {
            showContentGeneratorModal();
        }
        
        function optimizeSEO() {
            showSEOOptimizerModal();
        }
        
        function showNotification(message, type = 'success') {
            const notification = document.createElement('div');
            notification.className = `notification ${type}`;
            notification.textContent = message;
            document.body.appendChild(notification);
            
            setTimeout(() => {
                notification.classList.add('show');
            }, 100);
            
            setTimeout(() => {
                notification.classList.remove('show');
                setTimeout(() => {
                    document.body.removeChild(notification);
                }, 300);
            }, 3000);
        }
        
        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();
            }
        }
    </script>
    
    <style>
        .notification {
            position: fixed;
            top: 20px;
            right: 20px;
            padding: 15px 20px;
            border-radius: 8px;
            color: white;
            font-weight: 600;
            z-index: 1000;
            transform: translateX(400px);
            transition: transform 0.3s ease;
        }
        
        .notification.show {
            transform: translateX(0);
        }
        
        .notification.success {
            background: #28a745;
        }
        
        .notification.error {
            background: #dc3545;
        }
        
        .notification.info {
            background: #17a2b8;
        }
    </style>
</body>
</html>
