MediaWiki:Gadget-main-spoiler-warning-screen.js

Revision as of 19:05, 3 February 2025 by TadeLn (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.
/* Finds elements by a selector and executes a function for each element */
function findAndExecute(selector, callback) {
    const elements = document.querySelectorAll(selector);
    elements.forEach((element) => {
        try {
            callback(element);
        } catch (e) {
            console.error(`Error while initializing "${selector}"`, e);
        }
    });
}

/* Spoiler warning screen */
window.rgwiki_main_spoilerWarningScreenShown = false;
findAndExecute(".rgwiki-main-show-spoiler-warning-screen", () => {
    if (window.rgwiki_main_spoilerWarningScreenShown) {
        return;
    }

    let screen = document.createElement("div");
    screen.innerText = "Spoiler warning!";
    screen.classList.add("rgwiki-main-spoiler-warning-screen");
    document.body.appendChild(screen);

    window.rgwiki_main_spoilerWarningScreenShown = true;
});