mirror of
https://github.com/M66B/FairEmail.git
synced 2026-04-05 08:33:37 +02:00
Refactoring
This commit is contained in:
@@ -1019,6 +1019,7 @@ public class EntityRule {
|
||||
if (message.from == null)
|
||||
return rules;
|
||||
|
||||
List<String> domains = new ArrayList<>();
|
||||
for (Address from : message.from) {
|
||||
String sender = ((InternetAddress) from).getAddress();
|
||||
String name = MessageHelper.formatAddresses(new Address[]{from});
|
||||
@@ -1029,10 +1030,11 @@ public class EntityRule {
|
||||
|
||||
boolean regex = false;
|
||||
if (block_domain) {
|
||||
int at = sender.indexOf('@');
|
||||
if (at > 0) {
|
||||
String domain = UriHelper.getEmailDomain(sender);
|
||||
if (!TextUtils.isEmpty(domain) && !domains.contains(domain)) {
|
||||
domains.add(domain);
|
||||
regex = true;
|
||||
sender = ".*@.*" + Pattern.quote(sender.substring(at + 1)) + ".*";
|
||||
sender = ".*@.*" + Pattern.quote(domain) + ".*";
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -323,22 +323,21 @@ public class FragmentDialogJunk extends FragmentDialogBase {
|
||||
}
|
||||
});
|
||||
|
||||
List<String> regex = new ArrayList<>();
|
||||
regex.addAll(COMMON_DOMAINS);
|
||||
regex.addAll(EmailProvider.getDomainNames(context));
|
||||
|
||||
boolean common = false;
|
||||
List<String> domains = new ArrayList<>();
|
||||
if (froms != null)
|
||||
for (Address from : froms) {
|
||||
String email = ((InternetAddress) from).getAddress();
|
||||
int at = (email == null ? -1 : email.indexOf('@'));
|
||||
String domain = (at < 0 ? null : email.substring(at + 1).toLowerCase(Locale.ROOT));
|
||||
if (TextUtils.isEmpty(domain))
|
||||
String domain = UriHelper.getEmailDomain(email);
|
||||
if (TextUtils.isEmpty(domain) || domains.contains(domain))
|
||||
continue;
|
||||
|
||||
domains.add(domain);
|
||||
|
||||
List<String> regex = new ArrayList<>();
|
||||
regex.addAll(COMMON_DOMAINS);
|
||||
regex.addAll(EmailProvider.getDomainNames(context));
|
||||
|
||||
for (String r : regex)
|
||||
if (domain.matches(r)) {
|
||||
common = true;
|
||||
|
||||
Reference in New Issue
Block a user