From fb73bfa300fb48b654854cb085cbdecde2658f1c Mon Sep 17 00:00:00 2001 From: Adrian Victor Date: Wed, 1 Jul 2026 15:08:00 -0300 Subject: [PATCH] Add click sound effect and option to disable on settings. --- _data/i18n.js | 2 ++ _includes/base.njk | 1 + _includes/header.njk | 1 + static/audio/click.ogg | Bin 0 -> 23672 bytes static/audio/hover.ogg | Bin 0 -> 11954 bytes static/scripts/click.js | 26 ++++++++++++++++++++++++++ static/scripts/music.js | 10 ++++++++++ 7 files changed, 40 insertions(+) create mode 100644 static/audio/click.ogg create mode 100644 static/audio/hover.ogg create mode 100644 static/scripts/click.js diff --git a/_data/i18n.js b/_data/i18n.js index ab17402..6189f42 100644 --- a/_data/i18n.js +++ b/_data/i18n.js @@ -69,6 +69,7 @@ module.exports = { by: "by", back: "back", hideBackground: "Hide background", + disableSoundEffects: "Disable sound effects", options: "Options", alsoAvailableAsVideo: "Also available as video", websiteDescription: "Personal website/blog of Adrian Victor.", @@ -124,6 +125,7 @@ module.exports = { by: "por", back: "voltar", hideBackground: "Esconder imagem de fundo", + disableSoundEffects: "Desabilitar efeitos sonoros", options: "Opções", alsoAvailableAsVideo: "Também disponível em vídeo", websiteDescription: "Website/blog pessoal de Adrian Victor.", diff --git a/_includes/base.njk b/_includes/base.njk index 28fb5d7..b25667b 100644 --- a/_includes/base.njk +++ b/_includes/base.njk @@ -20,6 +20,7 @@ + diff --git a/_includes/header.njk b/_includes/header.njk index 29d6f22..704f163 100644 --- a/_includes/header.njk +++ b/_includes/header.njk @@ -12,6 +12,7 @@ permissionIssue: "{{ i18n[langKey].permissionIssue | safe }}", permissionIssueNotificationContent: "{{ i18n[langKey].permissionIssueNotificationContent | safe }}", notificationDefaultHint: "{{ i18n[langKey].notificationDefaultHint | safe }}", + disableSoundEffects: "{{ i18n[langKey].disableSoundEffects | safe }}" } diff --git a/static/audio/click.ogg b/static/audio/click.ogg new file mode 100644 index 0000000000000000000000000000000000000000..c0c8461df714a4866097cdf42a936d94a105739f GIT binary patch literal 23672 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 F1^{H?i}L^g literal 0 HcmV?d00001 diff --git a/static/audio/hover.ogg b/static/audio/hover.ogg new file mode 100644 index 0000000000000000000000000000000000000000..45a0cc198cbf4c22ff6259454ef571dbefaa82a0 GIT binary patch literal 11954 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 literal 0 HcmV?d00001 diff --git a/static/scripts/click.js b/static/scripts/click.js new file mode 100644 index 0000000..2fc6cc1 --- /dev/null +++ b/static/scripts/click.js @@ -0,0 +1,26 @@ +/* +This script plays a sound when user clicks on the page. +*/ + +const click = new Audio(`${rootPrefix}static/audio/click.ogg`); +const hover = new Audio(`${rootPrefix}static/audio/hover.ogg`); +click.preload = "auto"; +hover.preload = "auto"; +click.volume = 0.5; +hover.volume = 0.5; + + +document.body.addEventListener("click", () => { + if (localStorage.getItem("disablesfx") == 'true') return; + + click.currentTime = 0; + click.play().catch(() => {}); +}); + +document.querySelectorAll('a').forEach(link => { + link.addEventListener("mouseenter", () => { + if (localStorage.getItem("disablesfx") == 'true') return; + hover.currentTime = 0; + hover.play().catch(() => {}); + }) +}) diff --git a/static/scripts/music.js b/static/scripts/music.js index da8e108..c8d0f6e 100644 --- a/static/scripts/music.js +++ b/static/scripts/music.js @@ -49,6 +49,10 @@ optionsAside.classList.add("metromenu");

${headeri18n.hideBackground}

+
+

${headeri18n.disableSoundEffects}

+ +
` optionsAside.appendChild(content); @@ -76,6 +80,12 @@ function toggleBG() { localStorage.setItem("bgHidden", bg.classList.contains("invisible")) } +const disableSFX = document.querySelector("input#soundEffects"); +if (localStorage.getItem("disablesfx") === "true") disableSFX.checked = true; +disableSFX.addEventListener("click", () => { + localStorage.setItem("disablesfx", disableSFX.checked) +}) + const songsDrawer = document.querySelector("#songDrawer"); const drawerSongs = []; const playlist = document.querySelector("#playlist");