You are here

classy.theme in Drupal 9

Same filename and directory in other branches
  1. 8 core/themes/classy/classy.theme

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.theme
View 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

Namesort descending 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().