flo 4c9d041254 Add year-scoped drink data, UserPayment model, German verbose names
Drink gets a year field (default 2024 for legacy rows), with name+year
unique together so each festival can have its own price/crate config
without overwriting the previous year. User balance properties
(consumed_drinks_price, paid_amount, open_balance) and the new
current_year() helper all filter by current year so year-over-year data
stays separated.

UserPayment model tracks per-user payments (cash/PayPal/bank/other)
against their drink tab, separate from Donation (event-level income).

Verbose names + Meta verbose_name(_plural) added across all models, and
LANGUAGE_CODE set to "de" so the admin renders German throughout.

Drink gains a few derived properties (crates_full_returned,
crates_remaining, bottles_consumed, bottles_remaining,
remaining_purchase_value) used by the upcoming admin and dashboard
views.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-05-14 22:18:57 +02:00
2024-04-03 21:18:02 +02:00
2026-02-19 18:48:38 +01:00
2026-02-19 18:32:01 +01:00
2026-02-19 18:53:08 +01:00
2026-05-14 12:41:45 +02:00
S
Description
The official website of our DIY-festival: Gähsnitz Open Air!
20 MiB
Languages
Python 57.5%
HTML 33%
CSS 9.2%
Dockerfile 0.2%
Shell 0.1%