From fb911679d0d662488f7ea4cb433970a24088e947 Mon Sep 17 00:00:00 2001 From: Nutomic Date: Tue, 30 Jul 2024 14:34:17 +0200 Subject: [PATCH 1/3] Fix admin notification for new user registration (fixes #4916) (#4925) --- crates/api/src/local_user/verify_email.rs | 13 ++++--------- 1 file changed, 4 insertions(+), 9 deletions(-) diff --git a/crates/api/src/local_user/verify_email.rs b/crates/api/src/local_user/verify_email.rs index 5f38ffc12..5b895ec7e 100644 --- a/crates/api/src/local_user/verify_email.rs +++ b/crates/api/src/local_user/verify_email.rs @@ -5,12 +5,9 @@ use lemmy_api_common::{ utils::send_new_applicant_email_to_admins, SuccessResponse, }; -use lemmy_db_schema::{ - source::{ - email_verification::EmailVerification, - local_user::{LocalUser, LocalUserUpdateForm}, - }, - RegistrationMode, +use lemmy_db_schema::source::{ + email_verification::EmailVerification, + local_user::{LocalUser, LocalUserUpdateForm}, }; use lemmy_db_views::structs::{LocalUserView, SiteView}; use lemmy_utils::error::{LemmyErrorType, LemmyResult}; @@ -41,9 +38,7 @@ pub async fn verify_email( EmailVerification::delete_old_tokens_for_local_user(&mut context.pool(), local_user_id).await?; // send out notification about registration application to admins if enabled - if site_view.local_site.registration_mode == RegistrationMode::RequireApplication - && site_view.local_site.application_email_admins - { + if site_view.local_site.application_email_admins { let local_user = LocalUserView::read(&mut context.pool(), local_user_id) .await? .ok_or(LemmyErrorType::CouldntFindPerson)?; From 2ccb46b66daa560efc52fbea4866cee01676fb55 Mon Sep 17 00:00:00 2001 From: abdel-m Date: Tue, 30 Jul 2024 14:34:58 +0200 Subject: [PATCH 2/3] pass local user to send local notifs (#4920) * pass local user to send local notif * pass local user to all crud calls * execution of command "cargo +nightly fmt" * Formatting and mode fixes. --------- Co-authored-by: Dessalines --- crates/api_common/src/build_response.rs | 11 ++++++++--- crates/api_crud/src/comment/create.rs | 1 + crates/api_crud/src/comment/delete.rs | 11 +++++++++-- crates/api_crud/src/comment/remove.rs | 11 +++++++++-- crates/api_crud/src/comment/update.rs | 1 + .../apub/src/activities/create_or_update/comment.rs | 2 +- 6 files changed, 29 insertions(+), 8 deletions(-) diff --git a/crates/api_common/src/build_response.rs b/crates/api_common/src/build_response.rs index 200284b00..8f140f2fe 100644 --- a/crates/api_common/src/build_response.rs +++ b/crates/api_common/src/build_response.rs @@ -100,15 +100,20 @@ pub async fn send_local_notifs( person: &Person, do_send_email: bool, context: &LemmyContext, + local_user_view: Option<&LocalUserView>, ) -> LemmyResult> { let mut recipient_ids = Vec::new(); let inbox_link = format!("{}/inbox", context.settings().get_protocol_and_hostname()); // let person = my_local_user.person; // Read the comment view to get extra info - let comment_view = CommentView::read(&mut context.pool(), comment_id, None) - .await? - .ok_or(LemmyErrorType::CouldntFindComment)?; + let comment_view = CommentView::read( + &mut context.pool(), + comment_id, + local_user_view.map(|view| &view.local_user), + ) + .await? + .ok_or(LemmyErrorType::CouldntFindComment)?; let comment = comment_view.comment; let post = comment_view.post; let community = comment_view.community; diff --git a/crates/api_crud/src/comment/create.rs b/crates/api_crud/src/comment/create.rs index b7c65740c..49de9d5de 100644 --- a/crates/api_crud/src/comment/create.rs +++ b/crates/api_crud/src/comment/create.rs @@ -134,6 +134,7 @@ pub async fn create_comment( &local_user_view.person, true, &context, + Some(&local_user_view), ) .await?; diff --git a/crates/api_crud/src/comment/delete.rs b/crates/api_crud/src/comment/delete.rs index 29706d365..8c81608c8 100644 --- a/crates/api_crud/src/comment/delete.rs +++ b/crates/api_crud/src/comment/delete.rs @@ -59,8 +59,15 @@ pub async fn delete_comment( .await .with_lemmy_type(LemmyErrorType::CouldntUpdateComment)?; - let recipient_ids = - send_local_notifs(vec![], comment_id, &local_user_view.person, false, &context).await?; + let recipient_ids = send_local_notifs( + vec![], + comment_id, + &local_user_view.person, + false, + &context, + Some(&local_user_view), + ) + .await?; let updated_comment_id = updated_comment.id; ActivityChannel::submit_activity( diff --git a/crates/api_crud/src/comment/remove.rs b/crates/api_crud/src/comment/remove.rs index f810c8275..ec4923e93 100644 --- a/crates/api_crud/src/comment/remove.rs +++ b/crates/api_crud/src/comment/remove.rs @@ -81,8 +81,15 @@ pub async fn remove_comment( }; ModRemoveComment::create(&mut context.pool(), &form).await?; - let recipient_ids = - send_local_notifs(vec![], comment_id, &local_user_view.person, false, &context).await?; + let recipient_ids = send_local_notifs( + vec![], + comment_id, + &local_user_view.person, + false, + &context, + Some(&local_user_view), + ) + .await?; let updated_comment_id = updated_comment.id; ActivityChannel::submit_activity( diff --git a/crates/api_crud/src/comment/update.rs b/crates/api_crud/src/comment/update.rs index 32bd08240..ed9460825 100644 --- a/crates/api_crud/src/comment/update.rs +++ b/crates/api_crud/src/comment/update.rs @@ -91,6 +91,7 @@ pub async fn update_comment( &local_user_view.person, false, &context, + Some(&local_user_view), ) .await?; diff --git a/crates/apub/src/activities/create_or_update/comment.rs b/crates/apub/src/activities/create_or_update/comment.rs index 2406d2eb3..89be8d49e 100644 --- a/crates/apub/src/activities/create_or_update/comment.rs +++ b/crates/apub/src/activities/create_or_update/comment.rs @@ -179,7 +179,7 @@ impl ActivityHandler for CreateOrUpdateNote { // TODO: for compatibility with other projects, it would be much better to read this from cc or // tags let mentions = scrape_text_for_mentions(&comment.content); - send_local_notifs(mentions, comment.id, &actor, do_send_email, context).await?; + send_local_notifs(mentions, comment.id, &actor, do_send_email, context, None).await?; Ok(()) } } From 069a9509d5120db19ca8a98e47bb5326df5484e4 Mon Sep 17 00:00:00 2001 From: Dessalines Date: Tue, 30 Jul 2024 09:41:06 -0400 Subject: [PATCH 3/3] Adding renovate automerge. (#4927) --- renovate.json | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/renovate.json b/renovate.json index 1911d651b..8d57f0aa8 100644 --- a/renovate.json +++ b/renovate.json @@ -1,5 +1,6 @@ { "$schema": "https://docs.renovatebot.com/renovate-schema.json", "extends": ["config:recommended"], - "schedule": ["before 4am on the first day of the month"] + "schedule": ["before 4am on the first day of the month"], + "automerge": true }