<?php
require_once 'config.php';

$book_id = isset($_GET['id']) ? (int)$_GET['id'] : 0;
if(!$book_id) {
    die("Аудиокнига не указана");
}

$stmt = $pdo->prepare("SELECT * FROM audiobooks WHERE id = ? AND is_active = 1");
$stmt->execute([$book_id]);
$book = $stmt->fetch(PDO::FETCH_ASSOC);

if(!$book) {
    die("Аудиокнига не найдена");
}

// Проверяем, авторизован ли пользователь для прослушивания
$can_listen = isLoggedIn();
$already_listened = false;

if($can_listen) {
    $checkStmt = $pdo->prepare("SELECT id FROM listen_history WHERE user_id = ? AND book_id = ?");
    $checkStmt->execute([$_SESSION['user_id'], $book_id]);
    $already_listened = $checkStmt->fetch();
}

// Обработка добавления в историю прослушивания
if(isset($_GET['listen']) && $_GET['listen'] == 1) {
    if(!isLoggedIn()) {
        header("Location: login.php");
        exit;
    } else {
        // Добавляем в историю, если ещё не было
        if(!$already_listened) {
            $insertStmt = $pdo->prepare("INSERT INTO listen_history (user_id, book_id) VALUES (?, ?)");
            $insertStmt->execute([$_SESSION['user_id'], $book_id]);
        }
        // Перенаправляем к аудиоплееру
        header("Location: book.php?id=$book_id&player=1");
        exit;
    }
}
?>
<!DOCTYPE html>
<html lang="ru">
<head>
    <meta charset="UTF-8">
    <title><?= h($book['title']) ?> - слушать аудиокнигу онлайн</title>
    <meta name="description" content="Аудиокнига «<?= h($book['title']) ?>» <?= h($book['author']) ?>. Слушать онлайн в хорошем качестве.">
    <style>
        * { margin: 0; padding: 0; box-sizing: border-box; }
        body { font-family: 'Segoe UI', Arial, sans-serif; background: #f3f4f6; }
        header, footer { background: #0f172a; color: #f8fafc; padding: 1rem; text-align: center; }
        nav a { color: #f8fafc; margin: 0 15px; text-decoration: none; }
        nav a:hover { color: #a855f7; }
        main { max-width: 1200px; margin: 30px auto; padding: 0 20px; min-height: 60vh; }
        .book-container { display: flex; gap: 40px; flex-wrap: wrap; }
        .book-cover { flex: 0.8; background: #fff; border-radius: 24px; padding: 25px; box-shadow: 0 10px 30px rgba(0,0,0,0.08); text-align: center; }
        .book-cover img { width: 100%; max-width: 300px; border-radius: 16px; box-shadow: 0 10px 20px rgba(0,0,0,0.1); }
        .book-info { flex: 1.2; background: #fff; border-radius: 24px; padding: 30px; box-shadow: 0 10px 30px rgba(0,0,0,0.08); }
        .player-section { background: #fff; border-radius: 24px; padding: 30px; margin-top: 30px; box-shadow: 0 10px 30px rgba(0,0,0,0.08); }
        .book-title { font-size: 2rem; font-weight: bold; color: #0f172a; margin-bottom: 10px; }
        .book-author { font-size: 1.2rem; color: #7c3aed; margin-bottom: 15px; }
        .genre-badge { display: inline-block; background: #e2e8f0; color: #475569; padding: 5px 15px; border-radius: 20px; font-size: 0.85rem; margin-bottom: 20px; }
        .info-row { margin: 15px 0; padding: 10px 0; border-bottom: 1px solid #e2e8f0; }
        .info-label { font-weight: bold; color: #0f172a; width: 120px; display: inline-block; }
        .description { margin: 20px 0; line-height: 1.8; color: #475569; }
        .btn-listen { background: #7c3aed; color: #fff; border: none; padding: 15px 40px; font-size: 1.2rem; border-radius: 50px; cursor: pointer; transition: 0.3s; font-weight: bold; width: 100%; }
        .btn-listen:hover { background: #6d28d9; transform: scale(1.02); }
        .btn-listen:disabled { background: #94a3b8; cursor: not-allowed; }
        .auth-warning { background: #fff3e0; padding: 20px; border-radius: 16px; text-align: center; margin: 20px 0; }
        .btn-back { display: inline-block; background: #64748b; color: #fff; padding: 10px 20px; text-decoration: none; border-radius: 8px; margin-bottom: 20px; }
        audio { width: 100%; margin-top: 20px; border-radius: 40px; }
        .player-title { font-size: 1.3rem; font-weight: bold; margin-bottom: 15px; color: #0f172a; }
        @media (max-width: 768px) { .book-container { flex-direction: column; } .book-cover { text-align: center; } }
    </style>
</head>
<body>
<header>
    <div style="display: flex; justify-content: space-between; align-items: center; flex-wrap: wrap;">
        <h1 style="margin: 0;">🎧 Аудиокниги Онлайн</h1>
        <nav>
            <a href="index.php">📚 Каталог</a>
            <a href="my_history.php">📜 История</a>
            <?php if(isLoggedIn()): ?>
                <a href="logout.php">🚪 Выйти (<?= h($_SESSION['username']) ?>)</a>
            <?php else: ?>
                <a href="login.php">🔐 Вход</a>
                <a href="register.php">📝 Регистрация</a>
            <?php endif; ?>
        </nav>
    </div>
</header>

<main>
    <a href="index.php" class="btn-back">← Назад к каталогу</a>
    
    <div class="book-container">
        <div class="book-cover">
            <img src="<?= h($book['cover_image'] ?: 'img/placeholder.jpg') ?>" alt="<?= h($book['title']) ?>">
        </div>
        <div class="book-info">
            <div class="book-title"><?= h($book['title']) ?></div>
            <div class="book-author">✍️ <?= h($book['author']) ?></div>
            <div><span class="genre-badge">🎭 <?= h($book['genre']) ?></span></div>
            
            <div class="info-row">
                <span class="info-label">🎙️ Чтец:</span>
                <span><?= h($book['narrator'] ?: 'Не указан') ?></span>
            </div>
            <div class="info-row">
                <span class="info-label">⏱️ Длительность:</span>
                <span><?= formatDuration($book['duration']) ?></span>
            </div>
            <div class="info-row">
                <span class="info-label">📅 Год выпуска:</span>
                <span><?= $book['year'] ?: 'Не указан' ?></span>
            </div>
            
            <div class="description">
                <strong>📖 Описание:</strong><br>
                <?= nl2br(h($book['description'])) ?>
            </div>
        </div>
    </div>
    
    <div class="player-section">
        <?php if($can_listen): ?>
            <?php if(isset($_GET['player']) && $_GET['player'] == 1 && $book['audio_file']): ?>
                <div class="player-title">🎧 Сейчас играет: <?= h($book['title']) ?></div>
                <audio controls autoplay>
                    <source src="<?= h($book['audio_file']) ?>" type="audio/mpeg">
                    Ваш браузер не поддерживает аудиоплеер.
                </audio>
            <?php else: ?>
                <form method="GET" action="">
                    <input type="hidden" name="id" value="<?= $book_id ?>">
                    <button type="submit" name="listen" value="1" class="btn-listen">🎧 Начать прослушивание</button>
                </form>
            <?php endif; ?>
        <?php else: ?>
            <div class="auth-warning">
                🔒 <strong>Прослушивание доступно только авторизованным пользователям.</strong><br>
                <a href="login.php">Войти</a> или <a href="register.php">Зарегистрироваться</a>, чтобы слушать аудиокниги.
            </div>
            <div class="description" style="text-align: center; color: #64748b;">
                Неавторизованные пользователи могут видеть описание книги, но не могут слушать.
            </div>
        <?php endif; ?>
    </div>
</main>

<footer>
    <p>&copy; 2025 Аудиокниги Онлайн. Слушайте с удовольствием.</p>
</footer>
</body>
</html>