function markdown_form_alter in Markdown 8.2
Implements hook_form_FORM_ID_alter(). @noinspection PhpUnused @noinspection PhpDocSignatureInspection @noinspection PhpUnusedParameterInspection
File
- ./
markdown.module, line 68 - Markdown module.
Code
function markdown_form_alter(&$form, FormStateInterface $form_state, $formId) {
// Ignore non-filter-format forms.
if (!in_array($formId, [
'filter_format_add_form',
'filter_format_edit_form',
], TRUE)) {
return;
}
static $compatibleFilters;
if (!isset($compatibleFilters)) {
/** @var \Drupal\filter\FilterPluginManager $filterManager */
$filterManager = \Drupal::service('plugin.manager.filter');
$compatibleFilters = array_fill_keys(array_keys($filterManager
->getDefinitions()), TRUE);
\Drupal::moduleHandler()
->alter('markdown_compatible_filters', $compatibleFilters);
$compatibleFilters = array_keys(array_filter($compatibleFilters));
}
foreach (Element::children($form['filters']['status']) as $name) {
if (!in_array($name, $compatibleFilters, TRUE)) {
$form['filters']['status']['markdown']['#states']['enabled']['[name="filters[' . $name . '][status]"]'] = [
'checked' => FALSE,
];
$form['filters']['status'][$name]['#states']['enabled']['[name="filters[markdown][status]"]'] = [
'checked' => FALSE,
];
if (!isset($form['filters']['status'][$name]['#description'])) {
$form['filters']['status'][$name]['#description'] = '';
}
$form['filters']['status'][$name]['#description'] .= t('Note: not compatible with the Markdown filter.');
}
}
}