Project

General

Profile

Actions

Bug #73353

closed

Unable to set backend user language

Added by KJ Kooistra about 8 years ago. Updated about 8 years ago.

Status:
Closed
Priority:
Should have
Assignee:
-
Category:
-
Target version:
-
Start date:
2016-02-12
Due date:
% Done:

0%

Estimated time:
TYPO3 Version:
6.2
PHP Version:
Tags:
Complexity:
easy
Is Regression:
No
Sprint Focus:

Description

When I tried to set the backend language for my (admin) backend user I noticed the labels were not translated. After a little debugging I found the following lines in the BackendUserAuthentication::backendSetUC() method:

// Setting default lang from be_user record.
if (!isset($this->uc['lang'])) {
    $this->uc['lang'] = $this->user['lang'];
    $updated = TRUE;
}

Whether the uc['lang'] is set to the default (empty) value or a specific language key, it is always set. Therefore the uc['lang'] will never be updated with the user['lang'] setting.

I also tested this on a 7.6.2 environment which seems to have the same piece of code, but it asks to relog the backend user after you change the language. So I figured I may need to relog on 6.2, but that didn't work either. Does 7.6 initialize the language somewhere else?

The solution to me seems to be to add an additional condition to the if statement. But I'll leave this to someone who may have some more insight in the language logic.

if (!isset($this->uc['lang']) || $this->uc['lang'] !== $this->user['lang']) {

Tested on TYPO3_6-2 branch with the latest changes.

Actions

Also available in: Atom PDF