aboutsummaryrefslogtreecommitdiff
path: root/forged/sql/queries/login.sql
diff options
context:
space:
mode:
authorRunxi Yu <me@runxiyu.org>2025-08-18 04:18:50 +0800
committerRunxi Yu <me@runxiyu.org>2025-08-18 04:38:45 +0800
commitec30ed1f0b2120a70331351a1f1afeac57285e71 (patch)
treee6f4c66e6157d2bd9b35c373b20d350d126743be /forged/sql/queries/login.sql
parentRename globalData to global (diff)
downloadforge-ec30ed1f0b2120a70331351a1f1afeac57285e71.tar.gz
forge-ec30ed1f0b2120a70331351a1f1afeac57285e71.tar.zst
forge-ec30ed1f0b2120a70331351a1f1afeac57285e71.zip
Make logging in work
Diffstat (limited to 'forged/sql/queries/login.sql')
-rw-r--r--forged/sql/queries/login.sql8
1 files changed, 8 insertions, 0 deletions
diff --git a/forged/sql/queries/login.sql b/forged/sql/queries/login.sql
new file mode 100644
index 0000000..ffc4026
--- /dev/null
+++ b/forged/sql/queries/login.sql
@@ -0,0 +1,8 @@
+-- name: GetUserCreds :one
+SELECT id, COALESCE(password_hash, '') FROM users WHERE username = $1;
+
+-- name: InsertSession :exec
+INSERT INTO sessions (user_id, token_hash, expires_at) VALUES ($1, $2, $3);
+
+-- name: GetUserFromSession :one
+SELECT user_id, COALESCE(username, '') FROM users u JOIN sessions s ON u.id = s.user_id WHERE s.token_hash = $1;