Skip to content

Commit

Permalink
Tela log_user listando logs;
Browse files Browse the repository at this point in the history
Por enquanto só funciona Login;
Falta implementar para as demais ações
  • Loading branch information
ramosbrp committed Jun 28, 2024
1 parent 9a9489c commit b6c8426
Show file tree
Hide file tree
Showing 3 changed files with 72 additions and 41 deletions.
40 changes: 40 additions & 0 deletions controllers/getLogs.php
Original file line number Diff line number Diff line change
@@ -0,0 +1,40 @@
<?php

use classes\DatabaseConnection;

require_once '../vendor/autoload.php';

function createDatabaseConnection()
{
// global $client; // Usar o cliente de telemetria global
try {
$db = new DatabaseConnection();
$conn = $db->getConnection();
// echo"<script>console.log('ok')</script>";

return $conn;

} catch (PDOException $e) {
// $client->trackException($e);
error_log("Error connecting to SQL Server: " . $e->getMessage());
die("Error connecting to SQL Server.");
}
}

function getLogs()
{
$conn = createDatabaseConnection();
$query = "SELECT * FROM Userlogs";
$stms = $conn->query($query);
$stms->execute();

$results = $stms->fetchAll(PDO::FETCH_ASSOC);
return $results;
}

if ($_SERVER['REQUEST_METHOD'] == 'GET') {
// echo"<script>console.log('ok')</script>";
$responseArray = getLogs();

echo json_encode($responseArray);
}
30 changes: 30 additions & 0 deletions js/log_user.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
// Variáveis
const logTableBody = document.getElementById('logTableBody');

// Event Listeners
document.addEventListener('DOMContentLoaded', () => {
buscaLogs();
})


const buscaLogs = async () => {
const response = await fetch('../controllers/getLogs.php', {
method: 'GET',
});


if (!response.ok)
throw new Error("Error");

const data = await response.json();
data.reverse();

data.forEach((item)=>{
var row = logTableBody.insertRow();
row.insertCell().textContent = item.log_date;
row.insertCell().textContent = item.user_id;
row.insertCell().textContent = item.action;
row.insertCell().textContent = item.details;
});

}
43 changes: 2 additions & 41 deletions pages/log_user.html
Original file line number Diff line number Diff line change
Expand Up @@ -57,6 +57,7 @@ <h1 class="my-4">Registro de Atividades de Usuário</h1>
<thead>
<tr>
<th>Data e Hora</th>
<th>Usuário Id</th>
<th>Evento</th>
<th>Detalhes</th>
</tr>
Expand All @@ -67,50 +68,10 @@ <h1 class="my-4">Registro de Atividades de Usuário</h1>
</table>
</div>

<script>
// Função para recuperar e exibir as informações de login do localStorage
function displayLoginActivity() {
var logTableBody = document.getElementById('logTableBody');

// Recupera as informações de login do localStorage
var loginLog = JSON.parse(localStorage.getItem('loginLog')) || [];

// Limpa a tabela antes de adicionar as novas entradas
logTableBody.innerHTML = '';

// Itera sobre os registros de atividades e os adiciona à tabela
loginLog.forEach(function (activity) {
var row = logTableBody.insertRow();
row.insertCell().textContent = new Date(activity.loginTime).toLocaleString();
row.insertCell().textContent = activity.username;
});
}

// Função para registrar a atividade de login
function logLoginActivity(username) {
// Recupera os dados do usuário do localStorage
var usuario = JSON.parse(localStorage.getItem('usuario'));

// Adiciona a nova atividade de login ao registro
var loginLog = JSON.parse(localStorage.getItem('loginLog')) || [];
loginLog.push({
username: usuario.name, // Supondo que o nome do usuário esteja armazenado na chave 'nome'
loginTime: Date.now()
});

// Salva o registro atualizado de atividades de login no localStorage
localStorage.setItem('loginLog', JSON.stringify(loginLog));
}

// Simulação de login bem-sucedido
//logLoginActivity(); // Aqui deve chamar a função passando o nome de usuário após uma verificação bem-sucedida

// Chama a função para exibir as informações de login quando a página é carregada
window.onload = displayLoginActivity;
</script>

<script src="../js/script.js"></script>
<script type="module" src="../js/header.js"></script>
<script type="module" src="../js/log_user.js"></script>
</body>

</html>

0 comments on commit b6c8426

Please sign in to comment.