/** * @param Form $entity * @param $sessionFields */ public function deleteFields(Form $entity, $sessionFields) { if (empty($sessionFields)) { return; } $existingFields = $entity->getFields(); $deleteFields = array(); foreach ($sessionFields as $fieldId) { if (isset($existingFields[$fieldId])) { $entity->removeField($fieldId, $existingFields[$fieldId]); $deleteFields[] = $fieldId; } } // Delete fields from db if (count($deleteFields)) { $this->factory->getModel('form.field')->deleteEntities($deleteFields); } }
/** * @param Form $entity * @param $sessionFields */ public function deleteFields(Form $entity, $sessionFields) { if (empty($sessionFields)) { return; } $existingFields = $entity->getFields(); foreach ($sessionFields as $fieldId) { if (isset($existingFields[$fieldId])) { $entity->removeField($fieldId, $existingFields[$fieldId]); } } }
/** * {@inheritDoc} */ public function removeField($key, \Mautic\FormBundle\Entity\Field $field) { $this->__initializer__ && $this->__initializer__->__invoke($this, 'removeField', array($key, $field)); return parent::removeField($key, $field); }