<?php
/**
 * Habitar — configuração do backend.
 *
 * MERCADO PAGO: crie a aplicação em https://www.mercadopago.com.br/developers
 * e cole o Access Token abaixo (produção: APP_USR-... | teste: TEST-...).
 * Com o token em branco o site roda em MODO DEMONSTRAÇÃO: o checkout ativa a
 * assinatura na hora, sem cobrança — útil para testar o fluxo completo.
 */

const MP_ACCESS_TOKEN = ''; // <- cole aqui o Access Token do Mercado Pago

// ------------------------------------------------------------------
// PERÍODO ABERTO (temporário). Com true, quem se cadastra entra direto:
// nenhuma tela de pagamento e o conteúdo de data/ é servido a qualquer
// pessoa logada. Serve para colocar no ar e deixar testarem.
// PARA FECHAR DE NOVO: volte para false. É a única linha a mexer.
const ACESSO_LIVRE = true;
// ------------------------------------------------------------------

const PRECO_MENSAL = 29.90;              // valor da assinatura (BRL/mês)
const NOME_ASSINATURA = 'Assinatura Habitar';

// URL pública do site (usada nos retornos do checkout e no webhook).
// Em produção troque para: https://seudominio.com.br/
const BASE_URL = 'http://localhost/psicologa-graciela/';

// E-MAIL (recuperação de senha e boas-vindas). Ex. Hostinger:
// smtp.hostinger.com : 587, usuário = e-mail completo.
// Sem SMTP_HOST, a recuperação roda em modo demonstração (mostra o link na tela).
const SMTP_HOST = '';
const SMTP_PORT = 587;
const SMTP_USER = '';
const SMTP_PASS = '';
const SMTP_FROM_NAME = 'Habitar';

// PAINEL ADMIN (admin.html): defina uma chave forte para a psicóloga acessar
// a lista de assinantes. Em branco, o painel fica desativado.
const ADMIN_KEY = 'teste-local-123';

// Banco SQLite (fica dentro de api/, bloqueado por .htaccess)
const DB_PATH = __DIR__ . '/habitar.db';

// ------------------------------------------------------------------
date_default_timezone_set('America/Sao_Paulo');

function iniciar_sessao(): void {
    if (session_status() === PHP_SESSION_ACTIVE) {
        return;
    }
    session_set_cookie_params([
        'lifetime' => 60 * 60 * 24 * 30,
        'path' => '/',
        'httponly' => true,
        'samesite' => 'Lax',
        'secure' => isset($_SERVER['HTTPS']),
    ]);
    session_name('habitar_sessao');
    session_start();
}

function responder(array $dados, int $status = 200): never {
    http_response_code($status);
    header('Content-Type: application/json; charset=utf-8');
    header('Cache-Control: no-store');
    echo json_encode($dados, JSON_UNESCAPED_UNICODE);
    exit;
}

function corpo_json(): array {
    $raw = file_get_contents('php://input');
    $dados = json_decode($raw ?: '{}', true);
    return is_array($dados) ? $dados : [];
}

function modo_demo(): bool {
    return MP_ACCESS_TOKEN === '';
}
