From 55c5c9ca935a9077a1fd4003e93a10c5144a6bce Mon Sep 17 00:00:00 2001 From: ilotterytea Date: Mon, 21 Apr 2025 22:53:09 +0500 Subject: feat: log user's last activity --- database.sql | 3 ++- src/accounts.php | 3 +++ 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/database.sql b/database.sql index 4840f22..5585a93 100644 --- a/database.sql +++ b/database.sql @@ -3,7 +3,8 @@ CREATE TABLE IF NOT EXISTS users ( username TEXT NOT NULL UNIQUE, password TEXT, secret_key TEXT NOT NULL, - joined_at TIMESTAMP NOT NULL DEFAULT UTC_TIMESTAMP + joined_at TIMESTAMP NOT NULL DEFAULT UTC_TIMESTAMP, + last_active_at TIMESTAMP NOT NULL DEFAULT UTC_TIMESTAMP ); CREATE TABLE IF NOT EXISTS connections ( diff --git a/src/accounts.php b/src/accounts.php index 1580fa5..87c8ef0 100644 --- a/src/accounts.php +++ b/src/accounts.php @@ -38,6 +38,9 @@ function authorize_user(bool $required = false): bool if ($row = $stmt->fetch()) { $_SESSION["user_id"] = $row["id"]; $_SESSION["user_name"] = $row["username"]; + + $stmt = $db->prepare("UPDATE users SET last_active_at = UTC_TIMESTAMP WHERE id = ?"); + $stmt->execute([$row["id"]]); } else { session_regenerate_id(); session_unset(); -- cgit v1.2.3