-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathscripts.js
72 lines (61 loc) · 2.6 KB
/
scripts.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
const addModuleContainer = document.getElementById('add-module-container')
const openModulePannelButton = document.querySelectorAll('.open-module-pannel-button')
let currentContainer = null
openModulePannelButton.forEach(button => {
button.addEventListener('click', (event) => {
addModuleContainer.style.display = 'flex'
currentContainer = event.target.closest('.module-container-scroll')
})
})
function createModuleFunction(name){
const module = document.createElement('div')
const label = document.createElement('label')
const input = document.createElement('input')
const button = document.createElement('button')
module.classList.add('module')
module.id = name.toLowerCase().trim().replace(/\s+/g, '-')
label.textContent = `${name}`
input.classList.add('number-input')
input.type = 'number'
button.classList.add('delte-module-button')
button.type = 'button'
button.textContent = 'Del'
label.appendChild(input)
module.append(label)
module.append(button)
return module
}
const moduleNameInput = document.getElementById('module-name-input')
document.getElementById('add-module-pannel').addEventListener('click', (event) => {
if(event.target.id === 'close-add-module-pannel-button'){
addModuleContainer.style.display = 'none'
}else if(event.target.id === 'add-module-button'){
currentContainer.appendChild(createModuleFunction(moduleNameInput.value))
addModuleContainer.style.display = 'none'
moduleNameInput.value = ''
}
})
document.getElementById('form').addEventListener('click', (event) => {
if(event.target.classList.contains('delte-module-button')){
event.target.closest('.module').remove()
}
})
const incomesSpanResult = document.getElementById('incomes-span-result')
const expensesSpanResult = document.getElementById('expenses-span-result')
const totalSpanResult = document.getElementById('total-span-result')
document.getElementById('form').addEventListener('input', () => {
let totalIncomes = 0
let totalExpenses = 0
document.querySelectorAll('.number-input').forEach( input => {
const container = input.closest('.module-container-scroll')
const value = Number(input.value) || 0
if(container.id === 'incomes-container'){
totalIncomes += value
}else if(container.id = 'expenses-container'){
totalExpenses += value
}
})
incomesSpanResult.textContent = totalIncomes
expensesSpanResult.textContent = totalExpenses
totalSpanResult.textContent = incomesSpanResult.textContent - expensesSpanResult.textContent
})