Compare commits

..

No commits in common. "0e9cc76fef5444342f5a73367bc0a9176c75f4b9" and "69c9a4f7570b522c08f6de02361a53b08200cb13" have entirely different histories.

2 changed files with 17 additions and 21 deletions

View file

@ -414,26 +414,6 @@ window.PageEvents = {
this.ticketImageUploadTarget = null this.ticketImageUploadTarget = null
} }
}, },
waveSummary(eventId, wave) {
// Built here, not in the template. Vue resolves template expressions
// against the component instance, where the `LNbits` global is NOT
// in scope — upstream's v1.6.8 chip called `LNbits.utils` inline and
// threw "Cannot read properties of undefined (reading 'utils')",
// which killed the whole v-for and left the wave list looking empty.
// No other template in this extension touches `LNbits` directly.
const price = this.isFiatCurrency(wave.currency)
? LNbits.utils.formatCurrency(
Number(wave.price_per_ticket || 0).toFixed(2),
wave.currency
)
: `${wave.price_per_ticket} sats`
// Wave dates can carry a time (closing_date defaults from
// event_end_date); show the day only.
const opens = String(wave.opening_date || '').slice(0, 10)
const closes = String(wave.closing_date || '').slice(0, 10)
const sold = this.soldTicketsForWave(eventId, wave.id)
return `${wave.title} - ${opens} to ${closes} - ${price} - ${wave.amount_tickets} tickets - ${sold} sold`
},
soldTicketsForWave(eventId, waveId) { soldTicketsForWave(eventId, waveId) {
return this.allPaidTickets.filter( return this.allPaidTickets.filter(
ticket => ticket =>

View file

@ -271,7 +271,23 @@
> >
<span <span
style="white-space: normal; line-height: 1.3" style="white-space: normal; line-height: 1.3"
v-text="waveSummary(props.row.id, wave)" v-text="
`${wave.title} - ${wave.opening_date} to ${
wave.closing_date
} - ${
isFiatCurrency(wave.currency)
? LNbits.utils.formatCurrency(
Number(
wave.price_per_ticket || 0
).toFixed(2),
wave.currency
)
: `${wave.price_per_ticket} sats`
} - ${wave.amount_tickets} tickets - ${soldTicketsForWave(
props.row.id,
wave.id
)} sold`
"
></span> ></span>
</q-chip> </q-chip>
</div> </div>