function FieldConfigEditForm::actions

Same name in other branches
  1. 9 core/modules/field_ui/src/Form/FieldConfigEditForm.php \Drupal\field_ui\Form\FieldConfigEditForm::actions()
  2. 10 core/modules/field_ui/src/Form/FieldConfigEditForm.php \Drupal\field_ui\Form\FieldConfigEditForm::actions()
  3. 11.x core/modules/field_ui/src/Form/FieldConfigEditForm.php \Drupal\field_ui\Form\FieldConfigEditForm::actions()

Overrides EntityForm::actions

File

core/modules/field_ui/src/Form/FieldConfigEditForm.php, line 146

Class

FieldConfigEditForm
Provides a form for the field settings form.

Namespace

Drupal\field_ui\Form

Code

protected function actions(array $form, FormStateInterface $form_state) {
    $actions = parent::actions($form, $form_state);
    $actions['submit']['#value'] = $this->t('Save settings');
    if (!$this->entity
        ->isNew()) {
        $target_entity_type = $this->entityTypeManager
            ->getDefinition($this->entity
            ->getTargetEntityTypeId());
        $route_parameters = [
            'field_config' => $this->entity
                ->id(),
        ] + FieldUI::getRouteBundleParameter($target_entity_type, $this->entity
            ->getTargetBundle());
        $url = new Url('entity.field_config.' . $target_entity_type->id() . '_field_delete_form', $route_parameters);
        if ($this->getRequest()->query
            ->has('destination')) {
            $query = $url->getOption('query');
            $query['destination'] = $this->getRequest()->query
                ->get('destination');
            $url->setOption('query', $query);
        }
        $actions['delete'] = [
            '#type' => 'link',
            '#title' => $this->t('Delete'),
            '#url' => $url,
            '#access' => $this->entity
                ->access('delete'),
            '#attributes' => [
                'class' => [
                    'button',
                    'button--danger',
                ],
            ],
        ];
    }
    return $actions;
}

Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.