Add no_sel_options to preferences settings in order to be able to use taglist with no sel_options

This commit is contained in:
Hadi Nategh 2017-01-12 12:27:46 +01:00
parent e5b93acc4f
commit 2707b1da0b

View File

@ -184,6 +184,10 @@ class preferences_settings
*/ */
function process_array(array &$repository, array $values, array $types, $appname, $type, $only_verify=false) function process_array(array &$repository, array $values, array $types, $appname, $type, $only_verify=false)
{ {
if (!$this->call_hook($appname, $type, $GLOBALS['egw']->preferences->get_account_id()))
{
throw new Api\Exception\WrongParameter("Could not find settings for application: ".$appname);
}
//_debug_array($repository); //_debug_array($repository);
$prefs = &$repository[$appname]; $prefs = &$repository[$appname];
@ -243,7 +247,7 @@ class preferences_settings
if (isset($value) && $value !== '' && $value !== '**NULL**' && $value !== array()) if (isset($value) && $value !== '' && $value !== '**NULL**' && $value !== array())
{ {
if (is_array($value)) $value = implode(',',$value); // multiselect if (is_array($value) && !$this->settings[$var]['no_sel_options']) $value = implode(',',$value); // multiselect
$prefs[$var] = $value; $prefs[$var] = $value;
@ -392,7 +396,7 @@ class preferences_settings
break; break;
} }
// move values/options to sel_options array // move values/options to sel_options array
if (isset($setting['values']) && is_array($setting['values'])) if (isset($setting['values']) && is_array($setting['values']) && !$setting['no_sel_options'])
{ {
if ($old_type != 'multiselect' && $old_type != 'notify') if ($old_type != 'multiselect' && $old_type != 'notify')
{ {