Commit 49a45db6 authored by catch's avatar catch

Issue #2979944 by alexpott: Remove t() usage in Drupal\Core\Validation

parent 3b6be4d7
......@@ -25,7 +25,10 @@ class DrupalTranslator implements TranslatorInterface {
public function trans($id, array $parameters = [], $domain = NULL, $locale = NULL) {
// If a TranslatableMarkup object is passed in as $id, return it since the
// message has already been translated.
return $id instanceof TranslatableMarkup ? $id : t($id, $this->processParameters($parameters), $this->getOptions($domain, $locale));
if ($id instanceof TranslatableMarkup) {
return $id;
}
return new TranslatableMarkup($id, $this->processParameters($parameters), $this->getOptions($domain, $locale));
}
/**
......@@ -67,7 +70,7 @@ public function getLocale() {
}
/**
* Processes the parameters array for use with t().
* Processes the parameters array for use with TranslatableMarkup.
*/
protected function processParameters(array $parameters) {
$return = [];
......@@ -79,7 +82,8 @@ protected function processParameters(array $parameters) {
$value = (string) $value;
}
if (is_object($value)) {
// t() does not work with objects being passed as replacement strings.
// TranslatableMarkup does not work with objects being passed as
// replacement strings.
}
// Check for symfony replacement patterns in the form "{{ name }}".
elseif (strpos($key, '{{ ') === 0 && strrpos($key, ' }}') == strlen($key) - 3) {
......@@ -95,11 +99,12 @@ protected function processParameters(array $parameters) {
}
/**
* Returns options suitable for use with t().
* Returns options suitable for use with TranslatableMarkup.
*/
protected function getOptions($domain = NULL, $locale = NULL) {
// We do not support domains, so we ignore this parameter.
// If locale is left NULL, t() will default to the interface language.
// If locale is left NULL, TranslatableMarkup will default to the interface
// language.
$locale = isset($locale) ? $locale : $this->locale;
return ['langcode' => $locale];
}
......
......@@ -342,13 +342,3 @@ public function providerTestIsSatisfiedByPassBundledEntity() {
}
}
namespace Drupal\Core\Validation;
if (!function_exists('t')) {
function t($string, array $args = []) {
return strtr($string, $args);
}
}
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment