* Basic functionality
* API
* Do not delete seats with vouchers
* Show seat in list of seats
* Validate availability of seats
* Fix invalid logic in Seat.is_available
* Show voucher name in edit form
* Autocheckin data model/cosmetics
* Expose automatically checked-in OrderPositions
* Expose automatically checked-in OrderPositions in CSV/PDF Exports
* Fix some tests, try to fix MultiStringField/CheckboxSelectMultiple
* Actually fix MultiStringField/CheckboxSelectMultiple.
(Not pretty, but it works)
* Fix more tests
* Squash migration
* Also fix CSV/nameparts-test
* Changes for Autocheckin code-review
* Perform Auto-Checkins through new core plugin
* Update config-doc to reflect also checkinlists
* Explicitly output AutoCheckin Yes/No for CSV-Export (+ fix test)
* Move autocheckin from plugin to service
* API-doc
* Fix API-doc spelling
* Checkinlist-API and autocheckin order tests
* Performance improvement when reading checkinlists for autocheckin
Co-Authored-By: Raphael Michel <michel@rami.io>
* Autocheckin test for order created through API
* Resolve migration conflict
* Initial work on seating
* Add seat guids
* Add product_list_top
* CartAdd: Ignore item when a seat is passed
* Cart display
* product_list_top → render_seating_plan
* Render seating plan in voucher redemption
* Fix failing tests
* Add tests for extending cart positions with seats
* Add subevent_forms to docs
* Update schema, migrations
* Dealing with expired orders
* steps to order change
* Change order positions
* Allow to add seats
* tests for ocm
* Fix things after rebase
* Seating plans API
* Add more tests for cart behaviour
* Widget support
* Adjust widget tests
* Re-enable CSP
* Update schema
* Api: position.seat
* Add guid to word list
* API: (sub)event.seating_plan
* Vali fixes
* Fix api
* Fix reference in test
* Fix test for real
* .
* Add a position detail page to the frontend
* Mail templates
* Send mails
* Send reminder email
* Add position support to sendmail plugin
* Add and fix some tests
* Fix failing test on real databases
* Original price for variations
* Documentation
* API-GET
* Fix existing tests to accomodate new attribute
* Test for variation's original_price on API
* Data model + Editor
* Cart and order management
* Rebase migrations
* Fix typos, add tests on cart handling
* Add tests for checkout and quotas
* Add API endpoints
* Validation of settings
* Front page tax display
* Voucher handling
* Widget foo
* Show correct net pricing
* Front page tests
* reverse charge foo
* Allow to require bundling
* Fix test failure on postgres
We measured that this creates a ~10% performance loss on MySQL, but
believe that correctness is more important. Also, in case on concurrent
check-ins on MySQL with default transaction isolation level, this might
lead to Internal Server Errors on all but one check-ins, which is still
better than to show green.
- [x] Provide data model and configuration toggle
- [x] Allow to delete individual test orders
- [x] Add tests
- [x] Add a prominent warning message to the backend if test mode orders exist (even though test mode is off), as this leads to wrong statistics
- [x] Decide if and how to generate invoices for test orders as invoice numbers cannot be repeated or should not have gaps.
- [x] Decide if and how we expose test orders through the API, since our difference pull mechanism relies on the fact that orders cannot be deleted.
- [x] Decide if and how we want to couple test modes of payment providers?
- [ ] pretix.eu: Ignore test orders for billing
- [ ] Adjust payment providers: Mollie, bitpay, cash, fakepayment, sepadebit
