You are here

public function FormModeManagerLinksForm::buildForm in Form mode manager 8

Same name and namespace in other branches
  1. 8.2 src/Form/FormModeManagerLinksForm.php \Drupal\form_mode_manager\Form\FormModeManagerLinksForm::buildForm()

Form constructor.

Parameters

array $form: An associative array containing the structure of the form.

\Drupal\Core\Form\FormStateInterface $form_state: The current state of the form.

Return value

array The form structure.

Overrides ConfigFormBase::buildForm

File

src/Form/FormModeManagerLinksForm.php, line 93

Class

FormModeManagerLinksForm
Configure Form Mode Manager links.

Namespace

Drupal\form_mode_manager\Form

Code

public function buildForm(array $form, FormStateInterface $form_state) {
  $form['local_taks'] = [
    '#type' => 'details',
    '#title' => $this
      ->t('Local Tasks'),
    '#open' => TRUE,
  ];
  $form['local_taks']['vertical_tabs'] = [
    '#type' => 'vertical_tabs',
  ];
  $form_modes = array_keys($this->formModeManager
    ->getAllFormModesDefinitions(TRUE));
  foreach ($form_modes as $entity_type_id) {
    $form['local_taks']["{$entity_type_id}_local_taks"] = [
      '#type' => 'details',
      '#title' => $entity_type_id,
      '#description' => $this
        ->t('The following options are available for make a better flexibility of local task displaying.'),
      '#group' => 'vertical_tabs',
    ];
    $form['local_taks']["{$entity_type_id}_local_taks"]['tasks_location_' . $entity_type_id] = [
      '#title' => $this
        ->t('Position of Local tasks'),
      '#type' => 'select',
      '#options' => $this->localTaskTypes,
      '#default_value' => $this->settings
        ->get("local_tasks.{$entity_type_id}.position"),
      '#description' => $this
        ->t('The location of local tasks. <ul><li><b>Primary level</b> are at the same position as "Edit" default task</li><li><b>Secondary</b> level place all form-modes tasks below "Edit" task (at secondary menu). </li></ul>'),
      '#weight' => 0,
    ];
  }
  return parent::buildForm($form, $form_state);
}