MediaWiki:Common.js

From Essence of Flow Wiki
Revision as of 21:54, 18 December 2025 by Essencewikilol (talk | contribs)
Jump to navigation Jump to search

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)
  • Internet Explorer / Edge: Hold Ctrl while clicking Refresh, or press Ctrl-F5
  • Opera: Press Ctrl-F5.
/* Any JavaScript here will be loaded for all users on every page load. */

function setupLevelSliderSpan(wrapperSelector, min, max) {
    const wrapper = document.querySelector(wrapperSelector);
    if (!wrapper) return;

    const valueDisplay = wrapper.querySelector('.levelValue');
    const increase = wrapper.querySelector('.increase');
    const decrease = wrapper.querySelector('.decrease');

    if (!valueDisplay || !increase || !decrease) return;

    const updateDisplay = () => {
        valueDisplay.textContent = valueDisplay.dataset.value;
    };

    increase.addEventListener('click', () => {
        let current = parseInt(valueDisplay.dataset.value);
        if (current < max) valueDisplay.dataset.value = current + 1;
        updateDisplay();
    });

    decrease.addEventListener('click', () => {
        let current = parseInt(valueDisplay.dataset.value);
        if (current > min) valueDisplay.dataset.value = current - 1;
        updateDisplay();
    });

    // initialize display
    updateDisplay();
}

// On page load
document.addEventListener('DOMContentLoaded', () => {
    setupLevelSliderSpan('.level-slider-wrapper', 1, 10);
});