/* * Ícone "P.I.D." do card de login (`#login-logo-btn`). Fora de qualquer tema * sazonal: clicar faz os olhos do disquete piscarem * (`.pid-icon-eye`/`pidIconBlink` em base.css, mesmo mecanismo da logo da * sidebar em sidebar-brand.js). Durante o Halloween * (`pidIsHalloweenActive()`, seasonal-theme.js): o ícone vira o vampiro * (`pidApplyVampireIcon`) e o clique dispara a animação de "susto" * (`pidTriggerVampireScare`, `.is-scaring` em base.css) em vez da piscada. * Durante o Aniversário (`pidIsAniversarioActive()`, só 15/10): o ícone * ganha os balões (`pidApplyAniversarioIcon`) e o clique dispara o "clique * de festa" (`pidTriggerAniversarioParty`, pula + joga confete + língua-de- * sogra) ALÉM da piscada normal — a cara de repouso não muda nesse tema, * então a piscada continua fazendo sentido (os dois efeitos convivem, ver * base.css). Sem navegação nenhuma aqui — já estamos na tela de login, é só * um toque de graça ao clicar no mascote. */ document.addEventListener("DOMContentLoaded", () => { const btn = document.getElementById("login-logo-btn"); if (!btn) return; const halloween = typeof pidIsHalloweenActive === "function" && pidIsHalloweenActive(); const aniversario = !halloween && typeof pidIsAniversarioActive === "function" && pidIsAniversarioActive(); if (halloween) { pidApplyVampireIcon(btn.querySelector(".login-card__logo")); if (typeof pidApplySeasonalFavicon === "function") pidApplySeasonalFavicon("pid-halloween-icone-escuro.svg"); if (typeof pidApplyHalloweenCobwebs === "function") pidApplyHalloweenCobwebs("pw-cobwebs-login"); } else if (aniversario) { pidApplyAniversarioIcon(btn.querySelector(".login-card__logo")); if (typeof pidApplySeasonalFavicon === "function") pidApplySeasonalFavicon("pid-aniversario-icone-escuro.svg"); } btn.addEventListener("click", () => { if (halloween) { pidTriggerVampireScare(btn); return; } if (aniversario) { pidTriggerAniversarioParty(btn); } btn.querySelectorAll(".pid-icon-eye").forEach((eye) => { eye.classList.remove("is-blinking"); void eye.getBoundingClientRect(); eye.classList.add("is-blinking"); }); }); });