Fixed login/logout message translations.

This commit is contained in:
Andy Miller
2016-05-03 13:36:06 -06:00
parent 7256d65a0e
commit 98a19f01e4
3 changed files with 20 additions and 6 deletions

View File

@@ -107,7 +107,7 @@ class Admin
$language = $this->grav['uri']->param('lang');
if (!$language) {
if (!$this->session->admin_lang) {
$this->session->admin_lang = $this->grav['language']->getLanguage();
$this->session->admin_lang = $this->grav['language']->getLanguage();
}
$language = $this->session->admin_lang;
}
@@ -187,6 +187,9 @@ class Admin
/** @var Grav $grav */
$grav = $this->grav;
unset($this->grav['user']);
$this->grav['user'] = $user;
$this->setMessage($this->translate('PLUGIN_ADMIN.LOGIN_LOGGED_IN'), 'info');
$grav->redirect($post['redirect']);
}
@@ -950,18 +953,27 @@ class Admin
*
* @param array|mixed $args
*
* @param mixed $languages
* @return string
*/
public function translate($args)
public function translate($args, $languages = null)
{
if (is_array($args)) {
$lookup = array_shift($args);
if (!empty($args)) {
$languages = array_shift($args);
}
} else {
$lookup = $args;
$args = [];
}
$languages = [$this->grav['user']->authenticated ? $this->grav['user']->language : ($this->grav['language']->getLanguage() ?: 'en')];
if (!$languages) {
$languages = [$this->grav['user']->authenticated ? $this->grav['user']->language : ($this->grav['language']->getLanguage() ?: 'en')];
} else {
$languages = (array) $languages;
}
if ($lookup) {
if (empty($languages) || reset($languages) == null) {

View File

@@ -269,9 +269,10 @@ class AdminController
*/
protected function taskLogout()
{
$language = $this->grav['user']->authenticated ? $this->grav['user']->language : ($this->grav['language']->getLanguage() ?: 'en');
$this->admin->session()->invalidate()->start();
$this->admin->setMessage($this->admin->translate('PLUGIN_ADMIN.LOGGED_OUT'), 'info');
$this->setRedirect('/logout');
$this->setRedirect('/logout/lang:'.$language);
return true;
}

View File

@@ -10,7 +10,8 @@
<h1>
{{ title }}
</h1>
{{ admin.setMessage('PLUGIN_ADMIN.LOGGED_OUT'|tu) }}
{{ dump (uri.param('lang')) }}
{{ admin.setMessage('PLUGIN_ADMIN.LOGGED_OUT'|tu(uri.param('lang'))) }}
{% include 'partials/messages.html.twig' %}
</section>
</body>