* Stripe SCA
- Upgrade to latest Stripe API
- Deprecate Stripe Checkout for CC
- Migrate CC payments to Payment Intents
* Move SCA to its own view
* Handle CardErrors for PaymentIntents
* Abilty to handle charge webhooks with PaymentIntents
* Better handling of Stripe References
* Fix Stripe Tests
* Move SCA page into orderlayout; perform iFrame SCA
* Handle disputes and pi-webhooks better, fill more into ReferencedStripeObject
* Optionally pass prefetched PaymentIntent to handle-func
* Fix style
* Send message to window.parent not window.top (widget compatibility)
* More accurate loading message
* Show a cog on sca_return.html. On a good internet connection, you barely see it, but on a bad one…
* Robust error handling
* If it's a method and used like a method, let's actually call it like a method!
* Remove logging statement
* Fix JavaScript interference with other frame events
* Use 4:3 aspect ratio, but at least 600px
* Adjust to django_scopes
* 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
* Decrement voucher usage counter when deleting testmode orders
* Only decrement voucher usage counter for uncancelled orders and on uncancelled positions
* Have the tests actually test something
* .
* 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
* Change semantics of changing orders
This basically does two things to the "Change products" view of orders and the
OrderChangeManager program API:
1) It decouples changing items or subevents from changing prices.
OrderChangeManager.change_item() and .change_subevent() no longer
touch the price of a position. Instead .change_price() needs to be
called explicitly. However, a client-side JavaScript component now
*proposes* a new price based on the changed item or subevent.
2) The user interface now exposes the possibility of doing multiple
things at the same time, i.e. changing the item, subevent and price
in the same operation. OrderChangeManager already allowed this
before.
(1) is basically a consequence of (2), while (2) is a prerequesite for
e.g. the `seating` branch, where changing the subevent will always
require changing the seat.
* Add tests for price calculation API
* Original price for variations
* Documentation
* API-GET
* Fix existing tests to accomodate new attribute
* Test for variation's original_price on API
* Fix#1247 -- Allow team invites to be resent
* Test resending invalid invites
* Fix tooltip
* Fix test
* Handle invalid types for pk parameter
* Style button
* Upgrade django and stuff
* Update to Django 2.2 and recent versions of similar packages
* Provide explicit orderings to all models used in paginated queries
* Resolve naive datetime warnings in test suite
* Deal with deprecation warnings
* Fix sqlparse version