From a3297a256eb3064366c5f6a352fbc1deb28b49bb Mon Sep 17 00:00:00 2001 From: JediKev <kevin@enhancesoft.com> Date: Wed, 22 May 2019 10:30:57 -0500 Subject: [PATCH] issue: Retained Deleted ListItem Errors This addresses an issue where New Tickets will fail for Users with a deleted ListItem retained in their Contact Information form. This is due to the system deleting the `list_id` for the ListItem so when we run `getFilterData()` for the User we can't find the list which causes a fatal error later down the line. This adds an OR statement to the `SelectionField::getFilterData()` method to skip said ListItems if no `list_id` is present. --- include/class.dynamic_forms.php | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/include/class.dynamic_forms.php b/include/class.dynamic_forms.php index f7f73a268..3c4786f24 100644 --- a/include/class.dynamic_forms.php +++ b/include/class.dynamic_forms.php @@ -1775,7 +1775,8 @@ class SelectionField extends FormField { // Add in the properties for all selected list items in sub // labeled by their field id foreach ($v as $id=>$L) { - if (!($li = DynamicListItem::lookup($id))) + if (!($li = DynamicListItem::lookup($id)) + || !$li->getListId()) continue; foreach ($li->getFilterData() as $prop=>$value) { if (!isset($data[$prop])) -- GitLab