User:PrimeHunter/Source links.js

Nowadays, User:PrimeHunter/Source links.js is a topic that has aroused great interest in different areas. From politics to health, fashion and technology, User:PrimeHunter/Source links.js has become a recurring talking point. Opinions on this matter are varied and polarized, which has generated an enriching and, at times, heated debate. In this article, we will explore different perspectives on User:PrimeHunter/Source links.js and how it impacts our current society. In addition, we will analyze its evolution over the years and its projection for the future. Without a doubt, User:PrimeHunter/Source links.js is a topic that leaves no one indifferent, and deserves deep and well-argued reflection.
/* This script adds "Source links" below "What links here" in the sidebar.
   "What links here" will include pages using a template with the link.
   "Source links" tries to search for pages where the link is in the source.
   To use the script, add the following line to ]:
 
importScript('User:PrimeHunter/Source links.js'); // Linkback: ]

*/

mw.loader.using(, function () {
  var name = mw.config.get( 'wgPageName' ).replace("Special:WhatLinksHere/", "");
  var url;
  try {
      url = mw.util.getUrl( 'Special:Search' ) + '?trimsearch=1&profile=all&search=' +
      encodeURIComponent('linksto:"' + name + '" ' + 'insource:"' + name + '" ' +
      'insource:/\\ + name.charAt(0).toLowerCase() + ']' +
      name.substring(1).replace(/{}()*+!<=:?.\/\\^$|#\s,]/g, '\\$&') + '\\|#]/' ).replace(/_/g, " ");
  } catch(e) {
      url = '#error'; // EXAMPLE URL: https://en.wikipedia.org/w/index.php?title=%F0%9F%91%A9%F0%9F%8F%BF&action=history
  }
  mw.util.addPortletLink(
    'p-tb',
    url,
    'Source links',
    'pt-sourcelinks',
    'What links here in the source',
    null,
    '#t-recentchangeslinked'
  );
});

/* The url generated above adds the parameter trimsearch=1 when "Source links" is clicked.
   If it's present then trim search results by hiding two classes for images and data. */
const queryString = window.location.search;
console.log(queryString);
const urlParams = new URLSearchParams(queryString);
const trimsearch = urlParams.get('trimsearch');
if (trimsearch === '1') {
  var searchimages = document.getElementsByClassName('searchResultImage-thumbnail');
  for (var i = 0; i < searchimages.length; i ++) {
    searchimages.style.display = 'none';
  }
  var searchdata = document.getElementsByClassName('mw-search-result-data');
  for (var i = 0; i < searchdata.length; i ++) {
    searchdata.style.display = 'none';
  }
}