Index: branches/5.2.x/core/units/helpers/user_helper.php =================================================================== diff -u -N -r14726 -r14968 --- branches/5.2.x/core/units/helpers/user_helper.php (.../user_helper.php) (revision 14726) +++ branches/5.2.x/core/units/helpers/user_helper.php (.../user_helper.php) (revision 14968) @@ -1,6 +1,6 @@ Application->isAdmin ) { - return; - } - + $language_field = $this->Application->isAdmin ? 'AdminLanguage' : 'FrontLanguage'; + $primary_language_field = $this->Application->isAdmin ? 'AdminInterfaceLang' : 'PrimaryLang'; $is_root = $this->Application->RecallVar('user_id') == USER_ROOT; $object =& $this->getUserObject(); - $user_language_id = $is_root ? $this->Application->RecallPersistentVar('AdminLanguage') : $object->GetDBField('AdminLanguage'); + $user_language_id = $is_root ? $this->Application->RecallPersistentVar($language_field) : $object->GetDBField($language_field); - $sql = 'SELECT LanguageId, IF(LanguageId = ' . (int)$user_language_id . ', 2, AdminInterfaceLang) AS SortKey + $sql = 'SELECT LanguageId, IF(LanguageId = ' . (int)$user_language_id . ', 2, ' . $primary_language_field . ') AS SortKey FROM ' . TABLE_PREFIX . 'Language WHERE Enabled = 1 HAVING SortKey <> 0 @@ -381,12 +379,12 @@ $language_id = $language_info && $language_info['LanguageId'] ? $language_info['LanguageId'] : $user_language_id; if ( $user_language_id != $language_id ) { - // first admin login OR language was deleted or disabled + // first login OR language was deleted or disabled if ( $is_root ) { - $this->Application->StorePersistentVar('AdminLanguage', $language_id); + $this->Application->StorePersistentVar($language_field, $language_id); } else { - $object->SetDBField('AdminLanguage', $language_id); + $object->SetDBField($language_field, $language_id); $object->Update(); } }