options of a conf var of type select can be retrieved by a hook

This commit is contained in:
Uwe Steinmann 2023-10-13 11:38:02 +02:00
parent 14a3da7855
commit 437f9e894f

View File

@ -581,7 +581,14 @@ if(($kkk = $this->callHook('getFullSearchEngine')) && is_array($kkk))
if(!empty($conf['options'])) {
$selections = empty($settings->_extensions[$extname][$confkey]) ? array() : explode(",", $settings->_extensions[$extname][$confkey]);
echo "<select class=\"chzn-select\" name=\"extensions[".$extname."][".$confkey."][]\"".(!empty($conf['multiple']) ? " multiple" : "").(!empty($conf['size']) ? " size=\"".$conf['size']."\"" : "")." style=\"width: 100%;\">";
foreach($conf['options'] as $key=>$opt) {
if(is_array($conf['options'])) {
$options = $conf['options'];
} elseif(is_string($conf['options']) && $conf['options'] == 'hook') {
$options = $this->callHook('getOptions', $confkey, $extname, $extconf);
} else {
$options = [];
}
foreach($options as $key=>$opt) {
echo "<option value=\"".$key."\"";
if(in_array($key, $selections))
echo " selected";