MediaWiki:Common.js: Difference between revisions

From QME Wiki
Jump to navigation Jump to search
No edit summary
No edit summary
Line 24: Line 24:
   // Disable clicking on image links for anonymous users
   // Disable clicking on image links for anonymous users
   if (mw.config.get('wgUserGroups').includes('anon')) {
   if (mw.config.get('wgUserGroups').includes('anon')) {
     document.querySelectorAll('a > img').forEach(function(img) {
    // Event delegation: handle current and future links
       let link = img.parentElement;
     document.body.addEventListener('click', function(event) {
       if (link && link.tagName === 'A') {
       const anchor = event.target.closest('a');
        link.addEventListener('click', function(event) {
       if (!anchor) return;
          event.preventDefault();
 
         });
      if (anchor.querySelector('img')) {
        link.style.cursor = 'default';
        event.preventDefault();
         anchor.style.cursor = 'default';
      }
    });
 
    // Attempt to disable MediaViewer for anonymous users
    mw.loader.using('mediawiki.mediaViewer', function() {
      if (window.MediaViewer) {
        MediaViewer.disabled = true;
       }
       }
     });
     });
   }
   }
});
});

Revision as of 16:37, 7 August 2025

// Google Analytics 4 tracking via MediaWiki:Common.js
(function() {
  var gaScript = document.createElement('script');
  gaScript.async = true;
  gaScript.src = 'https://www.googletagmanager.com/gtag/js?id=G-01G5LMDW7X';
  document.head.appendChild(gaScript);

  window.dataLayer = window.dataLayer || [];
  function gtag(){ dataLayer.push(arguments); }
  window.gtag = gtag;

  gtag('js', new Date());
  gtag('config', 'G-01G5LMDW7X');
})();

document.addEventListener("DOMContentLoaded", function () {
  // Disable right-click on all images
  document.addEventListener("contextmenu", function (event) {
    if (event.target.tagName === "IMG") {
      event.preventDefault();
    }
  });

  // Disable clicking on image links for anonymous users
  if (mw.config.get('wgUserGroups').includes('anon')) {
    // Event delegation: handle current and future links
    document.body.addEventListener('click', function(event) {
      const anchor = event.target.closest('a');
      if (!anchor) return;

      if (anchor.querySelector('img')) {
        event.preventDefault();
        anchor.style.cursor = 'default';
      }
    });

    // Attempt to disable MediaViewer for anonymous users
    mw.loader.using('mediawiki.mediaViewer', function() {
      if (window.MediaViewer) {
        MediaViewer.disabled = true;
      }
    });
  }
});
By using this site, you agree to the Terms of Use. © 1996–2025 The Quincy Examiner / MTB. All rights reserved.