classy.theme in Drupal 10
Same filename and directory in other branches
Functions to support theming in the Classy theme.
No changes that impact functionality should be made to this file, as Classy will be deprecated in Drupal 9. Changes should instead be made in the core themes Bartik, Seven, Claro and/or Umami.
File
core/themes/classy/classy.themeView source
<?php
/**
* @file
* Functions to support theming in the Classy theme.
*
* No changes that impact functionality should be made to this file, as Classy
* will be deprecated in Drupal 9. Changes should instead be made in the core
* themes Bartik, Seven, Claro and/or Umami.
*/
use Drupal\Core\Form\FormStateInterface;
use Drupal\views\Form\ViewsForm;
/**
* Implements hook_preprocess_links__media_library_menu().
*
* This targets the menu of available media types in the media library's modal
* dialog.
*
* @todo Do this in the relevant template once
* https://www.drupal.org/project/drupal/issues/3088856 is resolved.
*/
function classy_preprocess_links__media_library_menu(array &$variables) {
foreach ($variables['links'] as &$link) {
$link['link']['#options']['attributes']['class'][] = 'media-library-menu__link';
}
}
/**
* Implements hook_form_alter().
*/
function classy_form_alter(array &$form, FormStateInterface $form_state, $form_id) {
$form_object = $form_state
->getFormObject();
if ($form_object instanceof ViewsForm && strpos($form_object
->getBaseFormId(), 'views_form_media_library') === 0) {
$form['#attributes']['class'][] = 'media-library-views-form';
}
}
/**
* Implements hook_preprocess_image_widget().
*/
function classy_preprocess_image_widget(array &$variables) {
$data =& $variables['data'];
// This prevents image widget templates from rendering preview container HTML
// to users that do not have permission to access these previews.
// @todo revisit in https://drupal.org/node/953034
// @todo revisit in https://drupal.org/node/3114318
if (isset($data['preview']['#access']) && $data['preview']['#access'] === FALSE) {
unset($data['preview']);
}
}
/**
* No changes that impact functionality should be made to this file, as Classy
* will be deprecated in Drupal 9. Changes should instead be made in the core
* themes Bartik, Seven, Claro and/or Umami.
*/
Functions
Name | Description |
---|---|
classy_form_alter | Implements hook_form_alter(). |
classy_preprocess_image_widget | Implements hook_preprocess_image_widget(). |
classy_preprocess_links__media_library_menu | Implements hook_preprocess_links__media_library_menu(). |