diff options
Diffstat (limited to 'server/src/routes/ui')
-rw-r--r-- | server/src/routes/ui/account/admin.rs | 4 | ||||
-rw-r--r-- | server/src/routes/ui/error.rs | 7 |
2 files changed, 9 insertions, 2 deletions
diff --git a/server/src/routes/ui/account/admin.rs b/server/src/routes/ui/account/admin.rs index 7124f4a..d0ad433 100644 --- a/server/src/routes/ui/account/admin.rs +++ b/server/src/routes/ui/account/admin.rs @@ -5,6 +5,7 @@ */ use crate::{ database::Database, + federation::Federation, import::import, routes::ui::{ account::session::Session, @@ -135,11 +136,12 @@ pub fn r_account_admin_remove_invite( pub async fn r_account_admin_import( session: Session, database: &State<Database>, + federation: &State<Federation>, ) -> MyResult<DynLayoutPage<'static>> { if !session.user.admin { Err(anyhow!("you not admin"))? } - let r = import(&database).await; + let r = import(&database, &federation).await; admin_dashboard( &database, Some(r.map_err(|e| e.into()).map(|_| "Import successful".into())), diff --git a/server/src/routes/ui/error.rs b/server/src/routes/ui/error.rs index 190650f..b538a06 100644 --- a/server/src/routes/ui/error.rs +++ b/server/src/routes/ui/error.rs @@ -36,7 +36,6 @@ pub fn r_api_catch<'a>(status: Status, _request: &Request) -> Value { pub type MyResult<T> = Result<T, MyError>; -#[derive(Debug)] pub struct MyError(pub anyhow::Error); impl<'r> Responder<'r, 'static> for MyError { @@ -61,6 +60,12 @@ impl<'r> Responder<'r, 'static> for MyError { } } +impl std::fmt::Debug for MyError { + fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result { + f.write_fmt(format_args!("{:?}", self.0)) + } +} + impl Display for MyError { fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result { self.0.fmt(f) |