Commit Graph

23 Commits

Author SHA1 Message Date
Martin Gross
775fdd1ccb Check-in API: Add reusable media exchange (#6115)
* Add Reusable Media Exchange to Checkin API

* isort

* Remove debugging leftover

* Apply suggestions from code review

Co-authored-by: robbi5 <maxi@richt.name>

* Add media_exchange_supported to CheckinRPCRedeemInputSerializer

* SecurityProfiles: Add api-v1:reusablemedia-lookup and -detail for SCAN

* Simplify media exchange checks

* Apply suggestions from code review

Co-authored-by: Raphael Michel <mail@raphaelmichel.de>

* Wording: re-usable --> reusable

* Deny checkins if media-exchange is required but device does not support it.

* Remove media_exchange_supported-Flag: Checkin will always be denied if media needs to be exchanged; apps will fall back to explanation text

* CheckinRPC: Also perform media exchange

* Use media_policy from item, not as a checkinrpc parameter

* my own review notes

* Fixes, cleanup, rebase

* block expired media

* Fix query

* add logging

* Refactor link_action into media policy, gift card support

* Block illegal policy-type combination

* Drop add_to_reusable_medium, decide all by policy

* Fix test failure

* fix test on postgres

* Expose reusable_media_usage_enforced to devies

* Explicitly set update view

---------

Co-authored-by: robbi5 <maxi@richt.name>
Co-authored-by: Maximilian Richt <richt@pretix.eu>
Co-authored-by: Raphael Michel <mail@raphaelmichel.de>
Co-authored-by: Raphael Michel <michel@rami.io>
Co-authored-by: Raphael Michel <michel@pretix.eu>
2026-06-11 16:25:13 +02:00
Raphael Michel
177a7d07fc Update license header (#5540) 2025-10-10 15:32:46 +02:00
Raphael Michel
4fb5c6bef0 New implementation of sales channels (#4111)
Co-authored-by: Martin Gross <gross@rami.io>
2024-06-30 19:24:30 +02:00
Raphael Michel
b2842ec3a0 Checkin: Allow to use presence state in rules (#4061) 2024-04-18 13:15:31 +02:00
Raphael Michel
0220965ca9 Check-in: Add rule for number of days with entries since (#3808) 2024-01-12 17:09:51 +01:00
Raphael Michel
dcb1d920eb Check-in rules: Do not use empty lists in SQL converted query 2024-01-03 09:56:59 +01:00
Raphael Michel
965fcec9df Check-in: New error reason for unapproved orders (#3741)
* Check-in: New error reason for unapproved orders

* Fix documentation verbiage
2023-11-28 12:50:29 +01:00
Raphael Michel
eb04fdf4d2 Check-in rules: New variables (#3521) 2023-09-12 09:43:57 +02:00
Raphael Michel
b51c9f7552 Upgrade to Django 4.2 (#3497) 2023-08-09 14:47:41 +02:00
Raphael Michel
bd32b33ba9 Bump Django to 4.1.* (#2989) 2023-06-05 09:56:31 +02:00
Raphael Michel
634445b79d Check-in API: Extend reach of "force" flag (#3187) 2023-04-03 10:26:25 +02:00
Raphael Michel
6902725f3c New check-in features (#3022) 2023-02-09 09:46:46 +01:00
Raphael Michel
316081658a Check-in rules: Add now_isoweekday and minutes_since_last_entry (#2577) 2022-04-21 17:17:59 +02:00
Raphael Michel
0c508c5ba4 Fix remaining DST error in auto check-out 2021-11-03 09:34:50 +01:00
Raphael Michel
f10c8b229f Check-in: Ticket should not count as redeemed if only exits have been scanned so far 2021-07-23 11:15:35 +02:00
Raphael Michel
403b8191e4 Upgrade to Django 3.2 (#2056) 2021-05-07 12:00:30 +02:00
Raphael Michel
b5e41f4c62 Check-in rules: Allow to check for time of day (#2061)
* Add "customtime" option

* Fix time picker output format

* Fix bug in bool_alg

* Fix test
2021-05-07 11:29:39 +02:00
Raphael Michel
b5fdba796b Check-in rules: Make logic results understandable (#2050)
Co-authored-by: Richard Schreiber <schreiber@rami.io>
2021-05-07 09:45:18 +02:00
Raphael Michel
552d13ef6c Fix handling of auto-checkout around DST switch 2021-04-29 17:39:23 +02:00
Raphael Michel
a93287207b pretix Community Edition moves to AGPLv3-based license (#2023) 2021-04-12 10:33:47 +02:00
Raphael Michel
92a50cb2d1 Web-based check-in interface (#1985) 2021-03-30 09:34:11 +02:00
Raphael Michel
e3d9b3546d Add option to automatically check out all attendees at night (#1819) 2020-10-21 18:26:57 +02:00
Raphael Michel
c056db46b6 Overhaul of our check-in features (#1647) 2020-05-13 18:01:49 +02:00