public function translateMessage(\Gajus\Vlad\Validator $validator, \Gajus\Vlad\Selector $selector)
{
$message = $this->getValidatorMessage(get_class($validator));
$message = preg_replace_callback('/\\{([a-z_\\.]+)}/i', function ($e) use($validator, $selector) {
$path = explode('.', $e[1]);
if ($path[0] === 'input' && $path[1] === 'name') {
return $this->getInputName($selector);
} else {
if ($path[0] === 'validator' && $path[1] === 'options') {
$options = $validator->getOptions();
if (isset($path[2]) && isset($options[$path[2]]) && is_scalar($options[$path[2]])) {
return $options[$path[2]];
}
}
}
throw new \Gajus\Vlad\Exception\InvalidArgumentException('Unknown variable ("' . $e[1] . '") in error message.');
}, $message);
return $message;
}