From 24a79fa036e05cabe7d7bf092048c98f10ca3682 Mon Sep 17 00:00:00 2001 From: Carlos Abreu Date: Sat, 28 Mar 2026 20:08:54 +0000 Subject: [PATCH 1/6] Committed alarmclock.js and index.html --- Sprint-3/alarmclock/alarmclock.js | 65 ++++++++++++++++++++++++++++++- Sprint-3/alarmclock/index.html | 4 +- 2 files changed, 66 insertions(+), 3 deletions(-) diff --git a/Sprint-3/alarmclock/alarmclock.js b/Sprint-3/alarmclock/alarmclock.js index 6ca81cd3b..99a137788 100644 --- a/Sprint-3/alarmclock/alarmclock.js +++ b/Sprint-3/alarmclock/alarmclock.js @@ -1,4 +1,52 @@ -function setAlarm() {} +let timerInterval = null; +let currentTime = 0; + +function setAlarm() { + // Clear any existing timer + if (timerInterval) { + clearInterval(timerInterval); + timerInterval = null; + } + + // Get the input value + const input = document.getElementById("alarmSet"); + let totalSeconds = parseInt(input.value); + + // Validate input (if empty or invalid, default to 0) + if (isNaN(totalSeconds)) { + totalSeconds = 0; + } + + currentTime = totalSeconds; + + // Update the display + updateTimeDisplay(currentTime); + + // Start the countdown + timerInterval = setInterval(() => { + if (currentTime > 0) { + currentTime--; + updateTimeDisplay(currentTime); + + // Check if timer reached zero + if (currentTime === 0) { + clearInterval(timerInterval); + timerInterval = null; + playAlarm(); + // Change background color + document.body.style.backgroundColor = "red"; + } + } + }, 1000); +} + +function updateTimeDisplay(totalSeconds) { + const minutes = Math.floor(totalSeconds / 60); + const seconds = totalSeconds % 60; + const formattedTime = `${minutes.toString().padStart(2, "0")}:${seconds.toString().padStart(2, "0")}`; + const heading = document.getElementById("timeRemaining"); + heading.textContent = `Time Remaining: ${formattedTime}`; +} // DO NOT EDIT BELOW HERE @@ -16,10 +64,25 @@ function setup() { function playAlarm() { audio.play(); + // Play continuously by looping + audio.loop = true; } function pauseAlarm() { audio.pause(); + audio.currentTime = 0; + // Reset background color when alarm is stopped + document.body.style.backgroundColor = ""; + + // Clear any ongoing timer + if (timerInterval) { + clearInterval(timerInterval); + timerInterval = null; + } + + // Reset display to 00:00 + currentTime = 0; + updateTimeDisplay(0); } window.onload = setup; diff --git a/Sprint-3/alarmclock/index.html b/Sprint-3/alarmclock/index.html index 48e2e80d9..66748001e 100644 --- a/Sprint-3/alarmclock/index.html +++ b/Sprint-3/alarmclock/index.html @@ -1,10 +1,10 @@ - + - Title here + Alarm clock app
From c5836042dfa01fd177038977c317a1629409abae Mon Sep 17 00:00:00 2001 From: Carlos Abreu Date: Sat, 28 Mar 2026 20:09:26 +0000 Subject: [PATCH 2/6] Committed package.json --- Sprint-3/package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Sprint-3/package.json b/Sprint-3/package.json index 711a5390f..2a009bcd4 100644 --- a/Sprint-3/package.json +++ b/Sprint-3/package.json @@ -26,7 +26,7 @@ "@testing-library/dom": "^10.4.0", "@testing-library/jest-dom": "^6.6.3", "@testing-library/user-event": "^14.6.1", - "jest": "^30.0.4", + "jest": "^30.3.0", "jest-environment-jsdom": "^30.0.4" } } From 80a40b6051846afeb1e2d42dcb86b9ba17eddac6 Mon Sep 17 00:00:00 2001 From: Carlos Abreu <46803505+carlosyabreu@users.noreply.github.com> Date: Tue, 31 Mar 2026 14:18:34 +0100 Subject: [PATCH 3/6] Delete Sprint-3/package.json on remote repo --- Sprint-3/package.json | 32 -------------------------------- 1 file changed, 32 deletions(-) delete mode 100644 Sprint-3/package.json diff --git a/Sprint-3/package.json b/Sprint-3/package.json deleted file mode 100644 index 2a009bcd4..000000000 --- a/Sprint-3/package.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "name": "module-data-groups", - "version": "1.0.0", - "license": "CC-BY-SA-4.0", - "description": "", - "scripts": { - "test": "jest", - "format": "prettier --write ." - }, - "workspaces": [ - "alarmclock", - "quote-generator", - "reading-list", - "slideshow", - "todo-list" - ], - "repository": { - "type": "git", - "url": "git+https://github.com/CodeYourFuture/Module-Data-Groups.git" - }, - "bugs": { - "url": "https://github.com/CodeYourFuture/Module-Data-Groups/issues" - }, - "homepage": "https://github.com/CodeYourFuture/Module-Data-Groups#readme", - "devDependencies": { - "@testing-library/dom": "^10.4.0", - "@testing-library/jest-dom": "^6.6.3", - "@testing-library/user-event": "^14.6.1", - "jest": "^30.3.0", - "jest-environment-jsdom": "^30.0.4" - } -} From 090a61c53da33ce11a436932cada2b60da4b7a0b Mon Sep 17 00:00:00 2001 From: Carlos Abreu Date: Tue, 31 Mar 2026 14:59:16 +0100 Subject: [PATCH 4/6] gitignore committed --- .gitignore | 1 + 1 file changed, 1 insertion(+) diff --git a/.gitignore b/.gitignore index 8ee70353f..261c79153 100644 --- a/.gitignore +++ b/.gitignore @@ -4,3 +4,4 @@ node_modules **/.DS_Store .idea package-lock.json +package.json From 65c26cf7ab3b9cca1c606e8aa68268ded89df1cb Mon Sep 17 00:00:00 2001 From: Carlos Abreu Date: Tue, 31 Mar 2026 16:16:12 +0100 Subject: [PATCH 5/6] Remove package.json from repo but keep locally --- Sprint-3/alarmclock/package.json | 17 ----------------- 1 file changed, 17 deletions(-) delete mode 100644 Sprint-3/alarmclock/package.json diff --git a/Sprint-3/alarmclock/package.json b/Sprint-3/alarmclock/package.json deleted file mode 100644 index e1331e071..000000000 --- a/Sprint-3/alarmclock/package.json +++ /dev/null @@ -1,17 +0,0 @@ -{ - "name": "alarmclock", - "version": "1.0.0", - "license": "CC-BY-SA-4.0", - "description": "You must update this package", - "scripts": { - "test": "jest --config=../jest.config.js alarmclock" - }, - "repository": { - "type": "git", - "url": "git+https://github.com/CodeYourFuture/CYF-Coursework-Template.git" - }, - "bugs": { - "url": "https://github.com/CodeYourFuture/CYF-Coursework-Template/issues" - }, - "homepage": "https://github.com/CodeYourFuture/CYF-Coursework-Template#readme" -} From 48320e91b45101279c7d26d5f2b85712012f6ae8 Mon Sep 17 00:00:00 2001 From: Carlos Abreu Date: Tue, 31 Mar 2026 17:00:32 +0100 Subject: [PATCH 6/6] Added wildcard ** for gitignore --- .gitignore | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.gitignore b/.gitignore index 261c79153..781d487a3 100644 --- a/.gitignore +++ b/.gitignore @@ -4,4 +4,4 @@ node_modules **/.DS_Store .idea package-lock.json -package.json +**package.json