You are here

function block_aria_landmark_roles_form_block_form_alter in Block ARIA Landmark Roles 8

Implements hook_form_FORM_ID_alter().

File

./block_aria_landmark_roles.module, line 15
Add ARIA landmark roles to Drupal blocks.

Code

function block_aria_landmark_roles_form_block_form_alter(&$form, FormStateInterface $form_state) {

  /** @var \Drupal\block\Entity\Block $block */
  $block = $form_state
    ->getFormObject()
    ->getEntity();
  $form['third_party_settings']['#tree'] = TRUE;
  $form['third_party_settings']['block_aria_landmark_roles'] = [
    '#title' => t('Block ARIA Landmark Roles settings'),
    '#type' => 'details',
    '#collapsible' => TRUE,
    '#open' => TRUE,
  ];
  $form['third_party_settings']['block_aria_landmark_roles']['role'] = [
    '#title' => t('Landmark role'),
    '#description' => t('Add an ARIA landmark role to this block.'),
    '#type' => 'select',
    '#options' => [
      '' => t('- None -'),
    ] + _block_aria_landmark_roles_get_roles(),
    '#default_value' => $block
      ->getThirdPartySetting('block_aria_landmark_roles', 'role'),
  ];
  $form['third_party_settings']['block_aria_landmark_roles']['label'] = [
    '#title' => t('Label'),
    '#description' => t('Add an ARIA label to this block.'),
    '#type' => 'textfield',
    '#default_value' => $block
      ->getThirdPartySetting('block_aria_landmark_roles', 'label'),
  ];
}