-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathAlarm.js
More file actions
41 lines (36 loc) · 1.01 KB
/
Copy pathAlarm.js
File metadata and controls
41 lines (36 loc) · 1.01 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
class Alarm {
constructor() {
this.alarms = [];
}
setAlarm(time, name, sound) {
const alarm = {
time: time,
name: name,
sound: sound,
active: true
};
this.alarms.push(alarm);
this.displayAlarms();
}
displayAlarms() {
const alarmList = document.getElementById('alarm-list');
alarmList.innerHTML = '';
this.alarms.forEach((alarm, index) => {
const alarmItem = document.createElement('div');
alarmItem.className = 'alarm-item';
alarmItem.innerHTML = `
<span>${alarm.name} - ${alarm.time}</span>
<button onclick="alarm.deleteAlarm(${index})">Delete</button>
`;
alarmList.appendChild(alarmItem);
});
}
deleteAlarm(index) {
this.alarms.splice(index, 1);
this.displayAlarms();
}
chooseSound() {
// Logic to choose sound for the alarm
}
}
export default Alarm;