From bfaad8333e2cf4d0d47456ba3fefdbb5afdf4b2d Mon Sep 17 00:00:00 2001 From: M66B Date: Sun, 29 May 2022 12:17:12 +0200 Subject: [PATCH] Auto block spam --- .../main/java/eu/faircode/email/EntityOperation.java | 11 +++++++++++ .../main/java/eu/faircode/email/FragmentMessages.java | 2 +- 2 files changed, 12 insertions(+), 1 deletion(-) diff --git a/app/src/main/java/eu/faircode/email/EntityOperation.java b/app/src/main/java/eu/faircode/email/EntityOperation.java index 0aca061862..e7a9db4068 100644 --- a/app/src/main/java/eu/faircode/email/EntityOperation.java +++ b/app/src/main/java/eu/faircode/email/EntityOperation.java @@ -181,6 +181,7 @@ public class EntityOperation { // 0: target folder // 1: mark seen // 2: auto classified + // 3: no block sender // Parameters out: // 0: target folder @@ -211,6 +212,16 @@ public class EntityOperation { if (source == null || target == null || source.id.equals(target.id)) return; + if (EntityFolder.JUNK.equals(target.type) && + Objects.equals(source.account, target.account) && + (jargs.opt(3) == null || !jargs.optBoolean(3))) { + jargs.remove(3); + EntityLog.log(context, "Auto block sender=" + MessageHelper.formatAddresses(message.from)); + EntityContact.update(context, + message.account, message.identity, message.from, + EntityContact.TYPE_JUNK, message.received); + } + if (EntityFolder.DRAFTS.equals(source.type) && EntityFolder.TRASH.equals(target.type)) autoread = true; diff --git a/app/src/main/java/eu/faircode/email/FragmentMessages.java b/app/src/main/java/eu/faircode/email/FragmentMessages.java index 5d9e01a332..fb24ceb12b 100644 --- a/app/src/main/java/eu/faircode/email/FragmentMessages.java +++ b/app/src/main/java/eu/faircode/email/FragmentMessages.java @@ -8838,7 +8838,7 @@ public class FragmentMessages extends FragmentBase implements SharedPreferences. throw new IllegalArgumentException(context.getString(R.string.title_no_junk_folder)); if (!message.folder.equals(junk.id)) - EntityOperation.queue(context, message, EntityOperation.MOVE, junk.id); + EntityOperation.queue(context, message, EntityOperation.MOVE, junk.id, null, null, true); if (block_domain) { List rules = EntityRule.blockSender(context, message, junk, block_domain);