public static function RegistrantFields::removeIdentity in RNG - Events and Registrations 8.2
Same name and namespace in other branches
- 3.x src/Form/RegistrantFields.php \Drupal\rng\Form\RegistrantFields::removeIdentity()
File
- src/
Form/ RegistrantFields.php, line 216
Class
- RegistrantFields
- Class RegistrantFields
Namespace
Drupal\rng\FormCode
public static function removeIdentity(array $form, FormStateInterface $form_state) {
$trigger = $form_state
->getTriggeringElement();
$parents = $trigger['#array_parents'];
// Trim off last two elements - identity_types, remove_element
array_pop($parents);
array_pop($parents);
$element = NestedArray::getValue($form, $parents);
/** @var RegistrantInterface $registrant */
$registrant = reset($element['#value']);
$registrant
->clearIdentity();
$event_type = $registrant
->getRegistration()
->getEventMeta()
->getEventType();
if ($event_type
->getAutoAttachUsers()) {
$email_field = $event_type
->getRegistrantEmailField();
$registrant
->set($email_field, null);
}
}