diff options
Diffstat (limited to 'server/src/ui/account/settings.rs')
-rw-r--r-- | server/src/ui/account/settings.rs | 42 |
1 files changed, 10 insertions, 32 deletions
diff --git a/server/src/ui/account/settings.rs b/server/src/ui/account/settings.rs index 3b53bc4..e6d096f 100644 --- a/server/src/ui/account/settings.rs +++ b/server/src/ui/account/settings.rs @@ -4,27 +4,18 @@ Copyright (C) 2025 metamuffin <metamuffin.org> */ use super::{format_form_error, hash_password}; -use crate::{ - database::Database, - locale::AcceptLanguage, - ui::{ - account::{rocket_uri_macro_r_account_login, session::Session}, - error::MyResult, - layout::{trs, DynLayoutPage, LayoutPage}, - }, - uri, -}; -use jellybase::{ - locale::{tr, Language}, - permission::PermissionSetExt, -}; +use crate::{database::Database, locale::AcceptLanguage, ui::error::MyResult}; +use jellybase::permission::PermissionSetExt; use jellycommon::user::{PlayerKind, Theme, UserPermission}; -use markup::{Render, RenderAttributeValue}; +use jellylogic::session::Session; +use jellyui::locale::Language; use rocket::{ form::{self, validate::len, Contextual, Form}, get, http::uri::fmt::{Query, UriDisplay}, - post, FromForm, State, + post, + response::content::RawHtml, + FromForm, State, }; use std::ops::Range; @@ -47,24 +38,11 @@ fn settings_page( session: Session, flash: Option<MyResult<String>>, lang: Language, -) -> DynLayoutPage<'static> { - LayoutPage { - title: "Settings".to_string(), - class: Some("settings"), - content: - } -} - -struct A<T>(pub T); -impl<T: UriDisplay<Query>> RenderAttributeValue for A<T> {} -impl<T: UriDisplay<Query>> Render for A<T> { - fn render(&self, writer: &mut impl std::fmt::Write) -> std::fmt::Result { - writer.write_fmt(format_args!("{}", &self.0 as &dyn UriDisplay<Query>)) - } +) -> RawHtml<String> { } #[get("/account/settings")] -pub fn r_account_settings(session: Session, lang: AcceptLanguage) -> DynLayoutPage<'static> { +pub fn r_account_settings(session: Session, lang: AcceptLanguage) -> RawHtml<String> { let AcceptLanguage(lang) = lang; settings_page(session, None, lang) } @@ -75,7 +53,7 @@ pub fn r_account_settings_post( database: &State<Database>, form: Form<Contextual<SettingsForm>>, lang: AcceptLanguage, -) -> MyResult<DynLayoutPage<'static>> { +) -> MyResult<RawHtml<String>> { let AcceptLanguage(lang) = lang; session .user |