/**
* Returns an array of javascript validator options.
* @return array javascript validator options.
*/
public function evaluateIsValid()
{
$value = $this->getValidationValue($this->getValidationTarget());
$valid = $valid = is_string($value) && strlen($value) <= 254 && parent::evaluateIsValid();
if ($valid && $this->getCheckMXRecord() && function_exists('checkdnsrr')) {
if ($value !== '') {
if (($pos = strpos($value, '@')) !== false) {
$domain = substr($value, $pos + 1);
return $domain === '' ? false : checkdnsrr($domain, 'MX');
} else {
return false;
}
}
}
return $valid;
}