public function FlexiformEntityFormDisplay::getFormInformation in Flexiform 8
Get the entity form builder.
This is designed to be helpful for enhancers that want to inspect the resultant form before providing configuration options.
Return value
array An array with two keys:
- form_object: \Drupal\Core\Form\FormBase
- form_state: \Drupal\Core\Form\FormStateInterface
- form: array
File
- src/
FlexiformEntityFormDisplay.php, line 571
Class
- FlexiformEntityFormDisplay
- Defines a class to extend EntityFormDisplays.
Namespace
Drupal\flexiformCode
public function getFormInformation() {
$operation = $this
->get('originalMode') ?: $this
->get('mode');
$form_object = \Drupal::service('flexiform.manager')
->getFormObject($this);
$default_values = [];
if ($bundle_key = $this
->entityTypeManager()
->getDefinition($this
->getTargetEntityTypeId())
->getKey('bundle')) {
$default_values[$bundle_key] = $this
->getTargetBundle();
}
$form_object
->setEntity($this
->entityTypeManager()
->getStorage($this
->getTargetEntityTypeId())
->create($default_values));
$form_state = new FormState();
return [
'form_object' => $form_object,
'form_state' => $form_state,
'form' => \Drupal::service('form_builder')
->buildForm($form_object, $form_state),
];
}