From a6d09a2ce5277946a455a700e1fe4b2172065e09 Mon Sep 17 00:00:00 2001 From: paulwer Date: Sun, 24 Mar 2024 11:00:29 +0100 Subject: [PATCH] feat: global blacklist for specific emails --- app/Services/IngresEmail/IngresEmailEngine.php | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/app/Services/IngresEmail/IngresEmailEngine.php b/app/Services/IngresEmail/IngresEmailEngine.php index bb03f9d5cce8..64f3d28ee165 100644 --- a/app/Services/IngresEmail/IngresEmailEngine.php +++ b/app/Services/IngresEmail/IngresEmailEngine.php @@ -34,7 +34,8 @@ class IngresEmailEngine private ?Company $company; private ?bool $isUnknownRecipent = null; - private array $globalBlacklist = []; + private array $globalBlacklistDomains = []; + private array $globalBlacklistEmails = []; public function __construct(private IngresEmail $email) { } @@ -72,8 +73,12 @@ class IngresEmailEngine $domain = array_pop($parts); // global blacklist - if (in_array($domain, $this->globalBlacklist)) { - Log::info('[IngressMailEngine] E-Mail blocked, because the domain was found on globalBlocklist: ' . $this->email->from); + if (in_array($domain, $this->globalBlacklistDomains)) { + Log::info('[IngressMailEngine] E-Mail blocked, because the domain was found on globalBlocklistDomains: ' . $this->email->from); + return true; + } + if (in_array($this->email->from, $this->globalBlacklistEmails)) { + Log::info('[IngressMailEngine] E-Mail blocked, because the email was found on globalBlocklistEmails: ' . $this->email->from); return true; }