public function EntityFormDisplay::processForm in Drupal 9
Same name and namespace in other branches
- 8 core/lib/Drupal/Core/Entity/Entity/EntityFormDisplay.php \Drupal\Core\Entity\Entity\EntityFormDisplay::processForm()
Process callback: assigns weights and hides extra fields.
See also
\Drupal\Core\Entity\Entity\EntityFormDisplay::buildForm()
File
- core/
lib/ Drupal/ Core/ Entity/ Entity/ EntityFormDisplay.php, line 209
Class
- EntityFormDisplay
- Configuration entity that contains widget options for all components of an entity form in a given form mode.
Namespace
Drupal\Core\Entity\EntityCode
public function processForm($element, FormStateInterface $form_state, $form) {
// Assign the weights configured in the form display.
foreach ($this
->getComponents() as $name => $options) {
if (isset($element[$name])) {
$element[$name]['#weight'] = $options['weight'];
}
}
// Hide extra fields.
$extra_fields = \Drupal::service('entity_field.manager')
->getExtraFields($this->targetEntityType, $this->bundle);
$extra_fields = isset($extra_fields['form']) ? $extra_fields['form'] : [];
foreach ($extra_fields as $extra_field => $info) {
if (!$this
->getComponent($extra_field)) {
$element[$extra_field]['#access'] = FALSE;
}
}
return $element;
}