* 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>
* Upgrade Django to 3.0 and other dependencies to recent versions
* Fix otp version contsraint
* Remove six dependency
* Resolve some warnings
* Fix failing tests
* Update django-countries
* Resolve all RemovedInDjango31Warnings in test suite
* Run isort
* Fix import
* Update PostgreSQL version on travis
* 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
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.