X-Git-Url: http://these/git/?a=blobdiff_plain;f=crates%2Fapi%2Fsrc%2Fsite%2Fregistration_applications%2Fapprove.rs;h=227f93243dacec0f6ff86fbaad5f240c3a20f02e;hb=3471f3533cb724b2cf6953d563aadfcc9f66c1d2;hp=61a6868995079374a72742cfa11cce2143b455a7;hpb=f02892b23b865e4e29b04c441754f87b4522077d;p=lemmy.git diff --git a/crates/api/src/site/registration_applications/approve.rs b/crates/api/src/site/registration_applications/approve.rs index 61a68689..227f9324 100644 --- a/crates/api/src/site/registration_applications/approve.rs +++ b/crates/api/src/site/registration_applications/approve.rs @@ -3,7 +3,7 @@ use actix_web::web::Data; use lemmy_api_common::{ context::LemmyContext, site::{ApproveRegistrationApplication, RegistrationApplicationResponse}, - utils::{get_local_user_view_from_jwt, is_admin, send_application_approved_email}, + utils::{is_admin, local_user_view_from_jwt, send_application_approved_email}, }; use lemmy_db_schema::{ source::{ @@ -14,20 +14,15 @@ use lemmy_db_schema::{ utils::diesel_option_overwrite, }; use lemmy_db_views::structs::{LocalUserView, RegistrationApplicationView}; -use lemmy_utils::{error::LemmyError, ConnectionId}; +use lemmy_utils::error::LemmyError; #[async_trait::async_trait(?Send)] impl Perform for ApproveRegistrationApplication { type Response = RegistrationApplicationResponse; - async fn perform( - &self, - context: &Data, - _websocket_id: Option, - ) -> Result { + async fn perform(&self, context: &Data) -> Result { let data = self; - let local_user_view = - get_local_user_view_from_jwt(&data.auth, context.pool(), context.secret()).await?; + let local_user_view = local_user_view_from_jwt(&data.auth, context).await?; let app_id = data.id; @@ -35,14 +30,14 @@ impl Perform for ApproveRegistrationApplication { is_admin(&local_user_view)?; // Update the registration with reason, admin_id - let deny_reason = diesel_option_overwrite(&data.deny_reason); + let deny_reason = diesel_option_overwrite(data.deny_reason.clone()); let app_form = RegistrationApplicationUpdateForm { admin_id: Some(Some(local_user_view.person.id)), deny_reason, }; let registration_application = - RegistrationApplication::update(context.pool(), app_id, &app_form).await?; + RegistrationApplication::update(&mut context.pool(), app_id, &app_form).await?; // Update the local_user row let local_user_form = LocalUserUpdateForm::builder() @@ -50,19 +45,20 @@ impl Perform for ApproveRegistrationApplication { .build(); let approved_user_id = registration_application.local_user_id; - LocalUser::update(context.pool(), approved_user_id, &local_user_form).await?; + LocalUser::update(&mut context.pool(), approved_user_id, &local_user_form).await?; if data.approve { - let approved_local_user_view = LocalUserView::read(context.pool(), approved_user_id).await?; + let approved_local_user_view = + LocalUserView::read(&mut context.pool(), approved_user_id).await?; if approved_local_user_view.local_user.email.is_some() { - send_application_approved_email(&approved_local_user_view, context.settings())?; + send_application_approved_email(&approved_local_user_view, context.settings()).await?; } } // Read the view let registration_application = - RegistrationApplicationView::read(context.pool(), app_id).await?; + RegistrationApplicationView::read(&mut context.pool(), app_id).await?; Ok(Self::Response { registration_application,