From 69488029a8eafc55d42ae7e65ba8ddeebcfb8454 Mon Sep 17 00:00:00 2001 From: Nathan Reiner Date: Sat, 15 Nov 2025 12:00:50 +0100 Subject: implement auto-login when session still active --- src/routes/api/session/is-valid.zig | 14 ++++++++++++++ src/routes/api/session/root.zig | 1 + 2 files changed, 15 insertions(+) create mode 100644 src/routes/api/session/is-valid.zig (limited to 'src/routes') diff --git a/src/routes/api/session/is-valid.zig b/src/routes/api/session/is-valid.zig new file mode 100644 index 0000000..0c26040 --- /dev/null +++ b/src/routes/api/session/is-valid.zig @@ -0,0 +1,14 @@ +const std = @import("std"); +const Context = @import("../../context.zig"); + +pub const access = .everyone; + +const Result = struct { + is_valid: bool +}; + +pub fn get(ctx: *Context) !Result { + return .{ + .is_valid = ctx.storage.sessions.get(ctx.storage, ctx.fingerprint) != null + }; +} diff --git a/src/routes/api/session/root.zig b/src/routes/api/session/root.zig index ea155e5..0b85e20 100644 --- a/src/routes/api/session/root.zig +++ b/src/routes/api/session/root.zig @@ -3,3 +3,4 @@ const HandlerInfo = @import("../../handler-info.zig"); pub const current: HandlerInfo = .from_type(@import("current.zig")); pub const drop: HandlerInfo = .from_type(@import("renew.zig")); pub const renew: HandlerInfo = .from_type(@import("drop.zig")); +pub const @"is-valid": HandlerInfo = .from_type(@import("is-valid.zig")); -- cgit v1.2.3-70-g09d2