Jump to content

MediaWiki:Main Page.js

From Ditzy Wiki
Revision as of 01:32, 13 March 2026 by Redk1tty (talk | contribs)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)

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.
const footer = document.querySelector('#footer');
const observer = new IntersectionObserver(entries => {
    entries.forEach(entry => {
        if (entry.isIntersecting) {
            document.body.classList.add('footer-visible');
        } else {
            document.body.classList.remove('footer-visible');
        }
    });
});

observer.observe(footer);

mw.hook('wikipage.content').add(function ($content) {
  const link = $content.find('a[href="/wiki/File:Doomguy.gif"]');

  link.removeAttr("href").css("cursor", "pointer");

  link.on("contextmenu", function (e) {
    e.preventDefault(); // stop right-click menu
  });

  link.on("mousedown", function (e) {

    if (e.button === 0) {
      let ungh = document.getElementById("DoomUngh");

      if (!ungh) {
        ungh = document.createElement("audio");
        ungh.id = "DoomUngh";
        ungh.src = "https://okayxairen.wiki/images/6/69/Ungh.mp3";
        ungh.preload = "auto";
        document.body.appendChild(ungh);
      }

      ungh.preservesPitch = false;
      ungh.playbackRate = 0.8 + Math.random() * 0.4; // 80–120%
      ungh.currentTime = 0;
      ungh.play();
    }

    if (e.button === 2) {
      let music = document.getElementById("SickTunes");

      if (!music) {
        music = document.createElement("audio");
        music.id = "SickTunes";
        music.src = "https://okayxairen.wiki/images/e/e0/E1M1_Roland.wav";
        music.preload = "auto";
        document.body.appendChild(music);
      }

      music.playbackRate = 1;

      if (music.paused) {
        music.play();
      } else {
        music.pause();
      }
    }
  });
});