<?php
/**
 * Serve o conteúdo terapêutico (data/*.json) apenas para assinantes ativos.
 * O acesso direto à pasta data/ é bloqueado pelo .htaccess da raiz.
 */

require_once __DIR__ . '/db.php';

iniciar_sessao();

if (empty($_SESSION['usuario_id'])) {
    responder(['erro' => 'nao_logado'], 401);
}
$u = usuario_por_id((int) $_SESSION['usuario_id']);
if (!$u || !assinatura_ativa($u)) {
    responder(['erro' => 'sem_assinatura'], 403);
}

$f = $_GET['f'] ?? '';
// Apenas nomes esperados: checkin ou rooms/NN-slug.json
if (!preg_match('#^(checkin|rooms/[0-9]{2}-[a-z-]+)$#', $f)) {
    responder(['erro' => 'arquivo_invalido'], 400);
}

$caminho = dirname(__DIR__) . '/data/' . $f . '.json';
if (!is_file($caminho)) {
    responder(['erro' => 'nao_encontrado'], 404);
}

header('Content-Type: application/json; charset=utf-8');
header('Cache-Control: private, max-age=300');
readfile($caminho);
