Example #1
0
 /**
  * {@inheritdoc}
  */
 public function submitForm(array &$form, FormStateInterface $form_state)
 {
     // Handle the default value.
     $default_value = array();
     if (isset($form['field']['default_value'])) {
         $items = $form['#entity']->get($this->field->getName());
         $default_value = $items->defaultValuesFormSubmit($form['field']['default_value'], $form, $form_state);
     }
     $this->field->default_value = $default_value;
     // Merge incoming values into the field.
     foreach ($form_state->getValue('field') as $key => $value) {
         $this->field->set($key, $value);
     }
     $this->field->save();
     drupal_set_message($this->t('Saved %label configuration.', array('%label' => $this->field->getLabel())));
     $request = $this->getRequest();
     if (($destinations = $request->query->get('destinations')) && ($next_destination = FieldUI::getNextDestination($destinations))) {
         $request->query->remove('destinations');
         $form_state->setRedirectUrl($next_destination);
     } else {
         $form_state->setRedirectUrl(FieldUI::getOverviewRouteInfo($this->field->entity_type, $this->field->bundle));
     }
 }