refactor: streamline disposable email validation in account API

- Replaced the previous disposable email validation logic with the EmailNotDisposable validator from the Utopia Emails library for consistency and improved maintainability.
- Removed unnecessary configuration loading related to disposable emails, aligning with recent updates to the email validation process.
This commit is contained in:
Eldad Fux
2025-10-19 22:09:26 +01:00
parent 6c6c71484d
commit c89d075200
+4 -6
View File
@@ -1978,9 +1978,8 @@ App::post('/v1/account/tokens/magic-url')
}
if (($plan['supportsDisposableEmailValidation'] ?? false) && ($project->getAttribute('auths', [])['disposableEmails'] ?? false)) {
$disposableEmails = Config::getParam('disposableEmails', []);
$emailDomain = substr(strrchr($email, "@"), 1);
if (isset($disposableEmails[$emailDomain])) {
$emailNotDisposableValidator = new EmailNotDisposable();
if (!$emailNotDisposableValidator->isValid($email)) {
throw new Exception(Exception::USER_EMAIL_DISPOSABLE);
}
}
@@ -2237,9 +2236,8 @@ App::post('/v1/account/tokens/email')
}
if (($plan['supportsDisposableEmailValidation'] ?? false) && ($project->getAttribute('auths', [])['disposableEmails'] ?? false)) {
$disposableEmails = Config::getParam('disposableEmails', []);
$emailDomain = substr(strrchr($email, "@"), 1);
if (isset($disposableEmails[$emailDomain])) {
$emailNotDisposableValidator = new EmailNotDisposable();
if (!$emailNotDisposableValidator->isValid($email)) {
throw new Exception(Exception::USER_EMAIL_DISPOSABLE);
}
}