-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathscript.js
97 lines (84 loc) · 2.69 KB
/
script.js
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
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
// variables of alarm
var selectValues=document.querySelectorAll('#alarm-values select');
var form=document.getElementById('alarm-values');
var list=document.getElementById('list');
var delButton=document.getElementById('list input');
// setting option values in form
function setValues(){
for(let i=0;i<=12;i++){
let option=`<option value=${i}> ${i} </option>`;
selectValues[0].firstElementChild.insertAdjacentHTML("afterend",option);
}
for(let i=0;i<=59;i++){
i=i<10?"0"+i:i;
let option=`<option value=${i}> ${i} </option>`;
selectValues[1].firstElementChild.insertAdjacentHTML("afterend",option);
}
for(let i=0;i<=59;i++){
i=i<10?"0"+i:i;
let option=`<option value=${i}> ${i} </option>`;
selectValues[2].firstElementChild.insertAdjacentHTML("afterend",option);
}
for(let i=0;i<=1;i++){
let ampm=i==0?"PM":"AM";
let option=`<option value=${ampm}> ${ampm} </option>`;
selectValues[3].firstElementChild.insertAdjacentHTML("afterend",option);
}
}
setValues();
// conatins list of alarm
var alarm_list=[];
document.getElementById('set-alarm-button').addEventListener('click',function(e){
// fetching option values fr which alarm is to be set
var Hour=selectValues[0].value;
var Min=selectValues[1].value;
var Sec=selectValues[2].value;
var AmPm=selectValues[3].value;
// this is alarm time
var alarmTime=`${Hour}:${Min}:${Sec} ${AmPm}`;
if(alarmTime.includes("Hour")|| alarmTime.includes("Min")|| alarmTime.includes("Sec")||alarmTime.includes("AM/PM")){
window.alert("Invalid Values");
return;
}
// pushing alarm to alarmlist
alarm_list.push(alarmTime);
render();
form.reset();
});
function render(){
// rendering alarmlist
document.getElementById('list').innerHTML='';
for(let i=0;i<alarm_list.length;i++){
addToDOM(alarm_list[i],i);
}
}
function addToDOM(element,i){
// displaying alarmlist values
let x=document.createElement('li');
x.innerHTML=` <span>${element} </span>
<input type="button" value="Delete" id=${i} onClick="Delete(${i})">
`;
list.append(x);
}
// element for current-time
let span=document.getElementById('ctime');
function ctime(){
let currentTime=new Date();
currentTime=currentTime.toLocaleTimeString('en-US');
span.innerHTML=currentTime;
for(let i=0;i<alarm_list.length;i++){
if(alarm_list[i]===currentTime){
window.alert("Wake Up!");
Delete(i);
render();
}
}
}
//delete funtion
function Delete(id){
console.log(id);
alarm_list.splice(0,1);
render();
}
// interval setting
setInterval(ctime,1000);