<?php
require '../conexao/conexao.php';
require '../sessao.php';
require '../configuacoes.php';

$id_modulo = $_GET['id'] ?? null;
$confirmar = $_GET['confirmar'] ?? false;

if (!$id_modulo) {
    $_SESSION['erro'] = 'ID do módulo não informado!';
    header('Location: index.php');
    exit;
}

// Verificar se o módulo existe
$sql_modulo = "SELECT id_modulo, modulo, descricao FROM modulo WHERE id_modulo = $1";
$result_modulo = mysqli_query_params($connectionmysql, $sql_modulo, [$id_modulo]);

if (!$result_modulo || mysqli_num_rows($result_modulo) === 0) {
    $_SESSION['erro'] = 'Módulo não encontrado!';
    header('Location: index.php');
    exit;
}

$modulo = mysqli_fetch_assoc($result_modulo);

// Verificar perfis que usam este módulo
$sql_perfis = "
SELECT p.id_perfil, p.perfil, p.situacao
FROM perfil p
JOIN perfil_modulo pm ON p.id_perfil = pm.id_perfil
WHERE pm.id_modulo = $1
ORDER BY p.perfil
";

$result_perfis = mysqli_query_params($connectionmysql, $sql_perfis, [$id_modulo]);
$perfis = [];

if ($result_perfis) {
    while ($row = mysqli_fetch_assoc($result_perfis)) {
        $perfis[] = $row;
    }
}

// Se confirmou a remoção, executar
if ($confirmar && !empty($perfis)) {
    // Iniciar transação
    mysqli_query($connectionmysql, "BEGIN");
    
    try {
        // Remover módulo de todos os perfis
        $sql_remove = "DELETE FROM perfil_modulo WHERE id_modulo = $1";
        $result_remove = mysqli_query_params($connectionmysql, $sql_remove, [$id_modulo]);
        
        if (!$result_remove) {
            throw new Exception('Erro ao remover módulo dos perfis: ' . mysqli_last_error($connectionmysql));
        }
        
        // Commit da transação
        mysqli_query($connectionmysql, "COMMIT");
        
        $_SESSION['sucesso'] = 'Módulo "' . $modulo['modulo'] . '" removido de ' . count($perfis) . ' perfil(s) com sucesso! Agora você pode excluí-lo.';
        
        // Redirecionar para a página de exclusão
        header('Location: excluir_modulo.php?id=' . $id_modulo);
        exit;
        
    } catch (Exception $e) {
        // Rollback da transação
        mysqli_query($connectionmysql, "ROLLBACK");
        
        $_SESSION['erro'] = 'Erro ao remover módulo dos perfis: ' . $e->getMessage();
        header('Location: index.php');
        exit;
    }
}
?>

<!DOCTYPE html>
<html lang="pt-br">

<?php
$pageTitle = "Remover Módulo de Perfis";
include('../geral/header.php');
?>

<body>

    <!-- Navigation Bar-->
    <?php
    include('../geral/menu.php');
    ?>
    <!-- End Navigation Bar-->

    <div class="wrapper">
        <div class="container-fluid">
            <div class="card-box mt-3">
                <div class="row">
                    <div class="col-6 text-left">
                        <h4 class="page-title"><?php echo $pageTitle ?></h4>
                    </div>

                    <div class="col-6 text-right">
                        <a href="index.php" class="btn btn-light">
                            <i class="mdi mdi-keyboard-backspace"></i> Voltar
                        </a>
                    </div>

                    <!-- Informações do Módulo -->
                    <div class="col-12 mt-3">
                        <div class="card">
                            <div class="card-header">
                                <h5 class="card-title">
                                    <i class="mdi mdi-cube"></i> Informações do Módulo
                                </h5>
                            </div>
                            <div class="card-body">
                                <div class="row">
                                    <div class="col-md-6">
                                        <table class="table table-borderless">
                                            <tr>
                                                <td><strong>ID:</strong></td>
                                                <td><?php echo $modulo['id_modulo']; ?></td>
                                            </tr>
                                            <tr>
                                                <td><strong>Nome:</strong></td>
                                                <td><?php echo htmlspecialchars($modulo['modulo']); ?></td>
                                            </tr>
                                            <tr>
                                                <td><strong>Descrição:</strong></td>
                                                <td><?php echo htmlspecialchars($modulo['descricao'] ?? 'Não informada'); ?></td>
                                            </tr>
                                        </table>
                                    </div>
                                </div>
                            </div>
                        </div>
                    </div>

                    <!-- Perfis que usam este módulo -->
                    <div class="col-12 mt-3">
                        <div class="card">
                            <div class="card-header">
                                <h5 class="card-title">
                                    <i class="mdi mdi-account-key"></i> Perfis que usam este módulo
                                </h5>
                            </div>
                            <div class="card-body">
                                <?php if (!empty($perfis)): ?>
                                    <div class="alert alert-warning">
                                        <i class="mdi mdi-alert"></i> 
                                        <strong>Atenção:</strong> Este módulo está sendo usado por <?php echo count($perfis); ?> perfil(s) e não pode ser excluído diretamente.
                                    </div>

                                    <div class="table-responsive">
                                        <table class="table table-striped table-hover table-bordered">
                                            <thead class="thead-light">
                                                <tr>
                                                    <th width="10%">#</th>
                                                    <th width="40%">Nome do Perfil</th>
                                                    <th width="25%">Situação</th>
                                                    <th width="25%">Ações</th>
                                                </tr>
                                            </thead>
                                            <tbody>
                                                <?php 
                                                $contador = 1;
                                                foreach ($perfis as $perfil): 
                                                    $situacao_class = $perfil['situacao'] === 'A' ? 'badge badge-success' : 'badge badge-danger';
                                                    $situacao_texto = $perfil['situacao'] === 'A' ? 'Ativo' : 'Inativo';
                                                ?>
                                                    <tr>
                                                        <td><?php echo $contador++; ?></td>
                                                        <td><?php echo htmlspecialchars($perfil['perfil']); ?></td>
                                                        <td><span class="<?php echo $situacao_class; ?>"><?php echo $situacao_texto; ?></span></td>
                                                        <td>
                                                            <a href="../perfil/inclusao_alteracao.php?id=<?php echo $perfil['id_perfil']; ?>" 
                                                               class="btn btn-warning btn-sm" title="Editar Perfil">
                                                                <i class="mdi mdi-pencil"></i> Editar
                                                            </a>
                                                        </td>
                                                    </tr>
                                                <?php endforeach; ?>
                                            </tbody>
                                        </table>
                                    </div>

                                    <div class="alert alert-info">
                                        <i class="mdi mdi-information"></i> 
                                        <strong>Opções:</strong>
                                        <ul class="mb-0 mt-2">
                                            <li>Edite cada perfil individualmente e remova este módulo</li>
                                            <li>Ou clique no botão abaixo para remover este módulo de todos os perfis de uma vez</li>
                                        </ul>
                                    </div>

                                    <div class="text-center">
                                        <a href="?id=<?php echo $id_modulo; ?>&confirmar=1" 
                                           class="btn btn-danger btn-lg"
                                           onclick="return confirm('Tem certeza que deseja remover este módulo de TODOS os perfis? Esta ação não pode ser desfeita!')">
                                            <i class="mdi mdi-delete"></i> Remover de Todos os Perfis
                                        </a>
                                    </div>

                                <?php else: ?>
                                    <div class="alert alert-success">
                                        <i class="mdi mdi-check-circle"></i> 
                                        Este módulo não está sendo usado por nenhum perfil e pode ser excluído com segurança.
                                    </div>

                                    <div class="text-center">
                                        <a href="excluir_modulo.php?id=<?php echo $id_modulo; ?>" 
                                           class="btn btn-danger btn-lg">
                                            <i class="mdi mdi-delete"></i> Excluir Módulo
                                        </a>
                                    </div>
                                <?php endif; ?>
                            </div>
                        </div>
                    </div>
                </div>
            </div>
        </div>
    </div>

    <!-- jQuery -->
    <script src="../../assets/libs/jquery/jquery.min.js"></script>
    <!-- Bootstrap 4 -->
    <script src="../../assets/libs/bootstrap/js/bootstrap.bundle.min.js"></script>
    <!-- App js -->
    <script src="../../assets/js/app.min.js"></script>

</body>

</html>
