From 9c40ccbc3ecea8e7b3502a13e1e8a8cbb648224c Mon Sep 17 00:00:00 2001 From: Torben <59419684+entorb@users.noreply.github.com> Date: Sat, 14 Oct 2023 08:02:21 +0200 Subject: [PATCH] play notification sound when estimated time is reached --- .gitignore | 1 + README.md | 4 ++++ scripts/sync_to_server.sh | 1 + src/audio/481151__matrixxx__cow-bells-01.mp3 | Bin 0 -> 11078 bytes src/helper.js | 20 +++++++++++++++++++ src/main.js | 4 ++++ 6 files changed, 30 insertions(+) create mode 100644 src/audio/481151__matrixxx__cow-bells-01.mp3 diff --git a/.gitignore b/.gitignore index 4d21628..81eeb92 100644 --- a/.gitignore +++ b/.gitignore @@ -8,3 +8,4 @@ src/lib/ .DS_Store src/1.js src/2.js +src/audio/*.wav diff --git a/README.md b/README.md index d5e8b24..cad3c80 100644 --- a/README.md +++ b/README.md @@ -37,3 +37,7 @@ GitHub Actions are used to perform automated code quality checks upon PR creatio Spell checking via CSpell See `spelling.json` for custom dictionary + +## Credits + +* the notification sound `481151__matrixxx__cow-bells-01.wav` is from [freesound.org](https://freesound.org/people/MATRIXXX_/sounds/481151/) diff --git a/scripts/sync_to_server.sh b/scripts/sync_to_server.sh index e07a8d5..b9e2695 100755 --- a/scripts/sync_to_server.sh +++ b/scripts/sync_to_server.sh @@ -7,3 +7,4 @@ cd $script_dir/.. rsync -rvhu --delete --no-perms --exclude *.test.js src/*.js entorb@entorb.net:html/eta/ rsync -rvhu --delete --no-perms src/*.html entorb@entorb.net:html/eta/ rsync -rvhu --delete --no-perms src/*.css entorb@entorb.net:html/eta/ +rsync -rvhu --delete --no-perms src/audio/*.mp3 entorb@entorb.net:html/eta/audio/ diff --git a/src/audio/481151__matrixxx__cow-bells-01.mp3 b/src/audio/481151__matrixxx__cow-bells-01.mp3 new file mode 100644 index 0000000000000000000000000000000000000000..26c4986da2dcd0ebc869fa8dc98fc8462183a73a GIT binary patch literal 11078 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 U0