-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathaddExpensePopup.js
More file actions
92 lines (75 loc) · 2.62 KB
/
addExpensePopup.js
File metadata and controls
92 lines (75 loc) · 2.62 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
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
function openPopup(){
let popup = document.getElementById("popup");
popup.classList.add("open-popup");
}
function cancelAddExpense(){
let popup = document.getElementById("popup");
popup.classList.remove("open-popup");
}
//add expense popup
function closePopup(form){
let popup = document.getElementById("popup");
popup.classList.remove("open-popup");
let inputPrice = form.price.value;
let inputType;
if (form.type[0].checked) {
inputType = '-';
} else if (form.type[1].checked) {
inputType = '+';
}
console.log(form.type[0].checked);
console.log(form.type[1].checked);
if(inputPrice === undefined || (form.type[0].checked===false && form.type[1].checked===false) ){
alert("Enter information correctly");
}
else{
let walletSelect = document.getElementById("wallet-opt");
let walletIndex = walletSelect.selectedIndex;
let selectedWallet = walletSelect.options[walletIndex].value;
let added = false;
Wallets.forEach(wallet =>{
if(wallet.name === selectedWallet ){
if(inputType === '-' && wallet.value>= parseInt(inputPrice)){
wallet.value -= parseInt(inputPrice);
updateWallets();
added = true;
}
else if(inputType==='+'){
wallet.value += parseInt(inputPrice);
updateWallets();
added = true;
}
else if(wallet.value < parseInt(inputPrice) && inputType==='-'){
showNoMoney();
}
}
})
if(added ===true){
let catSelect = document.getElementById("cat-opt");
let catIndex = catSelect.selectedIndex;
let selectedCategory = catSelect.options[catIndex].value;
Categories.forEach(category =>{
if(category.name === selectedCategory && inputType==='-' ){
category.value += parseInt(inputPrice);
updateCategories();
}
})
//tabel
Expenses.push({
name: form.name.value,
date: form.date.value,
price: parseInt(form.price.value),
type: inputType,
cat : selectedCategory
});
showRows = 5;
updateWallets();
updateCategories();
updateExpenses();
updateSumTotal();
updateSumExpense();
updateSumIncome();
stringJSON();
}
}
}