MediaWiki:Common.js: Difference between revisions
Jump to navigation
Jump to search
No edit summary |
No edit summary |
||
| Line 1: | Line 1: | ||
(function () { | (function () { | ||
'use strict'; | 'use strict'; | ||
| Line 20: | Line 14: | ||
if (!siteNotice) return; | if (!siteNotice) return; | ||
// If empty, do nothing | |||
var txt = (siteNotice.textContent || '').replace(/\s+/g, ' ').trim(); | var txt = (siteNotice.textContent || '').replace(/\s+/g, ' ').trim(); | ||
if (!txt) return; | if (!txt) return; | ||
siteNotice.classList.add('icelist-anon-donate'); | siteNotice.classList.add('icelist-anon-donate'); | ||
// Add close button once | // Add close button once | ||
| Line 37: | Line 27: | ||
btn.setAttribute('aria-label', 'Close'); | btn.setAttribute('aria-label', 'Close'); | ||
btn.textContent = '×'; | btn.textContent = '×'; | ||
siteNotice.insertBefore(btn, siteNotice.firstChild); | siteNotice.insertBefore(btn, siteNotice.firstChild); | ||
btn.addEventListener('click', function (e) { | btn.addEventListener('click', function (e) { | ||
e.preventDefault(); | e.preventDefault(); | ||
siteNotice.style.display = 'none'; | siteNotice.style.display = 'none'; | ||
localStorage.setItem(KEY, String(Date.now() + DAYS * 24 * 60 * 60 * 1000)); | localStorage.setItem(KEY, String(Date.now() + DAYS * 24 * 60 * 60 * 1000)); | ||
| Line 50: | Line 37: | ||
} | } | ||
if (document.readyState === 'loading') { | |||
document.addEventListener('DOMContentLoaded', mount); | |||
} else { | |||
mount(); | |||
} | |||
})(); | })(); | ||
Latest revision as of 22:13, 20 December 2025
(function () {
'use strict';
var KEY = 'icelist_anon_donate_dismiss_until';
var DAYS = 14;
if (!mw.user.isAnon()) return;
var until = parseInt(localStorage.getItem(KEY) || '0', 10);
if (Date.now() < until) return;
function mount() {
var siteNotice = document.getElementById('siteNotice');
if (!siteNotice) return;
// If empty, do nothing
var txt = (siteNotice.textContent || '').replace(/\s+/g, ' ').trim();
if (!txt) return;
siteNotice.classList.add('icelist-anon-donate');
// Add close button once
if (!siteNotice.querySelector('.icelist-notice-close')) {
var btn = document.createElement('button');
btn.type = 'button';
btn.className = 'icelist-notice-close';
btn.setAttribute('aria-label', 'Close');
btn.textContent = '×';
siteNotice.insertBefore(btn, siteNotice.firstChild);
btn.addEventListener('click', function (e) {
e.preventDefault();
siteNotice.style.display = 'none';
localStorage.setItem(KEY, String(Date.now() + DAYS * 24 * 60 * 60 * 1000));
});
}
}
if (document.readyState === 'loading') {
document.addEventListener('DOMContentLoaded', mount);
} else {
mount();
}
})();