From bc89c1d7a8b980c5be77a3d203fd9c5ed377a252 Mon Sep 17 00:00:00 2001 From: Kibi Kelburton Date: Fri, 22 May 2026 18:15:31 +0200 Subject: [PATCH] zomg indicator --- public/s/css/f0ckm.css | 27 +++++++++++++++++++++++---- public/s/js/f0ckm.js | 9 ++++++++- 2 files changed, 31 insertions(+), 5 deletions(-) diff --git a/public/s/css/f0ckm.css b/public/s/css/f0ckm.css index 1324d2e..ce5dfce 100644 --- a/public/s/css/f0ckm.css +++ b/public/s/css/f0ckm.css @@ -14395,15 +14395,16 @@ body.scroller-active #gchat-reopen-bubble { .filter-badge { position: absolute; bottom: -6px; - font-size: 6px; - font-weight: 796; - padding: 2px 4px; + right: -8px; + font-size: 8px; + font-weight: 800; + padding: 1px 4px; border-radius: 4px; line-height: 1; text-transform: uppercase; color: #fff !important; box-shadow: 0 1px 3px rgba(0, 0, 0, 0.5); - pointer-events: none; + cursor: pointer; font-family: var(--font, monospace); letter-spacing: 0.5px; z-index: 10; @@ -14484,4 +14485,22 @@ body.scroller-active #gchat-reopen-bubble { background-color: #f1c40f; /* Yellow */ box-shadow: 0 0 3px #f1c40f; +} + +/* ZOMG Mode glowing Z indicator */ +.zomg-z { + color: #f1c40f; /* Gold/Yellow */ + font-weight: 900; + text-shadow: 0 0 3px #f1c40f; + margin-left: 2px; + animation: zomg-pulse 1.5s infinite alternate; +} + +@keyframes zomg-pulse { + from { + text-shadow: 0 0 2px #f1c40f; + } + to { + text-shadow: 0 0 6px #f1c40f, 0 0 10px #f1c40f; + } } \ No newline at end of file diff --git a/public/s/js/f0ckm.js b/public/s/js/f0ckm.js index a3000e8..3e39bf5 100644 --- a/public/s/js/f0ckm.js +++ b/public/s/js/f0ckm.js @@ -334,8 +334,14 @@ window.cancelAnimFrame = (function () { badgeClass += ' filter-badge-sfw'; } + const isRandom = document.cookie.includes('random_mode=1'); + let zomgHtml = ''; + if (isRandom) { + zomgHtml = ' Z'; + } + badge.className = badgeClass; - badge.innerHTML = badgeText; + badge.innerHTML = badgeText + zomgHtml; if (hasMimeFilter) { const dotsContainer = document.createElement('span'); @@ -4642,6 +4648,7 @@ window.cancelAnimFrame = (function () { btn.classList.remove('active'); } }); + if (window.updateFilterBadge) window.updateFilterBadge(); }; const handleShuffleBtnClick = (btn) => {