-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathmain.js
91 lines (79 loc) · 3.07 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
let cartButtons = document.querySelectorAll('.add-to-cart');
let addNumber = document.querySelector('.products-number');
let DncrBtn=document.getElementsByClassName("decrease");
let IncrBtn=document.getElementsByClassName("increase");
let DeletBtn = document.getElementsByClassName("fa-trash-can");
let deltall=document.querySelector('.Clear')
let total=document.querySelector(".subtotal + p");
if (sessionStorage.length>0){
addNumber.textContent=JSON.parse(sessionStorage.add);
}
let addNum = function() {
let currentNumber = parseInt(addNumber.textContent);
addNumber.textContent = currentNumber + 1;
sessionStorage.add= JSON.stringify(addNumber.textContent);
};
let delnumm = function() {
let currentNumber = parseInt(addNumber.textContent);
addNumber.textContent = currentNumber - 1;
};
cartButtons.forEach(button => {
button.addEventListener('click', addNum);
});
let deltcart = function (buttons) {
for (let i = 0; i < buttons.length; i++) {
buttons[i].onclick = function () {
let productArticle = buttons[i].closest('article.product');
if (productArticle) {
productArticle.remove();
delnumm();
}
};
}
};
deltcart(DeletBtn);
let addcart = function (buttons) {
for (let i = 0; i < buttons.length; i++) {
buttons[i].onclick = function () {
let currentCount = parseInt(buttons[i].previousElementSibling.textContent);
let newCount = currentCount + 1;
buttons[i].previousElementSibling.textContent = newCount.toString();
let priceElement = buttons[i].parentNode.previousElementSibling;
let price = parseInt(priceElement.textContent.replace('$', ''));
let subtotal = parseInt(total.textContent.replace('$', ''));
let newTotal = subtotal + price;
total.textContent = `$${newTotal}`;
};
}
};
let removecart = function(buttons) {
for (let i = 0; i < buttons.length; i++) {
buttons[i].onclick = function() {
let currentCount = parseInt(buttons[i].nextElementSibling.textContent);
let newCount = currentCount - 1;
if (newCount > 0) {
buttons[i].nextElementSibling.textContent = newCount.toString();
} else if (newCount == 0) {
let productArticle = buttons[i].closest('article.product');
if (productArticle) {
productArticle.remove();
delnumm();
}
}
let priceElement = buttons[i].parentNode.previousElementSibling;
let price = parseInt(priceElement.textContent.replace('$', ''));
let subtotal = parseInt(total.textContent.replace('$', ''));
let newTotal = subtotal - price;
total.textContent = `$${newTotal}`;
};
}
};
addcart(IncrBtn);
removecart(DncrBtn);
removall=function(butt){
for(let i=0;i<butt.length;i++){
butt.onclick=function(){
butt[i].previousElementSibling.innerHTML="";
}
}
}