Mercurial > hg > cmmr2012-drupal-site
diff vendor/egulias/email-validator/EmailValidator/Validation/SpoofCheckValidation.php @ 5:12f9dff5fda9 tip
Update to Drupal core 8.7.1
author | Chris Cannam |
---|---|
date | Thu, 09 May 2019 15:34:47 +0100 |
parents | |
children |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/vendor/egulias/email-validator/EmailValidator/Validation/SpoofCheckValidation.php Thu May 09 15:34:47 2019 +0100 @@ -0,0 +1,45 @@ +<?php + +namespace Egulias\EmailValidator\Validation; + +use Egulias\EmailValidator\EmailLexer; +use Egulias\EmailValidator\Exception\InvalidEmail; +use Egulias\EmailValidator\Validation\Error\SpoofEmail; +use \Spoofchecker; + +class SpoofCheckValidation implements EmailValidation +{ + /** + * @var InvalidEmail + */ + private $error; + + public function __construct() + { + if (!extension_loaded('intl')) { + throw new \LogicException(sprintf('The %s class requires the Intl extension.', __CLASS__)); + } + } + + public function isValid($email, EmailLexer $emailLexer) + { + $checker = new Spoofchecker(); + $checker->setChecks(Spoofchecker::SINGLE_SCRIPT); + + if ($checker->isSuspicious($email)) { + $this->error = new SpoofEmail(); + } + + return $this->error === null; + } + + public function getError() + { + return $this->error; + } + + public function getWarnings() + { + return []; + } +}