feat: set up basic sessions

This commit is contained in:
Andrew Rioux
2025-01-28 03:10:43 -05:00
parent bee66a8d6c
commit bf879bb081
23 changed files with 862 additions and 106 deletions
+2 -1
View File
@@ -70,6 +70,7 @@ pub fn RenderUser(refresh_user_list: Action<(), ()>, user: PubUser) -> impl Into
let UseIntervalReturn { counter, .. } = use_interval(1000);
let (time_ago, set_time_ago) = signal(user.last_active.map(|active| format_delta(Utc::now() - active)));
#[cfg(feature = "hydrate")]
Effect::watch(
move || counter.get(),
move |_, _, _| {
@@ -194,7 +195,7 @@ async fn list_users() -> Result<Vec<PubUser>, ServerFnError> {
let users = sqlx::query_as!(
DbUser,
"SELECT user_id, user_name, (SELECT MAX(expires) FROM sessions s WHERE s.user_id = u.user_id) as last_active FROM users u"
"SELECT user_id, user_name, last_active FROM users"
)
.fetch(&pool)
.map(|user| user.map(|u| PubUser {