mirror of
https://github.com/devcode-it/openstamanager.git
synced 2025-02-17 03:51:06 +01:00
Fix settings multipli da query
This commit is contained in:
parent
86b2b36bd1
commit
2da25e4b3b
@ -176,26 +176,36 @@ class Settings
|
|||||||
|
|
||||||
// Lista multipla
|
// Lista multipla
|
||||||
elseif (preg_match("/multiple\[(.+?)\]/", $setting->tipo, $m)) {
|
elseif (preg_match("/multiple\[(.+?)\]/", $setting->tipo, $m)) {
|
||||||
|
$list = [];
|
||||||
|
|
||||||
//Gestisco il multiple da query
|
//Gestisco il multiple da query trasformando i risultati in formato List
|
||||||
if (strstr($setting->tipo,'query=')) {
|
if (strstr($setting->tipo,'query=')) {
|
||||||
|
$database = database();
|
||||||
|
|
||||||
$value = str_replace(']', '', explode('[', $setting->tipo)[1]);
|
$value = str_replace(']', '', explode('[', $setting->tipo)[1]);
|
||||||
$select_values = '"'.str_replace('"', '\"', $value).'"';
|
$query = str_replace('query=', '', $value);
|
||||||
|
$query = str_replace('"', '\"', $query);
|
||||||
|
$rs = $database->fetchArray($query);
|
||||||
|
foreach($rs as $r){
|
||||||
|
$list[] = [
|
||||||
|
'id' => $r['id'],
|
||||||
|
'text' => $r['descrizione'],
|
||||||
|
];
|
||||||
|
}
|
||||||
|
|
||||||
}else{
|
}else{
|
||||||
$values = explode(',', $m[1]);
|
$values = explode(',', $m[1]);
|
||||||
|
|
||||||
$list = [];
|
|
||||||
foreach ($values as $value) {
|
foreach ($values as $value) {
|
||||||
$list[] = [
|
$list[] = [
|
||||||
'id' => $value,
|
'id' => $value,
|
||||||
'text' => $value,
|
'text' => $value,
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
$select_values = json_encode($list);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
$result = '
|
$result = '
|
||||||
{[ "type": "select", "multiple": 1, "label": '.json_encode($setting->nome).', "readonly": "'.!$setting->editable.'", "name": "setting['.$setting->id.'][]", "values": '.$select_values.', "value": "'.$setting->valore.'", "required": "'.intval($required).'", "help": "'.$setting->help.'" ]}';
|
{[ "type": "select", "multiple": 1, "label": '.json_encode($setting->nome).', "readonly": "'.!$setting->editable.'", "name": "setting['.$setting->id.'][]", "values": '.json_encode($list).', "value": "'.$setting->valore.'", "required": "'.intval($required).'", "help": "'.$setting->help.'" ]}';
|
||||||
}
|
}
|
||||||
|
|
||||||
// Lista da query
|
// Lista da query
|
||||||
|
Loading…
x
Reference in New Issue
Block a user