diff --git a/include/class.dynamic_forms.php b/include/class.dynamic_forms.php index 2118a96f53dcf845108d674857a83f08bc5b3156..49b7e94e38e0bc8bec219e3b41f8d11d235f7af9 100644 --- a/include/class.dynamic_forms.php +++ b/include/class.dynamic_forms.php @@ -1238,7 +1238,10 @@ class DynamicFormEntry extends VerySimpleModel { function addMissingFields() { foreach ($this->getFields() as $field) { if ($field->isnew && $field->isEnabled() - && !$field->isPresentationOnly()) { + && !$field->isPresentationOnly() + && $field->hasData() + && $field->isStorable() + ) { $a = DynamicFormEntryAnswer::create( array('field_id'=>$field->get('id'), 'entry'=>$this)); diff --git a/include/class.ticket.php b/include/class.ticket.php index 27a677b2324e86ac36f074aa9a0198f10ddc1caa..ae3d909648a004581e4724d40cc3db71a121ac40 100644 --- a/include/class.ticket.php +++ b/include/class.ticket.php @@ -2624,6 +2624,7 @@ implements RestrictedAccess, Threadable { // Don't validate deleted forms if (!in_array($form->getId(), $vars['forms'])) continue; + $form->filterFields(function($f) { return !$f->isStorable(); }); $form->setSource($_POST); if (!$form->isValid(function($f) { return $f->isVisibleToStaff() && $f->isEditableToStaff();