[Legacy] Add check for mulitienums on mass

This commit is contained in:
Jack Anderson 2024-04-16 14:31:55 +01:00 committed by j.anderson
parent 5e489dc08b
commit 235e6bb72f
2 changed files with 19 additions and 2 deletions

View file

@ -86,8 +86,10 @@ class SugarFieldMultienum extends SugarFieldEnum
public function save(&$bean, $params, $field, $properties, $prefix = '')
{
if (isset($params[$prefix.$field])) {
if ($params[$prefix.$field][0] === '' && !empty($params[$prefix.$field][1])) {
unset($params[$prefix.$field][0]);
if (is_array($params[$prefix.$field])){
if ($params[$prefix.$field][0] === '' && !empty($params[$prefix.$field][1])) {
unset($params[$prefix.$field][0]);
}
}
$bean->$field = encodeMultienumValue($params[$prefix.$field]);

View file

@ -236,6 +236,21 @@ class MassUpdatePort extends MassUpdate
}
}
if ($type === 'multienum' && str_contains($value, '^__SugarMassUpdateClearField__^')) {
if (str_contains($value, '^__SugarMassUpdateClearField__^,')) {
$inputs[$field] = str_replace('^__SugarMassUpdateClearField__^,', '', $value);
continue;
}
if (str_contains($value, ',^__SugarMassUpdateClearField__^')) {
$inputs[$field] = str_replace(',^__SugarMassUpdateClearField__^', '', $value);
continue;
}
$inputs[$field] = str_replace('^__SugarMassUpdateClearField__^', '', $value);
}
if (
($type === 'radioenum' && isset($inputs[$field]) && $value === '') ||
($type === 'enum' && $value === '__SugarMassUpdateClearField__') // Set to '' if it's an explicit clear