public function isEmailDenied($email) { $config = CFactory::getConfig(); CFactory::load('helpers', 'validate'); $denied_domains = $config->get('denieddomains'); if (!empty($denied_domains)) { $delimiter = ';'; $blacklists = explode($delimiter, $denied_domains); if (count($blacklists) > 0) { foreach ($blacklists as $domain) { if (CValidateHelper::domain($email, $domain)) { return true; } } } } return false; }
public function isValid($value, $required) { CFactory::load('helpers', 'validate'); $isValid = CValidateHelper::email($value); if (!empty($value) && !$isValid) { return false; } //validate string length if (!$this->validLength($value)) { return false; } //validate allowed domain if (isset($this->params)) { $allowed = $this->params->get('allowed'); if ($allowed) { $delimiter = ';'; $allowed_list = explode($delimiter, $allowed); $valid = false; if (count($allowed_list) > 0) { foreach ($allowed_list as $domain) { if (CValidateHelper::domain($value, $domain)) { $valid = true; } } } if (!$valid) { return false; } } } //validate backlist domain if (isset($this->params)) { $blacklist = $this->params->get('blacklist'); if ($blacklist) { $delimiter = ';'; $blacklists = explode($delimiter, $blacklist); if (count($blacklists) > 0) { foreach ($blacklists as $domain) { if (CValidateHelper::domain($value, $domain)) { return false; } } } } } return true; }