<?php

declare(strict_types=1);

class Auth
{
    public static function check(): bool
    {
        return !empty($_SESSION['usuario_id']);
    }

    public static function user(): ?array
    {
        return $_SESSION['usuario'] ?? null;
    }

    public static function login(array $usuario): void
    {
        $_SESSION['usuario_id'] = $usuario['id'];
        $_SESSION['usuario'] = $usuario;
    }

    public static function logout(): void
    {
        unset($_SESSION['usuario_id'], $_SESSION['usuario']);
    }

    public static function requireLogin(): void
    {
        if (!self::check()) {
            header('Location: ' . base_url('/login'));
            exit;
        }
    }
}
