public function evaluate($input = null)
{
// Set the input, if passed
if (null !== $input) {
$this->input = $input;
}
// Set the default message
if (null === $this->defaultMessage) {
if ($this->condition) {
$this->defaultMessage = I18n::factory()->__('The value must be numeric.');
} else {
$this->defaultMessage = I18n::factory()->__('The value must not be numeric.');
}
}
// Evaluate the input against the validator
if ((is_numeric($this->input) == $this->value) != $this->condition) {
$this->result = true;
} else {
$this->result = false;
}
return $this->result;
}