<?php
require_once __DIR__ . '/../lib/config.php';
require_once __DIR__ . '/../lib/db_connect.php';
require_once __DIR__ . '/../includes/header.php';

// 增加服务器端文件上传限制到5MB
ini_set('upload_max_filesize', '5M');
ini_set('post_max_size', '10M'); // POST请求最大大小设为10M，包含文件和其他数据

if (!isset($_SESSION['user_id'])) {
    header('Location: login.php');
    exit;
}

// 检查用户状态
$user_id = $_SESSION['user_id'];
$stmt = $conn->prepare("SELECT status, user_group FROM users WHERE id = ?");
$stmt->bind_param("i", $user_id);
$stmt->execute();
$result = $stmt->get_result();
$user = $result->fetch_assoc();

if ($user['status'] === 'banned') {
    $_SESSION['error'] = "您的账号已被封禁，无法提交任务";
    header('Location: tasks.php');
    exit;
}

$user_group = $user['user_group'] ?? '';

// 获取用户组积分信息
$group_points = [];
$agent_deductions = [
    'deduct_30_1000w' => 0,
    'deduct_30_1500w' => 0,
    'deduct_30_2000w' => 0,
    'deduct_33_1000w' => 0,
    'deduct_33_1500w' => 0,
    'deduct_33_2000w' => 0
];

if (!empty($user_group)) {
    // 获取用户组积分
    $stmt = $conn->prepare("SELECT * FROM user_groups WHERE group_name = ?");
    $stmt->bind_param("s", $user_group);
    $stmt->execute();
    $result = $stmt->get_result();
    $group_points = $result->fetch_assoc() ?: [];
    
    // 获取代理扣除设置
    $stmt = $conn->prepare("SELECT 
        deduct_30_1000w, deduct_30_1500w, deduct_30_2000w,
        deduct_33_1000w, deduct_33_1500w, deduct_33_2000w
        FROM agents 
        WHERE user_group = ? 
        ORDER BY id DESC 
        LIMIT 1");
    $stmt->bind_param("s", $user_group);
    $stmt->execute();
    $result = $stmt->get_result();
    
    if ($result->num_rows > 0) {
        $agent_deductions = $result->fetch_assoc();
    }
}

// 获取所有号源（商品）列表
$products = [];
$query = "SELECT 
            p.id, 
            p.name, 
            p.points
          FROM products p
          ORDER BY p.id DESC";

$stmt = $conn->prepare($query);
$stmt->execute();
$result = $stmt->get_result();
while ($row = $result->fetch_assoc()) {
    $products[] = $row;
}

// 从数据库获取任务规则状态
$task_rules = [
    '30_10000000' => false,
    '30_15000000' => false,
    '30_20000000' => false,
    '33_10000000' => false,
    '33_15000000' => false,
    '33_20000000' => false
];

// 从数据库查询任务规则状态
$sql = "SELECT rule_key, status FROM task_rules";
$result = $conn->query($sql);
if ($result && $result->num_rows > 0) {
    while ($row = $result->fetch_assoc()) {
        $task_rules[$row['rule_key']] = (bool)$row['status'];
    }
} else {
    // 默认规则状态（当数据库没有数据时）
    $task_rules['30_10000000'] = true;
}

// +++ 新增：检查账号状态的函数 +++
function checkAccountStatus($conn, $account) {
    $sql = "SELECT status, user_id FROM tasks WHERE account = ? AND status IN ('approved', 'self_kept') LIMIT 1";
    $stmt = $conn->prepare($sql);
    $stmt->bind_param("s", $account);
    $stmt->execute();
    $result = $stmt->get_result();
    
    if ($result->num_rows > 0) {
        $task = $result->fetch_assoc();
        return [
            'exists' => true,
            'status' => $task['status'],
            'user_id' => $task['user_id']
        ];
    }
    
    return ['exists' => false];
}

// 显示错误信息
if (isset($_SESSION['errors'])) {
    echo '<script>
        document.addEventListener("DOMContentLoaded", function() {
            Swal.fire({
                icon: "error",
                title: "提交错误",
                html: ' . json_encode(implode("<br>", $_SESSION['errors'])) . ',
                confirmButtonColor: "#3085d6",
                customClass: {
                    popup: "sweetalert-popup",
                    title: "sweetalert-title",
                    htmlContainer: "sweetalert-html-container",
                    confirmButton: "sweetalert-confirm-btn"
                }
            });
        });
    </script>';
    unset($_SESSION['errors']);
}

// 添加成功消息显示
if (isset($_SESSION['success'])) {
    echo '<script>
        document.addEventListener("DOMContentLoaded", function() {
            Swal.fire({
                icon: "success",
                title: "操作成功",
                text: ' . json_encode($_SESSION['success']) . ',
                confirmButtonColor: "#3085d6",
                customClass: {
                    popup: "sweetalert-popup",
                    title: "sweetalert-title",
                    htmlContainer: "sweetalert-html-container",
                    confirmButton: "sweetalert-confirm-btn"
                }
            }).then(() => {
                window.location.href = "' . BASE_URL . 'tasks.php";
            });
        });
    </script>';
    unset($_SESSION['success']);
}

// 将积分配置传递给前端
$points_config = [
    'group_points' => $group_points,
    'agent_deductions' => $agent_deductions
];

// 将任务规则状态传递给前端
$js_task_rules = json_encode($task_rules);

// 获取URL参数
$prefill_account = isset($_GET['account']) ? $_GET['account'] : '';
$prefill_password = isset($_GET['password']) ? $_GET['password'] : '';
$prefill_product = isset($_GET['product_name']) ? $_GET['product_name'] : '';

// +++ 新增：预填充账号时检查账号状态 +++
if (!empty($prefill_account)) {
    $account_status = checkAccountStatus($conn, $prefill_account);
    if ($account_status['exists']) {
        $status_text = $account_status['status'] === 'approved' ? '已通过' : '已自留';
        echo '<script>
            document.addEventListener("DOMContentLoaded", function() {
                Swal.fire({
                    icon: "error",
                    title: "账号状态检查",
                    html: "该账号 <strong>' . htmlspecialchars($prefill_account) . '</strong> 已经存在' . $status_text . '的任务，无法重复提交！",
                    confirmButtonColor: "#3085d6",
                    customClass: {
                        popup: "sweetalert-popup",
                        title: "sweetalert-title",
                        htmlContainer: "sweetalert-html-container",
                        confirmButton: "sweetalert-confirm-btn"
                    }
                }).then(() => {
                    // 清空账号输入框
                    document.getElementById("taskAccount").value = "";
                });
            });
        </script>';
        $prefill_account = ''; // 清空预填充的账号
    }
}
?>

<div class="main-content">
    <div class="d-flex justify-content-between align-items-center mb-4">
        <h4 class="mb-0">提交任务工单</h4>
        <a href="<?= BASE_URL ?>tasks.php" class="btn btn-sm btn-outline-secondary">
            <i class="fas fa-arrow-left me-1"></i>返回任务列表
        </a>
    </div>
    
    <div class="card shadow-lg border-0 rounded-3">
        <div class="card-header bg-gradient-primary text-white py-3 rounded-top">
            <div class="d-flex align-items-center">
                <i class="fas fa-file-alt me-2"></i>
                <h5 class="mb-0">填写任务信息</h5>
            </div>
        </div>
        
        <div class="card-body p-4">
            <!-- 交单要求说明 -->
            <div class="alert alert-warning border-warning mb-4 rounded-3">
                <div class="d-flex align-items-start">
                    <i class="fas fa-exclamation-triangle fs-4 me-3 mt-1"></i>
                    <div>
                        <h5 class="alert-heading fw-bold">交单要求说明</h5>
                        <ul class="mb-0">
                          <li><i class="fas fa-check-circle me-2 text-success"></i>人物等级30级/33级</li>
                            <li><i class="fas fa-check-circle me-2 text-success"></i>哈佛币10000000以上</li>
                             <li><i class="fas fa-check-circle me-2 text-success"></i>机密黑夜大坝随便杀-其他机密地图不要杀</li>
                             <li><i class="fas fa-check-circle me-2 text-success"></i>需要人物乌鲁鲁，awm子弹，2个红甲修，2个血包，3*3体验卡</li>
                             <li><i class="fas fa-check-circle me-2 text-success"></i>新增第5张截图要求：显示完整装备栏</li>
                        </ul>
                        <hr class="my-3">
                        <p class="mb-0 fw-bold text-danger">
                            <i class="fas fa-exclamation-circle me-2"></i>不符合以上要求的订单将被拒绝回收，超过要求不回收！
                        </p>
                    </div>
                </div>
            </div>
            
            <!-- 新增：查看拒绝审核示例按钮 -->
            <div class="alert alert-danger border-danger mb-4 rounded-3">
                <div class="d-flex align-items-start">
                    <i class="fas fa-ban fs-4 me-3 mt-1"></i>
                    <div class="w-100">
                        <h5 class="alert-heading fw-bold mb-3">拒绝审核示例</h5>
                        <p class="mb-3">了解常见的审核失败原因，避免提交被拒绝的任务</p>
                        <button type="button" class="btn btn-outline-danger" id="viewRejectedExamplesBtn">
                            <i class="fas fa-eye me-2"></i>查看拒绝审核示例
                        </button>
                    </div>
                </div>
            </div>
            
            <!-- 表单 -->
            <form id="taskForm" action="<?= BASE_URL ?>process_task.php" method="POST" enctype="multipart/form-data">
                <input type="hidden" id="productNameInput" name="product_name" value="">
                
                <div class="row g-3 mb-4">
                    <div class="col-md-6">
                        <div class="form-floating">
                            <input type="text" class="form-control" id="taskAccount" name="account" placeholder="请输入游戏账号" required value="<?= htmlspecialchars($prefill_account) ?>">
                            <label for="taskAccount"><i class="fas fa-user me-2"></i>账号 <span class="text-danger">*</span></label>
                        </div>
                    </div>
                    <div class="col-md-6">
                        <div class="form-floating position-relative">
                            <input type="password" class="form-control" id="taskPassword" name="password" placeholder="请输入账号密码" required value="<?= htmlspecialchars($prefill_password) ?>">
                            <label for="taskPassword"><i class="fas fa-lock me-2"></i>密码 <span class="text-danger">*</span></label>
                            <span class="position-absolute top-50 end-0 translate-middle-y me-3" style="cursor: pointer; z-index: 10;" id="togglePassword">
                                <i class="fas fa-eye"></i>
                            </span>
                        </div>
                    </div>
                    
                    <!-- 号源选择区域 -->
                    <div class="col-12">
                        <div class="border rounded-3 p-3 bg-light">
                            <label class="form-label fw-bold mb-3"><i class="fas fa-database me-2"></i>号源选择 <span class="text-danger">*</span></label>
                            <?php if (count($products) > 0): ?>
                                <div class="row g-3">
                                    <?php foreach ($products as $product): ?>
                                        <div class="col-md-4">
                                            <div class="form-check card-radio-option">
                                                <input class="form-check-input" 
                                                       type="radio" 
                                                       name="product_id" 
                                                       id="product_<?= $product['id'] ?>" 
                                                       value="<?= $product['id'] ?>" 
                                                       required
                                                       data-name="<?= htmlspecialchars($product['name']) ?>"
                                                       <?= ($prefill_product === $product['name']) ? 'checked' : '' ?>>
                                                <label class="form-check-label w-100 h-100 p-3 rounded-2" for="product_<?= $product['id'] ?>">
                                                    <div class="d-flex flex-column align-items-center">
                                                        <span class="fw-bold fs-5"><?= htmlspecialchars($product['name']) ?></span>
                                                    </div>
                                                </label>
                                            </div>
                                        </div>
                                    <?php endforeach; ?>
                                </div>
                            <?php else: ?>
                                <div class="alert alert-danger mb-0">
                                    <i class="fas fa-exclamation-circle me-2"></i>当前没有可用号源，无法提交任务
                                </div>
                            <?php endif; ?>
                        </div>
                    </div>
                    
                    <!-- 账号等级选择 -->
                    <div class="col-12">
                        <div class="border rounded-3 p-3 bg-light">
                            <label class="form-label fw-bold mb-3"><i class="fas fa-level-up-alt me-2"></i>账号等级 <span class="text-danger">*</span></label>
                            <div class="row g-3">
                                <div class="col-md-6">
                                    <div class="form-check card-radio-option level-radio-option <?= (!$task_rules['30_10000000'] && !$task_rules['30_15000000'] && !$task_rules['30_20000000']) ? 'disabled-option' : '' ?>">
                                        <input class="form-check-input" type="radio" name="level" id="level30" value="30" required 
                                            <?= (!$task_rules['30_10000000'] && !$task_rules['30_15000000'] && !$task_rules['30_20000000']) ? 'disabled' : '' ?>>
                                        <label class="form-check-label w-100 h-100 p-3 rounded-2" for="level30">
                                            <div class="d-flex flex-column align-items-center">
                                                <span class="fw-bold fs-5">30级</span>
                                                <span class="text-muted small">基础等级</span>
                                                <?php if (!$task_rules['30_10000000'] && !$task_rules['30_15000000'] && !$task_rules['30_20000000']): ?>
                                                    <span class="text-danger small mt-1"><i class="fas fa-ban me-1"></i>该等级任务已关闭</span>
                                                <?php endif; ?>
                                            </div>
                                        </label>
                                    </div>
                                </div>
                                <div class="col-md-6">
                                    <div class="form-check card-radio-option level-radio-option <?= (!$task_rules['33_10000000'] && !$task_rules['33_15000000'] && !$task_rules['33_20000000']) ? 'disabled-option' : '' ?>">
                                        <input class="form-check-input" type="radio" name="level" id="level33" value="33" 
                                            <?= (!$task_rules['33_10000000'] && !$task_rules['33_15000000'] && !$task_rules['33_20000000']) ? 'disabled' : '' ?>>
                                        <label class="form-check-label w-100 h-100 p-3 rounded-2" for="level33">
                                            <div class="d-flex flex-column align-items-center">
                                                <span class="fw-bold fs-5">33级</span>
                                                <span class="text-muted small">高级等级</span>
                                                <?php if (!$task_rules['33_10000000'] && !$task_rules['33_15000000'] && !$task_rules['33_20000000']): ?>
                                                    <span class="text-danger small mt-1"><i class="fas fa-ban me-1"></i>该等级任务已关闭</span>
                                                <?php endif; ?>
                                            </div>
                                        </label>
                                    </div>
                                </div>
                            </div>
                        </div>
                    </div>
                    
                    <!-- 哈佛币数量选择 -->
                    <div class="col-12">
                        <div class="border rounded-3 p-3 bg-light">
                            <label class="form-label fw-bold mb-3"><i class="fas fa-coins me-2"></i>哈佛币数量 <span class="text-danger">*</span></label>
                            <div class="row g-3">
                                <div class="col-md-4">
                                    <div class="form-check card-radio-option <?= (!$task_rules['30_10000000'] && !$task_rules['33_10000000']) ? 'disabled-option' : '' ?>">
                                        <input class="form-check-input" type="radio" name="coin" id="coin1000w" value="10000000" required 
                                            <?= (!$task_rules['30_10000000'] && !$task_rules['33_10000000']) ? 'disabled' : '' ?>>
                                        <label class="form-check-label w-100 h-100 p-3 rounded-2" for="coin1000w">
                                            <div class="d-flex flex-column align-items-center">
                                                <span class="fw-bold fs-5">1000万</span>
                                                <span class="text-muted small">基础任务</span>
                                                <?php if (!$task_rules['30_10000000'] && !$task_rules['33_10000000']): ?>
                                                    <span class="text-danger small mt-1"><i class="fas fa-ban me-1"></i>全等级该任务已关闭</span>
                                                <?php elseif (!$task_rules['30_10000000']): ?>
                                                    <span class="text-danger small mt-1"><i class="fas fa-ban me-1"></i>30级该任务已关闭</span>
                                                <?php elseif (!$task_rules['33_10000000']): ?>
                                                    <span class="text-danger small mt-1"><i class="fas fa-ban me-1"></i>33级该任务已关闭</span>
                                                <?php endif; ?>
                                            </div>
                                        </label>
                                    </div>
                                </div>
                                <div class="col-md-4">
                                    <div class="form-check card-radio-option <?= (!$task_rules['30_15000000'] && !$task_rules['33_15000000']) ? 'disabled-option' : '' ?>">
                                        <input class="form-check-input" type="radio" name="coin" id="coin1500w" value="15000000" 
                                            <?= (!$task_rules['30_15000000'] && !$task_rules['33_15000000']) ? 'disabled' : '' ?>>
                                        <label class="form-check-label w-100 h-100 p-3 rounded-2" for="coin1500w">
                                            <div class="d-flex flex-column align-items-center">
                                                <span class="fw-bold fs-5">1500万</span>
                                                <span class="text-muted small">高级任务</span>
                                                <?php if (!$task_rules['30_15000000'] && !$task_rules['33_15000000']): ?>
                                                    <span class="text-danger small mt-1"><i class="fas fa-ban me-1"></i>全等级该任务已关闭</span>
                                                <?php elseif (!$task_rules['30_15000000']): ?>
                                                    <span class="text-danger small mt-1"><i class="fas fa-ban me-1"></i>30级该任务已关闭</span>
                                                <?php elseif (!$task_rules['33_15000000']): ?>
                                                    <span class="text-danger small mt-1"><i class="fas fa-ban me-1"></i>33级该任务已关闭</span>
                                                <?php endif; ?>
                                            </div>
                                        </label>
                                    </div>
                                </div>
                                <div class="col-md-4">
                                    <div class="form-check card-radio-option <?= (!$task_rules['30_20000000'] && !$task_rules['33_20000000']) ? 'disabled-option' : '' ?>">
                                        <input class="form-check-input" type="radio" name="coin" id="coin2000w" value="20000000" 
                                            <?= (!$task_rules['30_20000000'] && !$task_rules['33_20000000']) ? 'disabled' : '' ?>>
                                        <label class="form-check-label w-100 h-100 p-3 rounded-2" for="coin2000w">
                                            <div class="d-flex flex-column align-items-center">
                                                <span class="fw-bold fs-5">2000万</span>
                                                <span class="text-muted small">豪华任务</span>
                                                <?php if (!$task_rules['30_20000000'] && !$task_rules['33_20000000']): ?>
                                                    <span class="text-danger small mt-1"><i class="fas fa-ban me-1"></i>全等级该任务已关闭</span>
                                                <?php elseif (!$task_rules['30_20000000']): ?>
                                                    <span class="text-danger small mt-1"><i class="fas fa-ban me-1"></i>30级该任务已关闭</span>
                                                <?php elseif (!$task_rules['33_20000000']): ?>
                                                    <span class="text-danger small mt-1"><i class="fas fa-ban me-1"></i>33级该任务已关闭</span>
                                                <?php endif; ?>
                                            </div>
                                        </label>
                                    </div>
                                </div>
                            </div>
                        </div>
                    </div>
                    
                    <!-- 积分预估区域 -->
                    <div class="col-12 mt-3">
                        <div class="alert alert-info rounded-3" style="background: linear-gradient(135deg, #e3f2fd, #bbdefb); border: 1px solid #64b5f6;">
                            <div class="d-flex align-items-center">
                                <i class="fas fa-calculator fs-4 me-3 text-primary"></i>
                                <div style="line-height: 1.4;">
                                    <h5 class="mb-1 text-primary">积分预估</h5>
                                    <p class="mb-0" id="pointsEstimation" style="font-size: 1rem;">
                                        请选择账号等级和哈佛币数量查看预估积分
                                    </p>
                                    <div class="mt-1" id="processingTimeHint" style="display: none; background: rgba(255, 193, 7, 0.15); padding: 6px 10px; border-radius: 6px; border-left: 3px solid #ff9800;">
                                        <div class="d-flex align-items-start">
                                            <i class="fas fa-bolt me-2 mt-1 text-warning"></i>
                                            <span id="hintText" class="text-warning fw-bold" style="font-size: 0.95rem;"></span>
                                        </div>
                                    </div>
                                </div>
                            </div>
                        </div>
                    </div>
                </div>
                
                <!-- 游戏截图上传区域 -->
                <div class="mb-4">
                    <div class="d-flex align-items-center mb-3">
                        <i class="fas fa-images fs-5 me-2 text-primary"></i>
                        <h5 class="mb-0">上传游戏截图 <span class="text-danger fs-6">(必须上传全部5张)</span></h5>
                    </div>
                    
                    <div class="alert alert-info rounded-3 mb-4">
                        <div class="d-flex">
                            <i class="fas fa-info-circle me-3 mt-1"></i>
                            <div>
                                <p class="mb-0">请参考下方示例图上传您的游戏截图，确保截图清晰可见</p>
                                <p class="mb-0 small text-muted">支持格式: JPG, PNG, GIF | 每张图片最大5MB</p>
                            </div>
                        </div>
                    </div>
                    
                    <!-- 示例图展示 -->
                    <div class="mb-4">
                        <h6 class="mb-3 fw-bold"><i class="fas fa-eye me-2"></i>示例截图参考：</h6>
                        <div class="row g-3">
                            <?php for ($i = 1; $i <= 5; $i++): ?>
                            <div class="col-6 col-md-3">
                                <div class="card border-0 shadow-sm h-100">
                                    <div class="card-body p-2 text-center">
                                        <a href="<?= BASE_URL ?>assets/example<?= $i ?>.jpg" 
                                           data-lightbox="examples" 
                                           data-title="示例图<?= $i ?>" 
                                           title="点击查看大图">
                                            <img src="<?= BASE_URL ?>assets/example<?= $i ?>.jpg" 
                                                 class="img-fluid rounded-2 example-img" 
                                                 alt="示例图<?= $i ?>">
                                        </a>
                                        <p class="small mt-2 mb-0 text-muted">示例图<?= $i ?></p>
                                    </div>
                                </div>
                            </div>
                            <?php endfor; ?>
                        </div>
                    </div>
                    
                    <!-- 截图上传区域 -->
                    <h6 class="mb-3 fw-bold"><i class="fas fa-upload me-2"></i>上传您的截图：</h6>
                    <div class="row g-3" id="screenshotsContainer">
                        <?php for ($i = 1; $i <= 5; $i++): ?>
                        <div class="col-6 col-md-3">
                            <div class="card h-100 screenshot-card border-dashed">
                                <div class="card-body p-2 d-flex flex-column align-items-center">
                                    <div class="screenshot-preview mb-2 w-100 position-relative" id="screenshotPreview<?= $i ?>">
                                        <img src="<?= BASE_URL ?>assets/upload_placeholder.png" 
                                             class="img-fluid rounded-2 placeholder-img" 
                                             alt="上传截图">
                                        <div class="upload-overlay position-absolute top-0 start-0 w-100 h-100 d-flex align-items-center justify-content-center">
                                            <i class="fas fa-cloud-upload-alt fs-1 text-white opacity-75"></i>
                                        </div>
                                    </div>
                                    
                                    <div class="d-flex gap-2 w-100 mt-auto">
                                        <button type="button" class="btn btn-sm btn-outline-primary w-100 upload-btn" data-index="<?= $i ?>">
                                            <i class="fas fa-plus me-1"></i>选择
                                        </button>
                                        <button type="button" class="btn btn-sm btn-outline-danger w-100 remove-btn" data-index="<?= $i ?>" style="display: none;">
                                            <i class="fas fa-trash-alt me-1"></i>移除
                                        </button>
                                    </div>
                                    
                                    <input type="file" class="d-none" id="screenshotInput<?= $i ?>" name="screenshots[]" accept="image/*" required>
                                </div>
                            </div>
                        </div>
                        <?php endfor; ?>
                    </div>
                </div>

                <div class="d-grid mt-4">
                    <button type="submit" class="btn btn-primary btn-lg py-3 fw-bold rounded-2" id="submitBtn">
                        <i class="fas fa-paper-plane me-2"></i>提交任务
                    </button>
                </div>
            </form>
        </div>
    </div>
</div>

<!-- 拒绝审核示例模态框 -->
<div class="modal fade" id="rejectedExamplesModal" tabindex="-1" aria-labelledby="rejectedExamplesModalLabel" aria-hidden="true">
    <div class="modal-dialog modal-xl">
        <div class="modal-content">
            <div class="modal-header bg-danger text-white">
                <h5 class="modal-title" id="rejectedExamplesModalLabel">
                    <i class="fas fa-ban me-2"></i>拒绝审核示例
                </h5>
                <button type="button" class="btn-close btn-close-white" data-bs-dismiss="modal" aria-label="Close"></button>
            </div>
            <div class="modal-body">
                <div class="alert alert-warning">
                    <i class="fas fa-exclamation-triangle me-2"></i>
                    <strong>注意：</strong>以下是一些常见的审核失败原因，请确保您的任务提交符合所有要求
                </div>
                
                <div class="row g-4">
                    <!-- 示例1：等级不足 -->
                    <div class="col-md-6">
                        <div class="card h-100 border-danger">
                            <div class="card-header bg-danger text-white">
                                <h6 class="mb-0"><i class="fas fa-times-circle me-2"></i>等级不足</h6>
                            </div>
                            <div class="card-body">
                                <p class="card-text">提交的账号等级未达到要求（30级或33级）</p>
                                <div class="text-center">
                                    <img src="<?= BASE_URL ?>assets/rejected_example1.jpg" class="img-fluid rounded" alt="等级不足示例">
                                </div>
                            </div>
                        </div>
                    </div>
                    
                    <!-- 示例2：哈佛币不足 -->
                    <div class="col-md-6">
                        <div class="card h-100 border-danger">
                            <div class="card-header bg-danger text-white">
                                <h6 class="mb-0"><i class="fas fa-times-circle me-2"></i>哈佛币不足</h6>
                            </div>
                            <div class="card-body">
                                <p class="card-text">哈佛币数量未达到1000万的最低要求</p>
                                <div class="text-center">
                                    <img src="<?= BASE_URL ?>assets/rejected_example2.jpg" class="img-fluid rounded" alt="哈佛币不足示例">
                                </div>
                            </div>
                        </div>
                    </div>
                    
                    <!-- 示例3：装备不完整 -->
                    <div class="col-md-6">
                        <div class="card h-100 border-danger">
                            <div class="card-header bg-danger text-white">
                                <h6 class="mb-0"><i class="fas fa-times-circle me-2"></i>装备不完整</h6>
                            </div>
                            <div class="card-body">
                                <p class="card-text">缺少乌鲁鲁角色、AWM子弹、红甲修、血包或3x3体验卡</p>
                                <div class="text-center">
                                    <img src="<?= BASE_URL ?>assets/rejected_example3.jpg" class="img-fluid rounded" alt="装备不完整示例">
                                </div>
                            </div>
                        </div>
                    </div>
                    
                    <!-- 示例4：截图不清晰 -->
                    <div class="col-md-6">
                        <div class="card h-100 border-danger">
                            <div class="card-header bg-danger text-white">
                                <h6 class="mb-0"><i class="fas fa-times-circle me-2"></i>截图不清晰</h6>
                            </div>
                            <div class="card-body">
                                <p class="card-text">截图模糊、不完整或无法看清关键信息</p>
                                <div class="text-center">
                                    <img src="<?= BASE_URL ?>assets/rejected_example4.jpg" class="img-fluid rounded" alt="截图不清晰示例">
                                </div>
                            </div>
                        </div>
                    </div>
                    
                    <!-- 示例5：违规行为 -->
                    <div class="col-12">
                        <div class="card border-danger">
                            <div class="card-header bg-danger text-white">
                                <h6 class="mb-0"><i class="fas fa-times-circle me-2"></i>违规行为</h6>
                            </div>
                            <div class="card-body">
                                <p class="card-text">检测到杀人行为（只能打机密大坝长弓，不能杀人）</p>
                                <div class="text-center">
                                    <img src="<?= BASE_URL ?>assets/rejected_example5.jpg" class="img-fluid rounded" alt="违规行为示例">
                                </div>
                            </div>
                        </div>
                    </div>
                </div>
            </div>
            <div class="modal-footer">
                <button type="button" class="btn btn-secondary" data-bs-dismiss="modal">关闭</button>
            </div>
        </div>
    </div>
</div>

<!-- 引入 lightbox 用于查看大图 -->
<link href="https://cdnjs.cloudflare.com/ajax/libs/lightbox2/2.11.3/css/lightbox.min.css" rel="stylesheet">
<script src="https://cdnjs.cloudflare.com/ajax/libs/lightbox2/2.11.3/js/lightbox.min.js"></script>

<style>
/* 全局美化 */
.main-content {
    max-width: 1200px;
    margin: 0 auto;
    padding: 20px;
}

.card {
    border-radius: 12px;
    overflow: hidden;
    box-shadow: 0 5px 20px rgba(0, 0, 0, 0.08);
    border: none;
    margin-bottom: 30px;
}

.card-header {
    border-radius: 12px 12px 0 0 !important;
    padding: 15px 20px;
}

.bg-gradient-primary {
    background: linear-gradient(135deg, #4e73df, #224abe);
}

.card-body {
    padding: 25px;
}

/* 表单样式 */
.form-floating > label {
    padding-left: 2.5rem;
    color: #6c757d;
}

.form-floating > .form-control {
    padding-left: 3rem;
    height: calc(3.5rem + 2px);
    border-radius: 10px;
    border: 1px solid #ced4da;
    transition: all 0.3s;
}

.form-control {
    border: 1px solid #dee2e6;
    border-radius: 10px;
    padding: 1rem 1.25rem;
    transition: all 0.3s;
}

.form-control:focus {
    border-color: #4e73df;
    box-shadow: 0 0 0 0.25rem rgba(78, 115, 223, 0.25);
}

/* 单选按钮卡片样式 */
.card-radio-option {
    margin-bottom: 0;
}

.card-radio-option .form-check-input {
    position: absolute;
    opacity: 0;
    z-index: -1;
}

.card-radio-option .form-check-label {
    display: block;
    background-color: #f8f9fc;
    border: 2px solid #dee2e6;
    border-radius: 10px;
    cursor: pointer;
    transition: all 0.3s ease;
    height: 100%;
}

.card-radio-option .form-check-label:hover {
    background-color: #eef2f9;
    border-color: #4e73df;
    transform: translateY(-3px);
    box-shadow: 0 5px 15px rgba(78, 115, 223, 0.1);
}

.card-radio-option .form-check-input:checked + .form-check-label {
    background-color: rgba(78, 115, 223, 0.1);
    border-color: #4e73df;
    box-shadow: 0 0 0 3px rgba(78, 115, 223, 0.25);
}

/* 新增禁用状态样式 */
.disabled-option {
    opacity: 0.6;
    pointer-events: none;
}

.disabled-option .form-check-label {
    background-color: #f5f5f5 !important;
    border-color: #ddd !important;
    cursor: not-allowed;
}

.disabled-option .form-check-label:hover {
    transform: none !important;
    box-shadow: none !important;
    border-color: #ddd !important;
}

/* 截图卡片样式 */
.screenshot-card {
    transition: all 0.3s ease;
    border: 2px dashed #dee2e6;
    border-radius: 10px;
    background-color: #f8f9fc;
    height: 100%;
}

.screenshot-card:hover {
    border-color: #4e73df;
    transform: translateY(-5px);
    box-shadow: 0 8px 15px rgba(78, 115, 223, 0.1);
}

.border-dashed {
    border-style: dashed;
}

.screenshot-preview {
    height: 150px;
    border-radius: 8px;
    background-color: #f0f3f9;
    overflow: hidden;
    position: relative;
    cursor: pointer;
    border: 1px solid #e2e8f0;
}

.placeholder-img {
    opacity: 0.3;
    object-fit: cover;
    width: 100%;
    height: 100%;
}

.upload-overlay {
    background: rgba(78, 115, 223, 0.2);
    opacity: 0;
    transition: opacity 0.3s;
    display: flex;
    align-items: center;
    justify-content: center;
}

.screenshot-preview:hover .upload-overlay {
    opacity: 1;
}

.upload-btn, .remove-btn {
    border-radius: 8px;
    transition: all 0.2s;
    padding: 0.5rem;
    font-size: 0.9rem;
}

.upload-btn:hover {
    background: #4e73df;
    color: white;
}

.remove-btn:hover {
    background: #e74a3b;
    color: white;
}

/* 示例图片样式 */
.example-img {
    border-radius: 8px;
    transition: all 0.3s ease;
    cursor: pointer;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.05);
    height: 120px;
    object-fit: cover;
}

.example-img:hover {
    transform: scale(1.03);
    box-shadow: 0 8px 15px rgba(0, 0, 0, 0.1);
}

/* 提交按钮 */
#submitBtn {
    border-radius: 12px;
    font-size: 1.1rem;
    letter-spacing: 0.5px;
    transition: all 0.3s;
    box-shadow: 0 4px 10px rgba(78, 115, 223, 0.3);
    padding: 1rem;
    margin-top: 20px;
}

#submitBtn:hover {
    transform: translateY(-3px);
    box-shadow: 0 7px 15px rgba(78, 115, 223, 0.4);
}

/* 加载动画 */
.submit-loading {
    position: relative;
    pointer-events: none;
}

.submit-loading::after {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    width: 24px;
    height: 24px;
    margin: -12px 0 0 -12px;
    border: 3px solid rgba(255, 255, 255, 0.3);
    border-top: 3px solid #fff;
    border-radius: 50%;
    animation: spin 1s linear infinite;
}

@keyframes spin {
    0% { transform: rotate(0deg); }
    100% { transform: rotate(360deg); }
}

/* 必填项标记 */
.text-danger {
    color: #e74a3b !important;
}

/* 表单验证样式 */
.form-control:invalid, .form-control.is-invalid {
    border-color: #e74a3b;
}

.form-control:invalid:focus, .form-control.is-invalid:focus {
    box-shadow: 0 0 0 0.25rem rgba(231, 74, 59, 0.25);
}

.invalid-feedback {
    display: none;
    width: 100%;
    margin-top: 0.25rem;
    font-size: .875em;
    color: #e74a3b;
}

/* 截图验证提示 */
.screenshot-validation {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    background: rgba(231, 74, 59, 0.8);
    color: white;
    font-size: 12px;
    padding: 2px 5px;
    text-align: center;
    border-radius: 0 0 8px 8px;
}

/* 积分预估区域样式优化 */
.alert-info {
    padding: 1rem 1.25rem;
    border-radius: 10px;
}

.text-primary {
    color: #1e88e5 !important;
}

.text-warning {
    color: #ff9800 !important;
}

.text-success {
    color: #28a745 !important;
    font-weight: bold;
}

/* 拒绝审核示例按钮样式 */
#viewRejectedExamplesBtn {
    border-radius: 8px;
    font-weight: 600;
    transition: all 0.3s;
}

#viewRejectedExamplesBtn:hover {
    background-color: #dc3545;
    color: white;
    transform: translateY(-2px);
    box-shadow: 0 4px 8px rgba(220, 53, 69, 0.3);
}

/* 拒绝示例模态框样式 */
.modal-xl {
    max-width: 1200px;
}

.modal-content {
    border-radius: 15px;
    overflow: hidden;
    box-shadow: 0 10px 40px rgba(0, 0, 0, 0.2);
}

.modal-header.bg-danger {
    background: linear-gradient(135deg, #dc3545, #c82333) !important;
}

.modal-body .card {
    transition: all 0.3s ease;
}

.modal-body .card:hover {
    transform: translateY(-5px);
    box-shadow: 0 8px 20px rgba(0, 0, 0, 0.15);
}

.modal-body .card.border-danger {
    border-width: 2px;
}

.modal-body img {
    max-height: 200px;
    object-fit: cover;
}

/* 响应式调整 */
@media (max-width: 768px) {
    .screenshot-preview {
        height: 120px;
    }
    
    .form-floating > .form-control {
        padding-left: 2.5rem;
    }
    
    .form-floating > label {
        padding-left: 2rem;
    }
    
    .alert-info {
        padding: 0.8rem 1rem;
    }
    
    #pointsEstimation {
        font-size: 0.95rem !important;
    }
    
    .card-radio-option .form-check-label {
        padding: 15px;
    }
    
    .example-img {
        height: 100px;
    }
    
    .modal-xl {
        max-width: 95%;
        margin: 10px auto;
    }
}

/* 自定义SweetAlert样式 */
.sweetalert-popup {
    border-radius: 15px !important;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.2) !important;
}

.sweetalert-title {
    font-size: 1.5rem !important;
    font-weight: 600 !important;
}

.sweetalert-html-container {
    font-size: 1.1rem !important;
    line-height: 1.6 !important;
}

.sweetalert-confirm-btn {
    border-radius: 8px !important;
    padding: 10px 25px !important;
    font-size: 1rem !important;
}
</style>

<script>
// 积分配置数据
const pointsConfig = <?= json_encode($points_config) ?>;

// 任务规则状态
const taskRules = <?= $js_task_rules ?>;

// +++ 新增：检查账号状态的函数 +++
function checkAccountStatus(account) {
    return new Promise((resolve, reject) => {
        const xhr = new XMLHttpRequest();
        xhr.open('POST', 'check_account_status.php', true);
        xhr.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
        xhr.onreadystatechange = function() {
            if (xhr.readyState === 4) {
                if (xhr.status === 200) {
                    try {
                        const response = JSON.parse(xhr.responseText);
                        resolve(response);
                    } catch (e) {
                        reject('解析响应失败');
                    }
                } else {
                    reject('请求失败');
                }
            }
        };
        xhr.send('account=' + encodeURIComponent(account));
    });
}

// 根据任务规格计算预估积分
function calculateEstimatedPoints(level, coinAmount) {
    // 检查任务规则是否开启
    const ruleKey = `${level}_${coinAmount}`;
    if (!taskRules[ruleKey]) {
        return {
            basePoints: 0,
            deductPoints: 0,
            estimatedPoints: 0,
            status: 'disabled'
        };
    }
    
    // 定义规格映射
    const specMap = {
        '30_10000000': { base: 'points_30_1000w', deduct: 'deduct_30_1000w' },
        '30_15000000': { base: 'points_30_1500w', deduct: 'deduct_30_1500w' },
        '30_20000000': { base: 'points_30_2000w', deduct: 'deduct_30_2000w' },
        '33_10000000': { base: 'points_33_1000w', deduct: 'deduct_33_1000w' },
        '33_15000000': { base: 'points_33_1500w', deduct: 'deduct_33_1500w' },
        '33_20000000': { base: 'points_33_2000w', deduct: 'deduct_33_2000w' }
    };
    
    const spec = specMap[ruleKey];
    
    if (!spec) {
        return {
            basePoints: 0,
            deductPoints: 0,
            estimatedPoints: 0,
            status: 'invalid'
        };
    }
    
    // 获取对接积分和扣除积分
    const basePoints = parseInt(pointsConfig.group_points[spec.base] || 0);
    const deductPoints = parseInt(pointsConfig.agent_deductions[spec.deduct] || 0);
    
    return {
        basePoints: basePoints,
        deductPoints: deductPoints,
        estimatedPoints: basePoints - deductPoints,
        status: basePoints > 0 ? 'valid' : 'no_setting'
    };
}

// 审核时间提示映射
const timeHints = {
    '30_10000000': '🔥 预计12小时内审核结算（高热度任务）',
    '30_15000000': '⏳ 预计60小时内审核结算（超低等热度任务）',
    '30_20000000': '⏳ 预计24小时内审核结算（低热度任务）',
    '33_10000000': '⚡ 预计24小时内审核结算（中等热度任务）',
    '33_15000000': '🔥 预计12小时内审核结算（高热度任务）',
    '33_20000000': '⏳ 预计24小时内审核结算（中等热度任务）'
};

// 更新积分预估显示
function updatePointsEstimation() {
    const levelSelected = document.querySelector('input[name="level"]:checked');
    const coinSelected = document.querySelector('input[name="coin"]:checked');
    const estimationElement = document.getElementById('pointsEstimation');
    const hintElement = document.getElementById('processingTimeHint');
    const hintTextElement = document.getElementById('hintText');
    
    // 重置提示
    hintElement.style.display = 'none';
    
    if (!levelSelected || !coinSelected) {
        estimationElement.innerHTML = '请选择账号等级和哈佛币数量查看预估积分';
        return;
    }
    
    const level = levelSelected.value;
    const coinAmount = parseInt(coinSelected.value);
    const result = calculateEstimatedPoints(level, coinAmount);
    
    if (result.status === 'disabled') {
        estimationElement.innerHTML = `
            <div class="d-flex align-items-center fw-bold text-danger">
                <i class="fas fa-ban me-2"></i>
                <span>该任务规则已关闭，不可选择</span>
            </div>
        `;
        return;
    }
    
    if (result.status === 'invalid') {
        estimationElement.innerHTML = '无效的任务规格';
        return;
    }
    
    if (result.status === 'no_setting') {
        estimationElement.innerHTML = '当前任务规格未设置对接积分，请联系管理员';
        return;
    }
    
    // 显示积分预估
    estimationElement.innerHTML = `
        <div class="d-flex align-items-center fw-bold" style="gap: 5px;">
            <span>预估获得：</span>
            <strong class="text-success" style="font-size: 1.1em;">${result.estimatedPoints.toLocaleString()}</strong>
        </div>
    `;
    
    // 显示热度提示
    const specKey = `${level}_${coinAmount}`;
    if (timeHints[specKey]) {
        hintTextElement.textContent = timeHints[specKey];
        hintElement.style.display = 'block';
    }
}

document.addEventListener('DOMContentLoaded', function() {
    // 页面加载后显示重要提示
    setTimeout(function() {
        Swal.fire({
            title: '<strong class="text-danger">封号相关问题</strong>',
            html: `<div class="text-start">
                <p class="mb-3">由于三角洲的封号检测系统问题<strong class="text-danger">责任分化</strong>，请特别注意以下事项：</p>
                <ol class="mb-3">
                     <li>同一天不要反复登录切换多个三角洲账号</li>
                    <li>每次完成账号交单后删除账号登录记录</li>
                    <li>每次登录账号时开启游戏加速器</li>
                </ol>
                <div class="alert alert-danger rounded-3 mb-0">
                    <i class="fas fa-exclamation-triangle me-2"></i>
                    <strong>特别注意：</strong>登录未产生战绩被封均需要打手承担！一定要禁止使用第三方工具！
                </div>
            </div>`,
            icon: 'warning',
            iconColor: '#f39c12',
            confirmButtonText: '我已了解并会遵守',
            confirmButtonColor: '#3085d6',
            width: '800px',
            customClass: {
                popup: 'sweetalert-popup',
                title: 'sweetalert-title',
                htmlContainer: 'sweetalert-html-container',
                confirmButton: 'sweetalert-confirm-btn'
            }
        });
    }, 1500);

    const form = document.getElementById('taskForm');
    const submitBtn = document.getElementById('submitBtn');
    
    // 为等级和哈佛币选项添加事件监听器
    document.querySelectorAll('input[name="level"], input[name="coin"]').forEach(input => {
        input.addEventListener('change', updatePointsEstimation);
    });
    
    // 当用户选择号源时更新隐藏字段
    document.querySelectorAll('input[name="product_id"]').forEach(input => {
        input.addEventListener('change', function() {
            const productName = this.getAttribute('data-name');
            document.getElementById('productNameInput').value = productName;
        });
    });
    
    // 查看拒绝审核示例按钮点击事件
    document.getElementById('viewRejectedExamplesBtn').addEventListener('click', function() {
        const rejectedExamplesModal = new bootstrap.Modal(document.getElementById('rejectedExamplesModal'));
        rejectedExamplesModal.show();
    });
    
    // 检查是否有预填充的商品名称
    const prefillProduct = "<?= $prefill_product ?>";
    if (prefillProduct) {
        // 默认选择匹配的号源（如果有）
        const matchingProduct = document.querySelector(`input[name="product_id"][data-name="${prefillProduct}"]`);
        if (matchingProduct) {
            matchingProduct.checked = true;
            document.getElementById('productNameInput').value = prefillProduct;
            
            // 显示成功提示
            Swal.fire({
                icon: 'success',
                title: '数据已预填充',
                text: '账号、密码和号源已自动填充，请检查并提交',
                confirmButtonColor: '#3085d6',
                customClass: {
                    popup: 'sweetalert-popup',
                    title: 'sweetalert-title',
                    htmlContainer: 'sweetalert-html-container',
                    confirmButton: 'sweetalert-confirm-btn'
                }
            });
        } else {
            // 显示警告提示
            Swal.fire({
                icon: 'warning',
                title: '部分数据已填充',
                text: `账号和密码已填充，但未找到匹配的号源: ${prefillProduct}`,
                confirmButtonColor: '#3085d6',
                customClass: {
                    popup: 'sweetalert-popup',
                    title: 'sweetalert-title',
                    htmlContainer: 'sweetalert-html-container',
                    confirmButton: 'sweetalert-confirm-btn'
                }
            });
        }
    }
    
    // 添加密码显示/隐藏功能
    const passwordInput = document.getElementById('taskPassword');
    const togglePassword = document.getElementById('togglePassword');
    
    if (passwordInput && togglePassword) {
        togglePassword.addEventListener('click', function() {
            const type = passwordInput.getAttribute('type') === 'password' ? 'text' : 'password';
            passwordInput.setAttribute('type', type);
            this.innerHTML = type === 'password' ? '<i class="fas fa-eye"></i>' : '<i class="fas fa-eye-slash"></i>';
        });
    }
    
    // 表单提交处理
    form.addEventListener('submit', function(e) {
        e.preventDefault();
        
        // 验证所有必填项
        let errors = [];
        const accountInput = document.getElementById('taskAccount');
        const passwordInput = document.getElementById('taskPassword');
        const levelSelected = document.querySelector('input[name="level"]:checked');
        const coinSelected = document.querySelector('input[name="coin"]:checked');
        const productSelected = document.querySelector('input[name="product_id"]:checked');
        
        // 检查账号
        if (!accountInput.value.trim()) {
            errors.push('请填写游戏账号');
            accountInput.classList.add('is-invalid');
        } else {
            accountInput.classList.remove('is-invalid');
        }
        
        // 检查密码
        if (!passwordInput.value.trim()) {
            errors.push('请填写账号密码');
            passwordInput.classList.add('is-invalid');
        } else {
            passwordInput.classList.remove('is-invalid');
        }
        
        // 检查号源选择
        if (!productSelected) {
            errors.push('请选择号源');
            document.querySelectorAll('.card-radio-option .form-check-label').forEach(el => {
                el.style.borderColor = '#e74a3b';
            });
        } else {
            document.querySelectorAll('.card-radio-option .form-check-label').forEach(el => {
                el.style.borderColor = '';
            });
        }
        
        // 检查等级选择
        if (!levelSelected) {
            errors.push('请选择账号等级');
            document.querySelectorAll('.level-radio-option .form-check-label').forEach(el => {
                el.style.borderColor = '#e74a3b';
            });
        } else {
            document.querySelectorAll('.level-radio-option .form-check-label').forEach(el => {
                el.style.borderColor = '';
            });
        }
        
        // 检查哈佛币选择
        if (!coinSelected) {
            errors.push('请选择哈佛币数量');
            document.querySelectorAll('.card-radio-option .form-check-label').forEach(el => {
                el.style.borderColor = '#e74a3b';
            });
        } else {
            document.querySelectorAll('.card-radio-option .form-check-label').forEach(el => {
                el.style.borderColor = '';
            });
        }
        
        // 检查任务规则是否开启
        if (levelSelected && coinSelected) {
            const level = levelSelected.value;
            const coinAmount = coinSelected.value;
            const ruleKey = `${level}_${coinAmount}`;
            
            if (!taskRules[ruleKey]) {
                errors.push(`您选择的规则（${level}级${coinAmount/10000000}千万）已关闭，请选择其他规则`);
                
                // 高亮显示相关选项
                levelSelected.parentElement.style.borderColor = '#e74a3b';
                coinSelected.parentElement.style.borderColor = '#e74a3b';
            }
        }
        
        // 检查截图
        let screenshotErrors = 0;
        for (let i = 1; i <= 5; i++) {
            const fileInput = document.getElementById(`screenshotInput${i}`);
            const preview = document.getElementById(`screenshotPreview${i}`);
            
            if (!fileInput.files || fileInput.files.length === 0) {
                preview.classList.add('is-invalid');
                screenshotErrors++;
                
                if (!preview.querySelector('.screenshot-validation')) {
                    const validationEl = document.createElement('div');
                    validationEl.className = 'screenshot-validation';
                    validationEl.textContent = '请上传截图';
                    preview.appendChild(validationEl);
                }
            } else {
                preview.classList.remove('is-invalid');
                const validationEl = preview.querySelector('.screenshot-validation');
                if (validationEl) validationEl.remove();
            }
        }
        
        if (screenshotErrors > 0) {
            errors.push(`请上传全部5张截图 (当前缺少${screenshotErrors}张)`);
        }
        
        // 如果有错误
        if (errors.length > 0) {
            Swal.fire({
                icon: 'error',
                title: '表单不完整',
                html: `请完成以下必填项：<br><br>• ${errors.join('<br>• ')}`,
                confirmButtonColor: '#3085d6',
                customClass: {
                    popup: 'sweetalert-popup',
                    title: 'sweetalert-title',
                    htmlContainer: 'sweetalert-html-container',
                    confirmButton: 'sweetalert-confirm-btn'
                }
            });
            return false;
        }
        
        // +++ 新增：检查账号状态 +++
        submitBtn.disabled = true;
        submitBtn.classList.add('submit-loading');
        submitBtn.innerHTML = '<i class="fas fa-spinner fa-spin me-2"></i>检查账号状态...';
        
        checkAccountStatus(accountInput.value.trim())
            .then(response => {
                if (response.exists) {
                    // 账号已存在已通过或已自留的任务
                    const statusText = response.status === 'approved' ? '已通过' : '已自留';
                    Swal.fire({
                        icon: 'error',
                        title: '账号已存在',
                        html: `该账号 <strong>${accountInput.value.trim()}</strong> 已经存在${statusText}的任务，无法重复提交！<br><br>原因：该账号已通过或者被其他用户提交并${statusText}审核。`,
                        confirmButtonColor: '#3085d6',
                        customClass: {
                            popup: 'sweetalert-popup',
                            title: 'sweetalert-title',
                            htmlContainer: 'sweetalert-html-container',
                            confirmButton: 'sweetalert-confirm-btn'
                        }
                    });
                    resetSubmitButton();
                    return false;
                } else {
                    // 账号状态正常，继续提交
                    submitBtn.innerHTML = '<i class="fas fa-spinner fa-spin me-2"></i>提交中...';
                    
                    // 创建FormData对象
                    const formData = new FormData(form);
                    
                    // 发送AJAX请求
                    return fetch(form.action, {
                        method: 'POST',
                        body: formData
                    });
                }
            })
            .then(response => {
                if (!response) return; // 如果检查失败已经返回
                
                if (response.redirected) {
                    window.location.href = response.url;
                } else {
                    return response.text();
                }
            })
            .then(data => {
                if (data) {
                    try {
                        const result = JSON.parse(data);
                        if (result.success) {
                            Swal.fire({
                                icon: 'success',
                                title: '提交成功',
                                text: result.message,
                                confirmButtonColor: '#3085d6',
                                customClass: {
                                    popup: 'sweetalert-popup',
                                    title: 'sweetalert-title',
                                    htmlContainer: 'sweetalert-html-container',
                                    confirmButton: 'sweetalert-confirm-btn'
                                }
                            }).then(() => {
                                window.location.href = '<?= BASE_URL ?>tasks.php';
                            });
                        } else {
                            Swal.fire({
                                icon: 'error',
                                title: '提交失败',
                                text: result.message,
                                confirmButtonColor: '#3085d6',
                                customClass: {
                                    popup: 'sweetalert-popup',
                                    title: 'sweetalert-title',
                                    htmlContainer: 'sweetalert-html-container',
                                    confirmButton: 'sweetalert-confirm-btn'
                                }
                            });
                            resetSubmitButton();
                        }
                    } catch (e) {
                        console.log('Response:', data);
                        window.location.reload();
                    }
                }
            })
            .catch(error => {
                console.error('提交错误:', error);
                Swal.fire({
                    icon: 'error',
                    title: '网络错误',
                    text: '提交过程中发生错误，请重试',
                    confirmButtonColor: '#3085d6',
                    customClass: {
                        popup: 'sweetalert-popup',
                        title: 'sweetalert-title',
                        htmlContainer: 'sweetalert-html-container',
                        confirmButton: 'sweetalert-confirm-btn'
                    }
                });
                resetSubmitButton();
            });
        
        return false;
    });
    
    function resetSubmitButton() {
        submitBtn.disabled = false;
        submitBtn.classList.remove('submit-loading');
        submitBtn.innerHTML = '<i class="fas fa-paper-plane me-2"></i>提交任务';
    }
    
    // 初始化截图上传功能
    const uploadButtons = document.querySelectorAll('.upload-btn');
    const removeButtons = document.querySelectorAll('.remove-btn');
    
    uploadButtons.forEach(button => {
        button.addEventListener('click', function() {
            const index = this.getAttribute('data-index');
            const fileInput = document.getElementById(`screenshotInput${index}`);
            fileInput.click();
        });
    });
    
    for (let i = 1; i <= 5; i++) {
        const fileInput = document.getElementById(`screenshotInput${i}`);
        const preview = document.getElementById(`screenshotPreview${i}`);
        const uploadBtn = document.querySelector(`.upload-btn[data-index="${i}"]`);
        const removeBtn = document.querySelector(`.remove-btn[data-index="${i}"]`);
        
        fileInput.addEventListener('change', function(e) {
            if (this.files && this.files[0]) {
                const file = this.files[0];
                
                // 验证文件类型
                const validTypes = ['image/jpeg', 'image/png', 'image/gif'];
                if (!validTypes.includes(file.type)) {
                    Swal.fire({
                        icon: 'error',
                        title: '文件类型错误',
                        text: '请选择图片文件 (JPG, PNG, GIF)',
                        confirmButtonColor: '#3085d6',
                        customClass: {
                            popup: 'sweetalert-popup',
                            title: 'sweetalert-title',
                            htmlContainer: 'sweetalert-html-container',
                            confirmButton: 'sweetalert-confirm-btn'
                        }
                    });
                    this.value = '';
                    return;
                }
                
                // 验证文件大小
                if (file.size > 5 * 1024 * 1024) {
                    Swal.fire({
                        icon: 'error',
                        title: '文件太大',
                        text: '图片大小不能超过5MB',
                        confirmButtonColor: '#3085d6',
                        customClass: {
                            popup: 'sweetalert-popup',
                            title: 'sweetalert-title',
                            htmlContainer: 'sweetalert-html-container',
                            confirmButton: 'sweetalert-confirm-btn'
                        }
                    });
                    this.value = '';
                    return;
                }
                
                const reader = new FileReader();
                
                reader.onload = function(e) {
                    preview.classList.remove('is-invalid');
                    const validationEl = preview.querySelector('.screenshot-validation');
                    if (validationEl) validationEl.remove();
                    
                    preview.innerHTML = `
                        <img src="${e.target.result}" class="img-fluid rounded-2" alt="截图预览">
                        <div class="upload-overlay position-absolute top-0 start-0 w-100 h-100 d-flex align-items-center justify-content-center">
                            <i class="fas fa-sync-alt fs-1 text-white opacity-75"></i>
                        </div>
                    `;
                    uploadBtn.style.display = 'none';
                    removeBtn.style.display = 'block';
                }
                
                reader.readAsDataURL(file);
            }
        });
        
        preview.addEventListener('click', function() {
            fileInput.click();
        });
    }
    
    removeButtons.forEach(button => {
        button.addEventListener('click', function() {
            const index = this.getAttribute('data-index');
            const fileInput = document.getElementById(`screenshotInput${index}`);
            const preview = document.getElementById(`screenshotPreview${index}`);
            const uploadBtn = document.querySelector(`.upload-btn[data-index="${index}"]`);
            
            fileInput.value = '';
            preview.innerHTML = `
                <img src="<?= BASE_URL ?>assets/upload_placeholder.png" class="img-fluid rounded-2 placeholder-img" alt="上传截图">
                <div class="upload-overlay position-absolute top-0 start-0 w-100 h-100 d-flex align-items-center justify-content-center">
                    <i class="fas fa-cloud-upload-alt fs-1 text-white opacity-75"></i>
                </div>
            `;
            this.style.display = 'none';
            uploadBtn.style.display = 'block';
            
            const validationEl = document.createElement('div');
            validationEl.className = 'screenshot-validation';
            validationEl.textContent = '请上传截图';
            preview.appendChild(validationEl);
            preview.classList.add('is-invalid');
        });
    });
    
    // 配置lightbox
    lightbox.option({
        'resizeDuration': 200,
        'wrapAround': true,
        'showImageNumberLabel': true,
        'positionFromTop': 100
    });
    
    // 实时验证输入字段
    document.getElementById('taskAccount').addEventListener('input', function() {
        if (this.value.trim()) {
            this.classList.remove('is-invalid');
        }
    });
    
    document.getElementById('taskPassword').addEventListener('input', function() {
        if (this.value.trim()) {
            this.classList.remove('is-invalid');
        }
    });
    
    // 实时验证选择
    document.querySelectorAll('input[name="product_id"]').forEach(input => {
        input.addEventListener('change', function() {
            if (document.querySelector('input[name="product_id"]:checked')) {
                document.querySelectorAll('.card-radio-option .form-check-label').forEach(el => {
                    el.style.borderColor = '';
                });
            }
        });
    });
    
    document.querySelectorAll('input[name="level"]').forEach(input => {
        input.addEventListener('change', function() {
            if (document.querySelector('input[name="level"]:checked')) {
                document.querySelectorAll('.level-radio-option .form-check-label').forEach(el => {
                    el.style.borderColor = '';
                });
            }
        });
    });
    
    document.querySelectorAll('input[name="coin"]').forEach(input => {
        input.addEventListener('change', function() {
            if (document.querySelector('input[name="coin"]:checked')) {
                document.querySelectorAll('.card-radio-option .form-check-label').forEach(el => {
                    el.style.borderColor = '';
                });
            }
        });
    });
});
</script>

<?php
require_once __DIR__ . '/../includes/footer.php';