🚧 Simplify admin translate method

This commit is contained in:
Flavio Copes
2016-01-28 15:07:41 +01:00
parent 5170a9d2c4
commit 30a08f6203
2 changed files with 8 additions and 21 deletions

View File

@@ -833,23 +833,11 @@ class Admin
/**
* Translate a string to the user-defined language
*
* @param string $string the string to translate
* @param array|mixed $args
*
* @return string
*/
public function translate($string)
{
return $this->_translate($string, [$this->grav['user']->authenticated ? $this->grav['user']->language : 'en']);
}
/**
* @param array|mixed $args
* @param array|null $languages
* @param bool $array_support
* @param bool $html_out
* @return string
*/
public function _translate($args, Array $languages = null, $array_support = false, $html_out = false)
public function translate($args)
{
if (is_array($args)) {
$lookup = array_shift($args);
@@ -858,6 +846,8 @@ class Admin
$args = [];
}
$languages = [$this->grav['user']->authenticated ? $this->grav['user']->language : 'en'];
if ($lookup) {
if (empty($languages) || reset($languages) == null) {
if ($this->grav['config']->get('system.languages.translations_fallback', true)) {
@@ -866,22 +856,19 @@ class Admin
$languages = (array)$this->grav['language']->getDefault();
}
}
} else {
$languages = ['en'];
}
foreach ((array)$languages as $lang) {
$translation = $this->grav['language']->getTranslation($lang, $lookup, $array_support);
$translation = $this->grav['language']->getTranslation($lang, $lookup);
if (!$translation) {
$language = $this->grav['language']->getDefault() ?: 'en';
$translation = $this->grav['language']->getTranslation($language, $lookup, $array_support);
$translation = $this->grav['language']->getTranslation($language, $lookup);
}
if (!$translation) {
$language = 'en';
$translation = $this->grav['language']->getTranslation($language, $lookup, $array_support);
$translation = $this->grav['language']->getTranslation($language, $lookup);
}
if ($translation) {