<?php
declare(strict_types=1);
require_once dirname(__DIR__) . '/sonocamara-private/bootstrap.php';

$route = $_GET['route'] ?? 'home';
if ($route === 'memory') {
    $memory = memory_by_slug((string)($_GET['slug'] ?? ''));
    if (!$memory) {
        http_response_code(404);
        $route = '404';
    }
}
$cards = memory_cards();

function header_html(string $title = 'Gustavo "Tavo" Lamas — 1942–2026'): void
{
    ?>
<!doctype html>
<html lang="es">
<head>
    <meta charset="utf-8">
    <meta name="viewport" content="width=device-width, initial-scale=1">
    <meta name="description" content="Memoria, música y señal de Gustavo Tavo Lamas. Sonocámara Radio Online.">
    <title><?= e($title) ?></title>
    <link rel="preconnect" href="https://fonts.googleapis.com">
    <link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
    <link href="https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,400;0,500;0,600;1,400;1,500&family=Jost:wght@300;400;500&display=swap" rel="stylesheet">
    <link rel="stylesheet" href="<?= e(base_url('assets/css/styles.css')) ?>">
</head>
<body data-base="<?= e(base_url()) ?>" data-stream="<?= e((string)cfg('stream_url')) ?>">
<header class="radio-bar">
    <a class="brand" href="<?= e(base_url()) ?>">Sonocámara Radio</a>
    <div class="radio-controls">
        <span id="radioStatus" class="status">Pausado</span>
        <span class="wave" aria-hidden="true"><i></i><i></i><i></i><i></i><i></i><i></i></span>
        <button id="radioPlay" class="icon-btn icon-btn-sm" type="button" aria-label="Reproducir Sonocámara Radio">▶</button>
    </div>
</header>
<nav class="main-nav" aria-label="Navegación principal">
    <a href="<?= e(base_url('#biografia')) ?>">Biografía</a>
    <a href="<?= e(base_url('#musica')) ?>">Música y grabaciones</a>
    <a href="<?= e(base_url('#radio')) ?>">Sonocámara online</a>
    <a href="<?= e(base_url('#memorias')) ?>">Memorias</a>
</nav>
<?php
}

function footer_html(): void
{
    ?>
<footer class="site-footer">
    <strong>Gustavo “Tavo” Lamas</strong>
    <div>1942 — 2026 &nbsp;·&nbsp; Lima, Perú</div>
    <div class="footer-icons" aria-label="Enlaces de Sonocámara">
        <span>f</span><span>◎</span><span>▶</span><span>✉</span>
    </div>
    <small>© 2026 Sonocámara Radio. Todos los derechos reservados.</small>
</footer>
<div id="lightbox" class="lightbox" aria-hidden="true">
    <button id="lightboxClose" class="close" type="button" aria-label="Cerrar galería">×</button>
    <button id="lightboxPrev" class="prev" type="button" aria-label="Foto anterior">‹</button>
    <img alt="Fotografía ampliada">
    <button id="lightboxNext" class="next" type="button" aria-label="Foto siguiente">›</button>
</div>
<script src="<?= e(base_url('assets/js/app.js')) ?>"></script>
</body>
</html>
<?php
}

if ($route === 'memories') {
    header_html('Recuerdos de Tavo — Sonocámara');
    $allMemories = approved_memories(200) ?: (cfg('show_demo_memories') ? demo_memories() : []);
    ?>
<main class="inner-page">
    <section class="inner-hero">
        <span class="label">IV. Memorias</span>
        <h1 class="section-title">Todos los recuerdos</h1>
        <p class="lead">Historias, imágenes y anécdotas que mantienen viva su señal.</p>
    </section>
    <section class="content-shell memories-grid">
        <?php foreach ($allMemories as $m): ?>
            <a class="memory-card <?= !empty($m['image_thumb_path']) ? 'has-photo' : 'no-photo' ?>" href="<?= e(base_url('recuerdo/' . $m['slug'] . '/')) ?>">
                <div class="memory-head">
                    <?php if (!empty($m['avatar_path'])): ?><img class="avatar" src="<?= e($m['avatar_path']) ?>" alt=""><?php endif; ?>
                    <div><h4><?= e($m['public_name']) ?></h4><small><?= e(relative_date($m['approved_at'])) ?></small></div>
                </div>
                <p><?= e(mb_strimwidth($m['message'], 0, 260, '…')) ?></p>
                <?php if (!empty($m['image_thumb_path'])): ?><img class="memory-photo" src="<?= e($m['image_thumb_path']) ?>" alt="Fotografía del recuerdo"><?php endif; ?>
                <span class="memory-read-more">Leer recuerdo completo →</span>
            </a>
        <?php endforeach; ?>
    </section>
</main>
<?php
    footer_html();
    exit;
}

if ($route === 'memory' && isset($memory)) {
    header_html('Recuerdo de ' . $memory['public_name'] . ' — Sonocámara');
    ?>
<main class="inner-page">
    <section class="content-shell memory-detail">
        <span class="label">IV. Memorias</span>
        <h1 class="section-title"><?= e($memory['public_name']) ?></h1>
        <p class="hint"><?= e(relative_date($memory['approved_at'])) ?></p>
        <?php if (!empty($memory['image_path'])): ?><img class="hero-memory" src="<?= e($memory['image_path']) ?>" alt="Fotografía del recuerdo"><?php endif; ?>
        <p class="memory-full-text"><?= e($memory['message']) ?></p>
        <div class="detail-actions">
            <?php if (!empty($memory['video_url'])): ?><a class="btn" href="<?= e($memory['video_url']) ?>" target="_blank" rel="noopener noreferrer">Ver video del recuerdo →</a><?php endif; ?>
            <a class="btn" href="<?= e(base_url('recuerdos/')) ?>">Ver todos los recuerdos</a>
        </div>
    </section>
</main>
<?php
    footer_html();
    exit;
}

if ($route === '404') {
    header_html('Página no encontrada — Sonocámara');
    ?>
<main class="inner-page">
    <section class="content-shell memory-detail">
        <span class="label">Sonocámara</span>
        <h1 class="section-title">No encontramos este recuerdo</h1>
        <a class="btn" href="<?= e(base_url()) ?>">Volver al inicio</a>
    </section>
</main>
<?php
    footer_html();
    exit;
}

header_html();
$chapters = [
    ['origen', 'Origen', '“Tavo” Lamas nació el 1 de octubre de 1942 en la Maternidad de Lima, hijo de Graciela Ugás y Luis Gustavo Lamas. Fue el tercero de cuatro hermanos: Bertha, Fernando y Enrique. Creció entre Chiclayo y el Balneario de Pimentel, lugares que dejaron una huella especial en su vida e influyeron en su personalidad alegre, su humor ácido y su gusto por el mar y el buen comer.'],
    ['musica', 'La música', 'La música y el buen sonido fueron el hilo conductor de su vida. Desde muy niño aprendió a tocar el piano de oído y, más tarde, la trompeta, su eterna compañera. Desde entonces se embarcó en diversas aventuras musicales, entre las que destacan agrupaciones como Ritmo y Fantasía, durante sus años de estudiante en el barrio de Magdalena; Platinum Lord y Simbiosis, con las que ofreció numerosos conciertos en Lima; y, más adelante, su proyecto solista “Tavo Lamas y su Trompeta”, con el que publicó siete discos de covers de música variada.'],
    ['casa_lamas', 'Casa Lamas y el comercio', 'Además de cultivar la música, Tavo fue un apasionado de la tecnología. Tras culminar sus estudios universitarios, tomó las riendas de la tradicional Casa Lamas, en Chiclayo, emblemático negocio familiar ubicado en la calle Elías Aguirre y recordado por generaciones bajo el lema “Lamas garantiza lo que vende”. Desde allí impulsó el desarrollo comercial de la región, así como la llegada de nuevas tecnologías y expresiones culturales al norte del país.'],
    ['sonocamara', 'Sonocámara y la producción', 'Su interés por la innovación y la difusión cultural encontró una de sus expresiones más visibles en Sonocámara. El recordado programa, producido por él y transmitido por América Televisión Chiclayo, se convirtió en un referente cultural y musical de la región y sirvió de escenario para jóvenes artistas nacionales e internacionales como Tania Libertad y Ricardo Montaner. Junto al maestro Ricardo Montjoy fundó el estudio de grabaciones “Lamont”, plataforma para numerosos talentos musicales de la época. En 2016 relanzó Sonocámara en formato online para revivir su misión de compartir buena música y buen sonido con el mundo.'],
    ['radioaficion', 'La radioafición', 'La curiosidad sin límites de Tavo lo llevó a explorar la radioafición, pasión que lo acompañó durante el resto de su vida. Su señal viajó por todo el mundo gracias a su incansable experimentación con antenas y ondas radiales. Desde su shack de radio conectó con colegas en cientos de países y condujo la Cadena Peruana de Socorro, lista para ponerse al servicio de las personas durante desastres y emergencias. Fue también vicepresidente del Consejo Directivo del Radio Club Peruano.'],
    ['emprendedor', 'Emprendedor e innovador', 'Como emprendedor, se dedicó a la importación, comercialización e instalación de equipos de radioafición en distintas localidades del norte peruano, convirtiéndose en uno de los pioneros de las telecomunicaciones regionales. Esa misma pasión lo llevaría a fundar Inkanet, empresa con la que contribuyó a acercar internet a miles de personas en el Perú. Tavo realizó sus estudios universitarios en la Pontificia Universidad Católica del Perú, graduándose en Ciencias Económicas y con una maestría en ESAN.'],
];
?>
<section class="hero" id="inicio">
    <div class="hero-inner content-shell">
        <div class="hero-copy">
            <h1>Gustavo<br><span>“Tavo” Lamas</span></h1>
            <div class="hero-dates">1942 — 2026</div>
            <div class="hero-rule"></div>
            <p>Un site dedicado a mantener viva<br>la memoria, música y señal de Tavo.</p>
        </div>
        <a class="scroll-cue" href="#biografia" aria-label="Ir a biografía">⌄</a>
    </div>
</section>
<main>
<section id="biografia" class="home-section biography-overview">
    <div class="content-shell section-grid">
        <div class="section-intro">
            <span class="label">I. Biografía</span>
            <h2 class="section-title compact">Una vida plena</h2>
            <p>La historia de su vida, su música, sus pasiones y su legado para las futuras generaciones.</p>
            <button id="bioToggle" class="btn" type="button" aria-expanded="false">Leer biografía →</button>
        </div>
        <div class="bio-gallery-stage">
            <button class="carousel-arrow prev bio-rail-prev" type="button" aria-label="Fotos anteriores">‹</button>
            <div id="bioRail" class="bio-gallery-rail" aria-label="Galería biográfica"></div>
            <button class="carousel-arrow next bio-rail-next" type="button" aria-label="Fotos siguientes">›</button>
        </div>
    </div>
    <div id="bioStory" class="bio-story" hidden>
        <div class="content-shell">
            <?php foreach ($chapters as [$id, $chapterTitle, $text]): ?>
                <article class="bio-chapter">
                    <div class="chapter-copy">
                        <span class="label"><?= e($chapterTitle) ?></span>
                        <p><?= e($text) ?></p>
                    </div>
                    <button class="gallery-card" data-gallery="<?= e($id) ?>" type="button"><span>Ver fotos →</span></button>
                </article>
            <?php endforeach; ?>
            <div class="quote">Tavo vivió una vida plena e inspiró a quienes lo rodeaban por el amor y la dedicación que volcaba en sus vínculos y aficiones. Quienes lo conocieron lo recordarán por su calidez, su curiosidad infinita, su sentido del humor, su generosidad y su capacidad de conectar personas a través de la música, la tecnología y la amistad. Lo sobreviven sus hijos Álvaro, Milagros y Leonor, y su nieta Julia.</div>
        </div>
    </div>
</section>
<section id="musica" class="home-section music-section">
    <div class="content-shell">
        <span class="label">II. Música y grabaciones</span>
        <h2 class="section-title">Tavo Lamas y su Trompeta</h2>
        <p class="lead">Siete discos de covers que recorren lo mejor de la música variada, grabados con la pasión y el buen sonido que siempre lo caracterizaron.</p>
        <div id="albums" class="albums"></div>
        <div id="albumPanel" class="album-panel" hidden></div>
    </div>
</section>
<section id="radio" class="home-section radio-section">
    <div class="content-shell section-grid radio-grid">
        <div class="section-intro">
            <span class="label">III. Sonocámara Radio Online</span>
            <h2 class="section-title compact">La radio que sí sabe de música</h2>
            <p>Sintoniza Sonocámara en vivo — el proyecto que Tavo fundó para compartir buena música y buen sonido con el mundo.</p>
            <a class="btn" href="#radioPanel">Ir a la radio →</a>
        </div>
        <div id="radioPanel" class="radio-panel">
            <div class="radio-panel-head">
                <span class="radio-mic">♬</span>
                <div><span class="label">En vivo</span><h3>Sonocámara Radio</h3><p>Transmitiendo buena música y buen sonido</p></div>
            </div>
            <div class="radio-viz" aria-hidden="true"><span></span><span></span><span></span><span></span><span></span><span></span><span></span><span></span><span></span><span></span><span></span><span></span><span></span><span></span><span></span></div>
            <button id="radioPanelPlay" class="icon-btn icon-btn-lg" type="button" aria-label="Reproducir Sonocámara Radio">▶</button>
        </div>
    </div>
</section>
<section id="memorias" class="home-section memories-section">
    <div class="content-shell">
        <div class="section-grid memory-form-grid">
            <div class="section-intro">
                <span class="label">IV. Memorias</span>
                <h2 class="section-title compact">Comparte tus recuerdos</h2>
                <p>Comparte tus recuerdos de Tavo con nosotros. Cada historia, anécdota o imagen mantiene viva su señal.</p>
            </div>
            <div>
                <div id="formNotice" class="notice" hidden></div>
                <form id="memoryForm" class="memory-form" method="post" action="<?= e(base_url('submit-memory.php')) ?>" enctype="multipart/form-data">
                    <input type="hidden" name="csrf" value="<?= e(csrf_token()) ?>">
                    <input class="hidden" name="website" tabindex="-1" autocomplete="off">
                    <input required maxlength="80" name="author_name" placeholder="Tu nombre">
                    <input maxlength="190" type="email" name="author_email" placeholder="Tu correo (opcional)">
                    <textarea required minlength="20" maxlength="1500" name="message" placeholder="Escribe tu recuerdo de Tavo…"></textarea>
                    <div class="upload-row">
                        <label class="upload-control"><span>＋ Avatar</span><input type="file" name="avatar" accept="image/jpeg,image/png,image/webp"></label>
                        <label class="upload-control"><span>＋ Foto del recuerdo</span><input type="file" name="memory_image" accept="image/jpeg,image/png,image/webp"></label>
                    </div>
                    <input class="full" type="url" name="video_url" placeholder="Enlace opcional a YouTube o Vimeo">
                    <div class="form-actions">
                        <span class="hint">Tu recuerdo será revisado antes de publicarse.</span>
                        <button class="btn gold" type="submit">Enviar recuerdo</button>
                    </div>
                </form>
            </div>
        </div>
        <div class="memory-carousel-wrap">
            <button id="memPrev" class="carousel-arrow prev" type="button" aria-label="Recuerdos anteriores">‹</button>
            <div id="memoryCarousel" class="memory-carousel">
                <?php foreach ($cards as $m): ?>
                    <a class="memory-card <?= !empty($m['image_thumb_path']) ? 'has-photo' : 'no-photo' ?>" href="<?= e(base_url('recuerdo/' . $m['slug'] . '/')) ?>">
                        <div class="memory-head">
                            <?php if (!empty($m['avatar_path'])): ?><img class="avatar" src="<?= e($m['avatar_path']) ?>" alt=""><?php endif; ?>
                            <div><h4><?= e($m['public_name']) ?></h4><small><?= e(relative_date($m['approved_at'])) ?></small></div>
                        </div>
                        <p><?= e(mb_strimwidth($m['message'], 0, 240, '…')) ?></p>
                        <?php if (!empty($m['image_thumb_path'])): ?><img class="memory-photo" src="<?= e($m['image_thumb_path']) ?>" alt="Fotografía del recuerdo"><?php endif; ?>
                        <span class="memory-read-more">Leer recuerdo completo →</span>
                    </a>
                <?php endforeach; ?>
            </div>
            <button id="memNext" class="carousel-arrow next" type="button" aria-label="Siguientes recuerdos">›</button>
        </div>
        <div class="memories-more"><a href="<?= e(base_url('recuerdos/')) ?>">Ver todos los recuerdos →</a></div>
    </div>
</section>
</main>
<?php footer_html();
