link_obfuscation-1.0.0-beta3/link_obfuscation.module

link_obfuscation.module
<?php

/**
 * @file
 * Contains link_obfuscation.module.
 */

/**
 * Implements hook_page_attachments_alter().
 */
function link_obfuscation_page_attachments_alter(array &$attachments) {
  $attachments['#attached']['library'][] = 'link_obfuscation/link_obfuscation';
}

/**
 * Implements hook_library_info_alter().
 */
function link_obfuscation_library_info_alter(&$libraries, $extension) {
  if ($extension === 'facets') {
    /** @var \Drupal\Core\Extension\ModuleExtensionList $moduleExtensionList */
    $moduleExtensionList = \Drupal::service('extension.list.module');
    $newPath = '/' . $moduleExtensionList->getPath('link_obfuscation') . '/js';

    $replacements = [
      'js/link-widget.js' => $newPath . '/link-widget.js',
      'js/checkbox-widget.js' => $newPath . '/checkbox-widget.js',
    ];

    foreach (['link-widget', 'checkbox-widget'] as $widget) {
      $libraryName = 'drupal.facets.' . $widget;
      if (isset($libraries[$libraryName])) {
        $new_js = [];
        foreach ($libraries[$libraryName]['js'] as $source => $options) {
          if (isset($replacements[$source])) {
            $new_js[$replacements[$source]] = $options;
          }
          else {
            $new_js[$source] = $options;
          }
        }
        $libraries[$libraryName]['js'] = $new_js;
      }
    }
  }
}

Главная | Обратная связь

drupal hosting | друпал хостинг | it patrol .inc