<?php
session_start();
date_default_timezone_set('America/Sao_Paulo');

$arquivo_usuarios = 'usuarios.json';

if ($_SERVER['REQUEST_METHOD'] == 'POST') {
    
    // 1. CAPTURA E LIMPEZA DE DADOS
    $nome  = $_POST['cliente_nome'] ?? $_POST['nome'] ?? '';
    $email = $_POST['email'] ?? ''; 
    $senha = $_POST['senha'] ?? '';

    if (empty($nome) || empty($senha)) {
        header("Location: cadastro.php?erro=campos_vazios");
        exit;
    }

    // 2. PREPARA O ARRAY DO USUÁRIO (Compatível com sua index.php)
    $novo_id = uniqid();
    $novo_usuario = [
        'id'            => $novo_id,
        'nome'          => mb_strtoupper($nome, 'UTF-8'),
        'email'         => $email,
        'senha'         => password_hash($senha, PASSWORD_DEFAULT), // Criptografia segura
        'saldo'         => 0.00, // CAMPO OBRIGATÓRIO PARA A INDEX NÃO DAR ERRO
        'tipo'          => 'cliente',
        'data_cadastro' => date('d/m/Y H:i:s')
    ];

    // 3. LÊ O ARQUIVO EXISTENTE GARANTINDO O FORMATO ARRAY
    $usuarios = [];
    if (file_exists($arquivo_usuarios)) {
        $conteudo = trim(file_get_contents($arquivo_usuarios));
        if (!empty($conteudo)) {
            $usuarios = json_decode($conteudo, true);
            // Se o JSON estiver corrompido ou não for array, reseta para evitar Erro 500
            if (!is_array($usuarios)) { $usuarios = []; }
        }
    }

    // 4. ADICIONA O NOVO USUÁRIO
    $usuarios[] = $novo_usuario;
    
    // 5. SALVA COM FORMATAÇÃO LIMPA
    $json_final = json_encode($usuarios, JSON_PRETTY_PRINT | JSON_UNESCAPED_UNICODE);
    
    if (file_put_contents($arquivo_usuarios, $json_final)) {
        
        // 6. LOGAR AUTOMATICAMENTE (Sessões que sua index.php exige)
        $_SESSION['usuario_id']   = $novo_id;
        $_SESSION['usuario_nome'] = $novo_usuario['nome'];
        $_SESSION['usuario_tipo'] = 'cliente';

        // 7. REDIRECIONA PARA A INDEX
        header("Location: index.php");
        exit;
        
    } else {
        die("Erro crítico: Verifique as permissões de escrita no servidor para o arquivo usuarios.json");
    }

} else {
    header("Location: login.php");
    exit;
}
?>