You are here

function media_directories_editor_form_media_directories_config_form_alter in Media Directories 2.x

Same name and namespace in other branches
  1. 8 modules/media_directories_editor/media_directories_editor.module \media_directories_editor_form_media_directories_config_form_alter()

Implements hook_form_FORM_ID_alter().

Adding settings to the media_directories config form here.

File

modules/media_directories_editor/media_directories_editor.module, line 17
Main module file.

Code

function media_directories_editor_form_media_directories_config_form_alter(&$form, FormStateInterface $form_state, $form_id) {
  $form['media_directories_editor'] = [
    '#type' => 'details',
    '#title' => t('Editor Settings'),
    '#description' => t("Here you'll find settings regarding the CKEditor integration."),
    '#collapsible' => TRUE,
    '#collapsed' => FALSE,
    '#tree' => TRUE,
  ];
  $form['media_directories_editor']['directories_button'] = [
    '#type' => 'fieldset',
    '#title' => t('Directories button'),
    '#description' => t('The desired text formats should be given the editor button. You can edit them <a href=":url">here</a>. <em>Make sure to also enable the embed media filter!</em>', [
      ':url' => Url::fromRoute('filter.admin_overview')
        ->toString(),
    ]),
  ];
  $config = \Drupal::configFactory()
    ->get('media_directories_editor.settings');
  $form['media_directories_editor']['embed_dialog'] = [
    '#type' => 'details',
    '#title' => t('Embed dialog'),
    '#description' => t('Extra settings for embed dialog.'),
    '#open' => TRUE,
  ];
  $image_styles = image_style_options(FALSE);
  $form['media_directories_editor']['embed_dialog']['image_styles'] = [
    '#title' => t('Select images styles to use'),
    '#description' => t('Select list of image styles to show in embed dialog. If nothing is selected, all styles will be shown.'),
    '#type' => 'select',
    '#options' => $image_styles,
    '#multiple' => TRUE,
    '#size' => 10,
    '#default_value' => $config
      ->get('embed_dialog.image_styles'),
  ];
  if (!empty($config
    ->get('embed_dialog.image_styles'))) {
    $form['media_directories_editor']['#open'] = TRUE;
  }
  array_unshift($form['#submit'], 'media_directories_editor_config_form_submit');
}