You are here

public function EntityformTypeFormController::form in Entityform 8.2

File

lib/Drupal/entityform/EntityformTypeFormController.php, line 21
Contains \Drupal\entityform\EntityformTypeFormController.

Class

EntityformTypeFormController
Form controller for entityform type forms.

Namespace

Drupal\entityform

Code

public function form(array $form, array &$form_state) {
  $form = parent::form($form, $form_state);
  \Drupal::request()->attributes->geti;
  $type = $this->entity;
  if ($this->operation == 'add') {
    drupal_set_title(t('Add entityform type'));
  }
  elseif ($this->operation == 'edit') {
    drupal_set_title(t('Edit %label entityform type', array(
      '%label' => $type
        ->label(),
    )), PASS_THROUGH);
  }
  $entityform_type_settings = $type
    ->getModuleSettings('entityform');

  // Ensure default settings.
  $form['label'] = array(
    '#title' => t('Name'),
    '#type' => 'textfield',
    '#default_value' => $type->label,
    '#description' => t('The human-readable name of this entityform type. This text will be displayed as part of the list on the <em>Add new entityform</em> page. It is recommended that this name begin with a capital letter and contain only letters, numbers, and spaces. This name must be unique.'),
    '#required' => TRUE,
    '#size' => 30,
  );
  $form['type'] = array(
    '#type' => 'machine_name',
    '#default_value' => $type
      ->id(),
    '#maxlength' => 32,
    '#disabled' => $type
      ->isLocked(),
    '#machine_name' => array(
      //'exists' => 'node_type_load',
      'source' => array(
        'label',
      ),
    ),
    '#description' => t('A unique machine-readable name for this entityform type. It must only contain lowercase letters, numbers, and underscores. This name will be used for constructing the URL of the %node-add page, in which underscores will be converted into hyphens.', array(
      '%node-add' => t('Add new entityform type'),
    )),
  );
  $form['description'] = array(
    '#title' => t('Description'),
    '#type' => 'textarea',
    '#default_value' => $type->description,
    '#description' => t('Describe this entityform type. The text will be displayed on the <em>Add new entityform type</em> page.'),
  );
  $form['additional_settings'] = array(
    '#type' => 'vertical_tabs',
  );
  $form['submission'] = array(
    '#type' => 'details',
    '#title' => t('Submission form settings'),
    '#group' => 'additional_settings',
  );
  $form['submission']['form_title'] = array(
    '#title' => t('Title field label'),
    '#type' => 'textfield',
    '#default_value' => $type->form_title,
    '#required' => TRUE,
  );
  $form['submission']['help'] = array(
    '#type' => 'textarea',
    '#title' => t('Explanation or submission guidelines'),
    '#default_value' => $type->help,
    '#description' => t('This text will be displayed at the top of the page when creating or editing entityform type of this type.'),
  );
  return $form;
}