<?php
session_start();
include_once('../Repositorio/BuscaUsuariosIntersolid.php');

// Verifique se o formulário foi submetido
if ($_SERVER["REQUEST_METHOD"] == "POST") {
    // Verifique se a ação está definida
    if (isset($_POST["acao"])) {
        $acao = $_POST["acao"];
        $gerenciadorUsuarios  = new GerenciadorUsuarios();
        if ($acao == "inserir" || $acao == "editar") {
            // Verifique se as variáveis obrigatórias estão definidas e não estão vazias
            if( is_null($_POST["idgrupo"])){
              /*$_SESSION['Erro'] = "Erro: Selecione um Grupo.";
              header("Location: ../../Forms/CadastroUsuarios.php?usuario=0");
              exit;*/
              $IdGrupo = NULL;
            } else {
              $IdGrupo = $_POST["idgrupo"];
            }
            if (isset($_POST["nome"]) && isset($_POST["usuario"])) {
                $nome = Trim(strtoupper($_POST["nome"]));
                $usuario = $_POST["usuario"].'@intersolid.com';
                $usuariodb = $_POST["usuario"];
                $idusuario = ($acao == "editar" && isset($_POST["idusuario"])) ? $_POST["idusuario"] : 0;
                // Verifique se o nome e o usuário foram preenchidos
                if (!empty($nome) && !empty($usuario)) {
                    if ($acao == "inserir") {
                        // Chame a função de inserção de usuário
                        $gerenciadorUsuarios->inserirUsuario($nome, $usuario,$usuariodb,$IdGrupo);
                    } elseif ($acao == "editar") {
                        // Chame a função de atualização de usuário
                        $gerenciadorUsuarios->editarUsuario($idusuario, $nome, $usuario,$usuariodb,$IdGrupo);
                    }

                    header("Location: ../../Forms/ListagemUsuarios.php");
                    exit;
                } else {
                    $_SESSION['Erro'] = "Erro: Preencha o Nome e o Usuário.";
                    header("Location: ../../Forms/CadastroUsuarios.php?usuario=0");
                    exit;
                }
            } else {
                // Algumas variáveis obrigatórias não estão definidas ou estão vazias
                $_SESSION['Erro'] = "Erro: Preencha o Nome e o Usuário.";
                header("Location: ../../Forms/CadastroUsuarios.php?usuario=0");
                exit;
            }
        } elseif ($acao == "excluir" || $acao == "resetar") {
            // Verifique se o ID do usuário está definido
            if (isset($_POST["idusuario"])) {
                $idusuario = $_POST["idusuario"];
                if ($acao == "excluir") {
                  $gerenciadorUsuarios->deletarUsuario($idusuario);
                } elseif ($acao == "resetar") {
                  $gerenciadorUsuarios->resetarSenha($idusuario);
                  $_SESSION['Erro'] = "Alterada a Senha = 123 para o usuario ".$_POST["nome"];
                }

                // Redirecione para a página de listagem de usuários
                header("Location: ../../Forms/ListagemUsuarios.php");
                exit;
            } else {
                // ID do usuário não está definido
                $_SESSION['mensagem_erro'] = "Erro: ID do usuário não está definido.";
            }
        }
    } else {
        // Ação não está definida
        $_SESSION['mensagem_erro'] = "Erro: Ação não está definida.";
    }
} else {
    // O formulário não foi submetido corretamente
    $_SESSION['mensagem_erro'] = "Erro: O formulário não foi submetido corretamente.";
}
?>
