<?php
require_once 'config.php';

$db = new Database($pdo);
$sync = new DataSync($db);

// 获取网站列表
$websites = $db->getWebsites();

// 获取排序参数
$sortField = isset($_GET['sort']) ? $_GET['sort'] : 'conversion_rate';
$sortOrder = isset($_GET['order']) ? $_GET['order'] : 'desc';

// 获取网站筛选参数
$websiteId = isset($_GET['website_id']) ? (int)$_GET['website_id'] : null;

// 获取关键词统计数据（添加排序参数）
$keywordStats = $db->getKeywordStats($websiteId, $sortField, $sortOrder);

// 处理同步请求
if (isset($_POST['sync'])) {
    $results = $sync->syncAllWebsites();
    // 修复：同步后分析所有网站的关键词，而不是当前选中的网站
    $analyzeResults = $sync->analyzeKeywords(null);
    
    $syncMessage = "同步完成";
    foreach ($results as $result) {
        $syncMessage .= "<br>" . $result['message'];
    }
    
    // 重新获取关键词统计数据
    $keywordStats = $db->getKeywordStats($websiteId, $sortField, $sortOrder);
}

// 生成排序链接
function getSortLink($field, $currentField, $currentOrder, $websiteId) {
    $params = [];
    if ($websiteId) $params['website_id'] = $websiteId;
    $params['sort'] = $field;
    
    if ($field === $currentField) {
        $params['order'] = $currentOrder === 'asc' ? 'desc' : 'asc';
    } else {
        $params['order'] = 'desc'; // 默认降序
    }
    
    return '?' . http_build_query($params);
}

// 获取排序指示器
function getSortIndicator($field, $currentField, $currentOrder) {
    if ($field !== $currentField) return '';
    
    return $currentOrder === 'asc' ? '↑' : '↓';
}
?>
<!DOCTYPE html>
<html lang="zh-CN">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>SVIP转化率分析系统</title>
    <link href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.0/dist/css/bootstrap.min.css" rel="stylesheet">
    <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/bootstrap-icons@1.10.0/font/bootstrap-icons.css">
    <style>
        .sortable {
            cursor: pointer;
            user-select: none;
        }
        .sortable:hover {
            background-color: #f8f9fa;
        }
    </style>
</head>
<body>
    <div class="container py-4">
        <h1 class="text-center mb-4">SVIP转化率分析系统</h1>
        
        <?php if (isset($syncMessage)): ?>
        <div class="alert alert-info"><?php echo $syncMessage; ?></div>
        <?php endif; ?>
        
        <div class="row mb-4">
            <div class="col-md-6">
                <form method="post">
                    <button type="submit" name="sync" class="btn btn-primary">
                        <i class="bi bi-arrow-repeat"></i> 同步所有网站数据
                    </button>
                </form>
            </div>
            <div class="col-md-6">
                <form method="get" class="d-flex">
                    <input type="hidden" name="sort" value="<?php echo $sortField; ?>">
                    <input type="hidden" name="order" value="<?php echo $sortOrder; ?>">
                    <select name="website_id" class="form-select me-2">
                        <option value="">所有网站</option>
                        <?php foreach ($websites as $website): ?>
                        <option value="<?php echo $website['id']; ?>" <?php echo $websiteId == $website['id'] ? 'selected' : ''; ?>>
                            <?php echo htmlspecialchars($website['name']); ?>
                        </option>
                        <?php endforeach; ?>
                    </select>
                    <button type="submit" class="btn btn-secondary">筛选</button>
                </form>
            </div>
        </div>
        
        <div class="card">
            <div class="card-header">
                <h5 class="card-title">关键词转化率分析</h5>
                <p class="card-text text-muted small">
                    当前排序: <?php echo $sortField === 'keyword' ? '关键词' : ($sortField === 'member_count' ? '会员数' : ($sortField === 'svip_count' ? 'SVIP数' : '转化率')); ?> 
                    (<?php echo $sortOrder === 'asc' ? '升序' : '降序'; ?>)
                </p>
            </div>
            <div class="card-body">
                <div class="table-responsive">
                    <table class="table table-striped">
                        <thead>
                            <tr>
                                <th class="sortable" onclick="window.location.href='<?php echo getSortLink('keyword', $sortField, $sortOrder, $websiteId); ?>'">
                                    关键词 <?php echo getSortIndicator('keyword', $sortField, $sortOrder); ?>
                                </th>
                                <th class="sortable" onclick="window.location.href='<?php echo getSortLink('member_count', $sortField, $sortOrder, $websiteId); ?>'">
                                    带来会员数 <?php echo getSortIndicator('member_count', $sortField, $sortOrder); ?>
                                </th>
                                <th class="sortable" onclick="window.location.href='<?php echo getSortLink('svip_count', $sortField, $sortOrder, $websiteId); ?>'">
                                    带来SVIP数 <?php echo getSortIndicator('svip_count', $sortField, $sortOrder); ?>
                                </th>
                                <th class="sortable" onclick="window.location.href='<?php echo getSortLink('conversion_rate', $sortField, $sortOrder, $websiteId); ?>'">
                                    转化率 <?php echo getSortIndicator('conversion_rate', $sortField, $sortOrder); ?>
                                </th>
                            </tr>
                        </thead>
                        <tbody>
                            <?php if (empty($keywordStats)): ?>
                            <tr>
                                <td colspan="4" class="text-center">没有数据，请先同步数据</td>
                            </tr>
                            <?php else: ?>
                            <?php foreach ($keywordStats as $stat): ?>
                            <tr>
                                <td><?php echo htmlspecialchars($stat['keyword']); ?></td>
                                <td><?php echo $stat['member_count']; ?></td>
                                <td><?php echo $stat['svip_count']; ?></td>
                                <td>
                                    <span class="<?php echo $stat['conversion_rate'] >= 10 ? 'text-success' : ($stat['conversion_rate'] > 0 ? 'text-warning' : 'text-danger'); ?>">
                                        <?php echo number_format($stat['conversion_rate'], 2); ?>%
                                    </span>
                                </td>
                            </tr>
                            <?php endforeach; ?>
                            <?php endif; ?>
                        </tbody>
                    </table>
                </div>
            </div>
        </div>
        
<div class="mt-4">
    <a href="websites.php" class="btn btn-outline-primary">管理网站</a>
    <a href="conversion.php?website_id=<?php echo $websiteId; ?>" class="btn btn-outline-secondary">查看详细报告</a>
    <a href="time_analysis.php?website_id=<?php echo $websiteId; ?>" class="btn btn-outline-info">时间维度分析</a>
</div>
</body>
</html>