diff --git a/administrator/components/com_fields/src/Model/FieldModel.php b/administrator/components/com_fields/src/Model/FieldModel.php index 9b1a84afb4121..4f3ebf3ba9561 100644 --- a/administrator/components/com_fields/src/Model/FieldModel.php +++ b/administrator/components/com_fields/src/Model/FieldModel.php @@ -117,13 +117,17 @@ public function save($data) $field = $this->getItem($data['id']); } - if ( - isset($data['params']['searchindex']) - && ((\is_null($field) && $data['params']['searchindex'] > 0) - || ($field->params['searchindex'] != $data['params']['searchindex']) - || ($data['params']['searchindex'] > 0 && ($field->state != $data['state'] || $field->access != $data['access']))) - ) { - Factory::getApplication()->enqueueMessage(Text::_('COM_FIELDS_SEARCHINDEX_MIGHT_REQUIRE_REINDEXING'), 'notice'); + if (isset($data['params']['searchindex'])) { + if (\is_null($field)) { + if ($data['params']['searchindex'] > 0) { + Factory::getApplication()->enqueueMessage(Text::_('COM_FIELDS_SEARCHINDEX_MIGHT_REQUIRE_REINDEXING'), 'notice'); + } + } elseif ( + $field->params['searchindex'] != $data['params']['searchindex'] + || ($data['params']['searchindex'] > 0 && ($field->state != $data['state'] || $field->access != $data['access'])) + ) { + Factory::getApplication()->enqueueMessage(Text::_('COM_FIELDS_SEARCHINDEX_MIGHT_REQUIRE_REINDEXING'), 'notice'); + } } if (!isset($data['label']) && isset($data['params']['label'])) {