<?php

/**
 * @file
 * Functions to support theming in the Stable9 theme.
 */

/**
 * Implements hook_preprocess_item_list__search_results().
 *
 * Converts the markup of #empty for search results.
 */
function stable9_preprocess_item_list__search_results(&$variables): void {
  if (isset($variables['empty']['#tag'])) {
    $variables['empty']['#tag'] = 'h3';
  }
}

/**
 * Implements hook_preprocess_views_view().
 *
 * Adds BC classes that were previously added by the Views module.
 */
function stable9_preprocess_views_view(&$variables): void {
  if (!empty($variables['attributes']['class'])) {
    $bc_classes = preg_replace('/[^a-zA-Z0-9- ]/', '-', $variables['attributes']['class']);
    $variables['attributes']['class'] = array_merge($variables['attributes']['class'], $bc_classes);
  }
  if (!empty($variables['css_class'])) {
    $existing_classes = explode(' ', $variables['css_class']);
    $bc_classes = preg_replace('/[^a-zA-Z0-9- ]/', '-', $existing_classes);
    $variables['css_class'] = implode(' ', array_merge($existing_classes, $bc_classes));
  }
}
