Fix campi personalizzati con valori multipli
This commit is contained in:
parent
d7316f73ee
commit
34c3b6242b
|
@ -496,6 +496,8 @@ if ($structure->permission == 'rw') {
|
||||||
foreach ($customs as $custom) {
|
foreach ($customs as $custom) {
|
||||||
if (post($custom['name']) !== null) {
|
if (post($custom['name']) !== null) {
|
||||||
$values[$custom['id']] = post($custom['name']);
|
$values[$custom['id']] = post($custom['name']);
|
||||||
|
}else{
|
||||||
|
$values[$custom['id']] = '';
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -520,6 +522,7 @@ if ($structure->permission == 'rw') {
|
||||||
$customs_present = array_column($customs_present, 'id_field');
|
$customs_present = array_column($customs_present, 'id_field');
|
||||||
|
|
||||||
foreach ($values as $key => $value) {
|
foreach ($values as $key => $value) {
|
||||||
|
$value = (!is_array($value) ? $value : json_encode($value));
|
||||||
if (in_array($key, $customs_present)) {
|
if (in_array($key, $customs_present)) {
|
||||||
$dbo->update('zz_field_record', [
|
$dbo->update('zz_field_record', [
|
||||||
'value' => $value,
|
'value' => $value,
|
||||||
|
|
|
@ -82,6 +82,12 @@ class FieldManager implements ManagerInterface
|
||||||
|
|
||||||
$field['value'] = isset($field['value']) ? $field['value'] : '';
|
$field['value'] = isset($field['value']) ? $field['value'] : '';
|
||||||
|
|
||||||
|
//Gestione valori multipli
|
||||||
|
$values = json_decode((string)$field['value'],true);
|
||||||
|
if( is_array($values) ){
|
||||||
|
$field['value'] = implode(",",$values);
|
||||||
|
}
|
||||||
|
|
||||||
$replace = [
|
$replace = [
|
||||||
'value' => $field['value'],
|
'value' => $field['value'],
|
||||||
'label' => $field['name'],
|
'label' => $field['name'],
|
||||||
|
@ -103,8 +109,8 @@ class FieldManager implements ManagerInterface
|
||||||
}
|
}
|
||||||
|
|
||||||
// Forzatura inizializzazione componente
|
// Forzatura inizializzazione componente
|
||||||
$component = \HTMLBuilder\HTMLBuilder::decode($field['content'], 'manager');
|
$component = \HTMLBuilder\HTMLBuilder::decode(\Filter::sanitize($field['content']), 'manager');
|
||||||
$result .= '<script>$(document).ready( function(){ input("#'.$component['name'].'").init(); });</script>';
|
$result .= '<script>$(document).ready( function(){ input("#'.(!empty($component['id']) ? $component['id'] : $component['name']).'").init(); });</script>';
|
||||||
}
|
}
|
||||||
|
|
||||||
if (($key + 1) % 3 != 0) {
|
if (($key + 1) % 3 != 0) {
|
||||||
|
|
|
@ -96,3 +96,6 @@ ALTER TABLE `an_sedi` ADD `is_rappresentante_fiscale` BOOLEAN NULL DEFAULT FALSE
|
||||||
INSERT INTO `zz_settings` (`nome`, `valore`, `tipo`, `editable`, `sezione`, `order`, `help`) VALUES ("Cifre decimali per importi in stampa", '2', 'list[0,1,2,3,4,5]', 1, 'Generali', '35', 'Definisce il numero di decimali per gli importi nei template di stampa');
|
INSERT INTO `zz_settings` (`nome`, `valore`, `tipo`, `editable`, `sezione`, `order`, `help`) VALUES ("Cifre decimali per importi in stampa", '2', 'list[0,1,2,3,4,5]', 1, 'Generali', '35', 'Definisce il numero di decimali per gli importi nei template di stampa');
|
||||||
INSERT INTO `zz_settings` (`nome`, `valore`, `tipo`, `editable`, `sezione`, `order`, `help`) VALUES ("Cifre decimali per quantità in stampa", '0', 'list[0,1,2,3,4,5]', 1, 'Generali', '36', 'Definisce il numero di decimali per le quantità nei template di stampa');
|
INSERT INTO `zz_settings` (`nome`, `valore`, `tipo`, `editable`, `sezione`, `order`, `help`) VALUES ("Cifre decimali per quantità in stampa", '0', 'list[0,1,2,3,4,5]', 1, 'Generali', '36', 'Definisce il numero di decimali per le quantità nei template di stampa');
|
||||||
INSERT INTO `zz_settings` (`nome`, `valore`, `tipo`, `editable`, `sezione`, `order`, `help`) VALUES ("Cifre decimali per totali in stampa", '2', 'list[0,1,2]', 1, 'Generali', '37', 'Definisce il numero di decimali per i totali nei template di stampa');
|
INSERT INTO `zz_settings` (`nome`, `valore`, `tipo`, `editable`, `sezione`, `order`, `help`) VALUES ("Cifre decimali per totali in stampa", '2', 'list[0,1,2]', 1, 'Generali', '37', 'Definisce il numero di decimali per i totali nei template di stampa');
|
||||||
|
|
||||||
|
-- Fix per vista modulo campi personalizzati
|
||||||
|
UPDATE `zz_modules` SET `options` = 'SELECT\r\n |select|\r\nFROM\r\n `zz_fields`\r\n LEFT JOIN `zz_modules` ON `zz_modules`.`id` = `zz_fields`.`id_module`\r\n LEFT JOIN `zz_plugins` ON `zz_plugins`.`id` = `zz_fields`.`id_plugin`\r\nWHERE\r\n 1=1\r\nHAVING\r\n 2=2' WHERE `zz_modules`.`name` = 'Campi personalizzati';
|
Loading…
Reference in New Issue