Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
37 changes: 36 additions & 1 deletion Sprint-3/alarmclock/alarmclock.js
Original file line number Diff line number Diff line change
@@ -1,4 +1,39 @@
function setAlarm() {}
// Turns a number of seconds into "MM:SS" format
// e.g. 75 -> "01:15"
function formatTime(seconds) {
const minutes = Math.floor(seconds / 60);
const remainingSeconds = seconds % 60;

// padStart makes sure single digits get a leading zero e.g. 5 -> "05"
const mm = String(minutes).padStart(2, "0");
const ss = String(remainingSeconds).padStart(2, "0");

return mm + ":" + ss;
}

function setAlarm() {
// Get the number the user typed in the input field
let seconds = Number(document.getElementById("alarmSet").value);

// Update the heading to show the starting time
document.getElementById("timeRemaining").innerText =
"Time Remaining: " + formatTime(seconds);

// Count down every 1000ms (1 second)
let intervalId = setInterval(function () {
seconds = seconds - 1;

// Update the heading each second
document.getElementById("timeRemaining").innerText =
"Time Remaining: " + formatTime(seconds);

// When we reach zero, stop counting and play the alarm
if (seconds === 0) {
clearInterval(intervalId);
playAlarm();
}
}, 1000);
}

// DO NOT EDIT BELOW HERE

Expand Down
37 changes: 20 additions & 17 deletions Sprint-3/alarmclock/index.html
Original file line number Diff line number Diff line change
@@ -1,20 +1,23 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<link rel="stylesheet" href="style.css" />
<title>Title here</title>
</head>
<body>
<div class="centre">
<h1 id="timeRemaining">Time Remaining: 00:00</h1>
<label for="alarmSet">Set time to:</label>
<input id="alarmSet" type="number" />

<button id="set" type="button">Set Alarm</button>
<button id="stop" type="button">Stop Alarm</button>
</div>
<script src="alarmclock.js"></script>
</body>
</html>
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<link rel="stylesheet" href="style.css" />
<title>Alarm Clock App</title>
</head>

<body>
<div class="centre">
<h1 id="timeRemaining">Time Remaining: 00:00</h1>
<label for="alarmSet">Set time to:</label>
<input id="alarmSet" type="number" min="1" step="1" />

<button id="set" type="button">Set Alarm</button>
<button id="stop" type="button">Stop Alarm</button>
</div>
<script src="alarmclock.js"></script>
</body>

</html>
Loading