Jump to content

MediaWiki:Common.js

From Raleighpedia
Revision as of 15:10, 29 January 2026 by FrankMuraca (talk | contribs)

Note: After publishing, you may have to bypass your browser's cache to see the changes.

  • Firefox / Safari: Hold Shift while clicking Reload, or press either Ctrl-F5 or Ctrl-R (⌘-R on a Mac)
  • Google Chrome: Press Ctrl-Shift-R (⌘-Shift-R on a Mac)
  • Edge: Hold Ctrl while clicking Refresh, or press Ctrl-F5.
/* Any JavaScript here will be loaded for all users on every page load. */
document.addEventListener('DOMContentLoaded', function () {
  // Find the "Buy Raleighpedia a coffee" sidebar link
  var links = document.querySelectorAll('#mw-panel a');
  var target = null;

  links.forEach(function (a) {
    if ((a.textContent || '').trim() === 'Buy Raleighpedia a coffee') target = a;
  });

  if (!target) {
    console.log('BMC: sidebar link not found');
    return;
  }

  // Replace link with a container div
  var container = document.createElement('div');
  container.id = 'buymeacoffee';
  target.parentNode.replaceChild(container, target);

  console.log('BMC: container inserted');

  // Load Buy Me a Coffee button script
  var script = document.createElement('script');
  script.src = 'https://cdnjs.buymeacoffee.com/1.0.0/button.prod.min.js';
  script.async = true;

  script.setAttribute('data-name', 'bmc-button');
  script.setAttribute('data-slug', 'Raleighpedia');
  script.setAttribute('data-color', '#FFDD00');
  script.setAttribute('data-font', 'Lato');
  script.setAttribute('data-text', 'Buy Raleighpedia a coffee');
  script.setAttribute('data-outline-color', '#000000');
  script.setAttribute('data-font-color', '#000000');
  script.setAttribute('data-coffee-color', '#ffffff');

  script.onload = function () { console.log('BMC: script loaded'); };
  script.onerror = function (e) { console.log('BMC: script failed', e); };

  container.appendChild(script);
});