add: user achievements

This commit is contained in:
trisua 2025-06-27 03:45:50 -04:00
parent e7c4cf14aa
commit b860f74124
15 changed files with 318 additions and 11 deletions

View file

@ -21,7 +21,7 @@ use futures_util::{sink::SinkExt, stream::StreamExt};
use tetratto_core::{
cache::Cache,
model::{
auth::{InviteCode, Token, UserSettings},
auth::{AchievementName, InviteCode, Token, UserSettings},
moderation::AuditLogEntry,
oauth,
permissions::FinePermission,
@ -151,6 +151,14 @@ pub async fn update_user_settings_request(
req.theme_lit = format!("{}%", req.theme_lit)
}
// award achievement
if let Err(e) = data
.add_achievement(&user, AchievementName::EditSettings.into())
.await
{
return Json(e.into());
}
// ...
match data.update_user_settings(id, req).await {
Ok(_) => Json(ApiReturn {