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;
}
}
}
}
