- Fix createReceiptZip path traversal guard blocking new ImagePath entries
(UploadReceipt stores bare filenames, guard required 'storage/' prefix)
- Add DeleteExpense DB function, handler with ownership verification,
DELETE /expenses/{id} route, and 🗑️ button in both expense templates
- Uses existing htmx.trigger confirm pattern for delete UX
|
||
|---|---|---|
| .. | ||
| auth.go | ||
| events.go | ||
| expenses.go | ||
| file.go | ||
| helpers.go | ||
| templates.go | ||