FIX: Show global promotions correctly

This commit is contained in:
Juan Pablo Vial
2025-10-17 18:01:49 -03:00
parent 4bd3c7af9b
commit 1ca087e19b

View File

@ -188,7 +188,8 @@
elements: ''
}
data = {
promotions: []
promotions: [],
selected: []
}
components = {
button: null,
@ -206,16 +207,16 @@
this.setup()
}
add() {
const idx = Math.max(this.data.promotions.length, 0, Math.max(...this.data.promotions) + 1)
this.data.promotions.push(idx)
const idx = Math.max(this.data.selected.length, 0, Math.max(...this.data.selected) + 1)
this.data.selected.push(idx)
this.draw.promotions()
}
reset() {
this.data.promotions = []
this.data.selected = []
this.draw.promotions()
}
remove(idx) {
this.data.promotions = this.data.promotions.filter(promotion => promotion !== idx)
this.data.selected = this.data.selected.filter(promotion => promotion !== idx)
this.draw.promotions()
}
draw = {
@ -248,7 +249,10 @@
return
}
this.components.button.parentElement.style.display = this.display.button
this.components.promotions.innerHTML = this.data.promotions.map((promotion, idx) => {
if (this.data.selected.length === 0) {
return
}
this.components.promotions.innerHTML = this.data.selected.map(idx => {
return this.draw.promotion(idx)
}).join('')
this.components.promotions.querySelectorAll('.dropdown').forEach(dropdown => {
@ -611,8 +615,8 @@
this.get.promotions(project_id).then(promotions => {
this.components.promotions.data.promotions = promotions.map(promotion => {
return {
text: promotion.name,
name: promotion.name,
text: promotion.description,
name: promotion.description,
value: promotion.id
}
})