Esempio n. 1
0
 /**
  * {@inheritdoc}
  */
 public function extractFormValues(FieldItemListInterface $items, array $form, FormStateInterface $form_state)
 {
     $field_name = $this->fieldDefinition->getName();
     // Extract the values from $form_state->getValues().
     $path = array_merge($form['#parents'], array($field_name));
     $key_exists = NULL;
     // Convert the field value into expected array format.
     $values = $form_state->getValues();
     $value = NestedArray::getValue($values, $path, $key_exists);
     if (empty($value)) {
         parent::extractFormValues($items, $form, $form_state);
         return;
     }
     if (!isset($value[0]['target_id'])) {
         NestedArray::setValue($values, $path, [['target_id' => reset($value)]]);
         $form_state->setValues($values);
     }
     parent::extractFormValues($items, $form, $form_state);
 }
 /**
  * {@inheritdoc}
  */
 public static function isApplicable(FieldDefinitionInterface $field_definition)
 {
     return parent::isApplicable($field_definition) && $field_definition->getName() === 'moderation_state';
 }