Avoid wiping out keys of numeric preference select options with array_merge()

Fixed by changing them from key => value to Et2Select's preferred [key=>string, value=>string] format first.

This fixes wrong select option values for many preferences
This commit is contained in:
nathan 2023-01-11 14:18:01 -07:00
parent f332b7bba5
commit 9aea7be231

View File

@ -11,6 +11,7 @@
*/ */
use EGroupware\Api; use EGroupware\Api;
use EGroupware\Api\Etemplate\Widget\Select;
use EGroupware\Api\Framework; use EGroupware\Api\Framework;
use EGroupware\Api\Egw; use EGroupware\Api\Egw;
use EGroupware\Api\Image; use EGroupware\Api\Image;
@ -500,6 +501,7 @@ class preferences_settings
// move values/options to sel_options array // move values/options to sel_options array
if (isset($setting['values']) && is_array($setting['values']) && !$setting['no_sel_options']) if (isset($setting['values']) && is_array($setting['values']) && !$setting['no_sel_options'])
{ {
Select::fix_encoded_options($setting['values'], true);
if ($old_type != 'multiselect' && $old_type != 'notify') if ($old_type != 'multiselect' && $old_type != 'notify')
{ {
switch($type) switch($type)