-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathmain.js
152 lines (134 loc) · 3.68 KB
/
main.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
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
// To-Do List SPA by Igor B.
// https://github.com/bogeta11040
var tasksBtn = document.querySelector('#tasksBtn');
var addBtn = document.querySelector('#addBtn');
var editRmBtn = document.querySelector('#editRmBtn');
var mainView = document.querySelector("#mainView");
var mainBody = document.querySelector('#mainBody');
var addTaskView = document.querySelector("#addTaskView");
var formId = document.querySelector("#formId");
var formTask = document.querySelector("#formTask");
var formName = document.querySelector("#formName");
var formBtn = document.querySelector("#formBtn");
var editView = document.querySelector("#editView");
var editTask = document.querySelector("#editTask");
var eformId = document.querySelector("#eformId");
var eformTask = document.querySelector("#eformTask");
var eformName = document.querySelector("#eformName");
var eformBtn = document.querySelector("#eformBtn");
var id;
tasksBtn.addEventListener('click', showTasks);
addBtn.addEventListener('click', showAdd);
formBtn.addEventListener('click', saveForm);
editRmBtn.addEventListener('click', showEdit);
eformBtn.addEventListener('click', change);
function showAdd() {
mainView.style.display = "none";
addTaskView.style.display = "block";
editView.style.display = "none";
editTask.style.display = "none";
// Clean that shit
formId.value = "";
formTask.value = "";
formName.value = "";
}
function showTasks() {
mainView.style.display = "block";
addTaskView.style.display = "none";
editView.style.display = "none";
editTask.style.display = "none";
}
function showEdit() {
mainView.style.display = "none";
addTaskView.style.display = "none";
editView.style.display = "block";
editTask.style.display = "none";
editTable();
}
function saveForm() {
var newTask = {
id : formId.value,
task: formTask.value,
name: formName.value
}
db.push(newTask);
createTable();
showTasks();
}
// Example tasks are already added.
var db = [
{
id : "1",
task : "Plan our project",
name : "Marcus"
},
{
id : "2",
task : "Deliver code",
name : "Milena"
},
{
id : "3",
task : "Clean the code",
name : "Dan"
}
];
function createTable() {
var text = '';
for (i=0; i < db.length; i++) {
text += '<tr>';
text += '<td>'+ db[i].id +'</td>';
text += '<td>'+ db[i].task +'</td>';
text += '<td>'+ db[i].name +'</td>';
text += '</tr>';
}
mainBody.innerHTML = text;
}
function editTable() {
var text = '';
for (n=0; n < db.length; n++) {
text += '<tr>';
text += '<td>'+ db[n].id +'</td>';
text += '<td>'+ db[n].task +'</td>';
text += '<td>'+ db[n].name +'</td>';
text += '<td><button data-id="'+n+'" class="btn btn-warning edit">Edit</button></td>';
text += '<td><button id="'+n+'" class="btn btn-info done">Done!</button></td>';
text += '</tr>';
}
editBody.innerHTML = text;
var doneBtn = document.querySelectorAll(".done");
var editBtn = document.querySelectorAll(".edit");
for (k=0; k < doneBtn.length; k++) {
doneBtn[k].addEventListener('click',done);
editBtn[k].addEventListener('click',edit);
}
}
function edit() {
mainView.style.display = "none";
addTaskView.style.display = "none";
editView.style.display = "none";
editTask.style.display = "block";
id = this.getAttribute('data-id');
eformId.value = db[id].id;
eformTask.value = db[id].task;
eformName.value = db[id].name;
}
function change() {
var formId = eformId.value;
var formTask = eformTask.value;
var formName = eformName.value;
db[id] = {
id : formId,
task: formTask,
name: formName
};
createTable();
showTasks();
}
function done() {
var id = this.id;
db.splice(id,1);
createTable();
showTasks();
}
createTable();