diff --git a/phpBB/docs/CHANGELOG.html b/phpBB/docs/CHANGELOG.html
index ebad2241cd..a74b38e3d5 100644
--- a/phpBB/docs/CHANGELOG.html
+++ b/phpBB/docs/CHANGELOG.html
@@ -269,14 +269,14 @@ p a {
[Fix] Finer error conditions for sending IM messages (Bugs #13681, #13683)
[Fix] Add a confirmation for log deletion in the MCP (Bug #13693)
[Fix] Do not erase ranks and avatars when changing default groups (Bugs #13701, #13697)
- [Fix] Limit author searches to firstpost, if selected (Bug #13579)
+ [Fix] Limit author searches to firstpost, if selected (Bug #13579)
[Fix] store Date custom profile field defaults on multi-lingual boards
[Fix] Properly resync user post counts for users that have no posts (Bug #13581)
[Fix] Do not require space after , in smiley pak files (Bug #13647)
[Fix] Properly display the subscribe link in topic and forum display for Oracle (Bug #13583)
[Change] Add version number to ACP index (Bug #13703)
[Fix] Quick-Mod tools now retaining the start parameter (Bug #13537)
-
+ [Fix] Several fixes for custom profile fields on multi-lingual boards
diff --git a/phpBB/includes/acp/acp_profile.php b/phpBB/includes/acp/acp_profile.php
index 35a2f7bcd4..1b32a7de74 100644
--- a/phpBB/includes/acp/acp_profile.php
+++ b/phpBB/includes/acp/acp_profile.php
@@ -931,10 +931,9 @@ class acp_profile
foreach ($options as $field => $field_type)
{
$value = ($action == 'create') ? utf8_normalize_nfc(request_var('l_' . $field, array(0 => ''), true)) : $cp->vars['l_' . $field];
-
if ($field == 'lang_options')
{
- $var = ($action == 'create' || !is_array($cp->vars['l_lang_options'][$lang_id])) ? $cp->vars['lang_options'] : $cp->vars['lang_options'][$lang_id];
+ $var = (!isset($cp->vars['l_lang_options'][$lang_id]) || !is_array($cp->vars['l_lang_options'][$lang_id])) ? $cp->vars['lang_options'] : $cp->vars['l_lang_options'][$lang_id];
switch ($field_type)
{
@@ -949,10 +948,10 @@ class acp_profile
break;
case 'optionfield':
-
+ $value = ((isset($value[$lang_id])) ? ((is_array($value[$lang_id])) ? implode("\n", $value[$lang_id]) : $value[$lang_id]) : implode("\n", $var));
$lang_options[$lang_id]['fields'][$field] = array(
'TITLE' => $user->lang['CP_' . strtoupper($field)],
- 'FIELD' => ''
+ 'FIELD' => ''
);
break;
}