Skip to content

Commit 342c39e

Browse files
committed
fix(checkboxesfield,multiselectfield): php warning
1 parent 69731d1 commit 342c39e

File tree

1 file changed

+12
-9
lines changed

1 file changed

+12
-9
lines changed

inc/field/checkboxesfield.class.php

+12-9
Original file line numberDiff line numberDiff line change
@@ -52,20 +52,23 @@ public function showForm(array $options): void {
5252

5353
$value = [];
5454
$items = json_decode($this->question->fields['default_values']);
55-
foreach ($items as $item) {
56-
if (trim($item) === '') {
57-
continue;
58-
}
59-
if (!in_array($item, $this->getAvailableValues())) {
60-
continue;
55+
if ($items !== null) {
56+
// when we edit an existing question
57+
foreach ($items as $item) {
58+
if (trim($item) === '') {
59+
continue;
60+
}
61+
if (!in_array($item, $this->getAvailableValues())) {
62+
continue;
63+
}
64+
$value[] = $item;
6165
}
62-
$value[] = $item;
66+
$this->question->fields['default_values'] = implode("\r\n", $value);
67+
$this->deserializeValue($this->question->fields['default_values']);
6368
}
64-
$this->question->fields['default_values'] = implode("\r\n", $value);
6569
$this->question->fields['values'] = json_decode($this->question->fields['values']);
6670
$this->question->fields['values'] = is_array($this->question->fields['values']) ? $this->question->fields['values'] : [];
6771
$this->question->fields['values'] = implode("\r\n", $this->question->fields['values']);
68-
$this->deserializeValue($this->question->fields['default_values']);
6972

7073
$parameters = $this->getParameters();
7174
TemplateRenderer::getInstance()->display($template, [

0 commit comments

Comments
 (0)