Raphael Michel
ad8f109e77
Add Item.allow_waitinglist
2019-07-29 16:27:27 +02:00
Raphael Michel
a664d51dbc
Persist and show full "path" of seats
2019-07-29 15:23:09 +02:00
Raphael Michel
e83e8cdcc0
Allow to hide a product unless a specific quota is sold out ( #1351 )
...
* Allow to hide a product unless a specific quota is sold out
* Fix required property
* Add API property and copy between events
2019-07-25 16:14:24 +02:00
Raphael Michel
a02ea45dba
Allow quotas to "close" when once full ( #1344 )
...
* Model
* Some UI
* API and logging
* Permission check
* Add tests
* Move option around
2019-07-16 14:02:27 +02:00
Raphael Michel
44ffc0685e
Show date_to in PDF variable "event_date_range" regardless of event settings
...
Z#2349533
2019-07-16 09:31:40 +02:00
Raphael Michel
a79a156a28
Show preview of answered images
2019-07-16 09:31:36 +02:00
Raphael Michel
53a0d62d93
Allow dependent questions to depend on multiple values ( #1336 )
2019-07-11 13:32:45 +02:00
Raphael Michel
d994fc674a
Do not CASCADE-delete vouchers when deleting items or quotas
2019-07-11 12:35:52 +02:00
Raphael Michel
f066ed01ff
Show event meta data in backend list of events
2019-07-11 11:16:36 +02:00
Raphael Michel
491753008d
Introduce Item.show_quota_left
2019-07-10 16:08:21 +02:00
Raphael Michel
e7baca952b
Fix voucher queryset (again)
2019-07-09 18:02:08 +02:00
Raphael Michel
eef713816e
Sort keys in JSON payment metadata
2019-07-09 16:13:37 +02:00
Raphael Michel
ca1c387a41
Allow quota-level vouchers for hidden products ( #1123 )
...
* Changes in checks
* Backwards-compatible implementation
* Add test
* Fix voucher bulk form
2019-07-07 13:36:04 +02:00
Raphael Michel
93089d87e3
Add support for reserved seating ( #1228 )
...
* 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
2019-06-25 11:00:03 +02:00
Raphael Michel
26a96f107f
Add signal quota_availability
2019-06-18 16:52:01 +02:00
Raphael Michel
4b65b94bd5
Disable scopes for all unique ID generation
2019-06-17 14:05:05 +02:00
Raphael Michel
d85ddb5bda
Integrate django-scopes ( #1319 )
...
* Install django-scopes
* Fix tests.api
* Update tasks and cronjobs
* Fix remaining tests
* Remove unused import
* Fix tests after rebase
* Disable scopes for get_Events_with_any_permission
* Disable scopes for a management command
2019-06-17 10:46:55 +02:00
Martin Gross
b1db5dbb3e
Decrement voucher usage counter when deleting testmode orders ( #1321 )
...
* 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
2019-06-14 12:41:07 +02:00
Raphael Michel
f63907fb16
Do not show infinitely long logs in sidebars
2019-05-31 10:49:57 +02:00
Martin Gross
74f861bd48
Respect Testmode when cloning events
2019-05-28 11:13:20 +02:00
Raphael Michel
6c701d66b1
Removed setter for cached_property
2019-05-28 10:37:41 +02:00
Raphael Michel
9e0b97e88e
Fix #601 -- provide setters for meta_info_data
2019-05-28 10:16:54 +02:00
Raphael Michel
f1bce0c08b
Allow to send e-mails to attendees individually ( #1299 )
...
* .
* 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
2019-05-24 09:41:44 +02:00
Raphael Michel
c7774dfdb8
Allow to set a custom payment date for manual payments
2019-05-16 11:21:00 +02:00
Raphael Michel
5b99bf3623
Fix missing encoding
2019-05-15 09:39:32 +02:00
Raphael Michel
de0e700fec
Store whether we know email addresses are working because links have been clicked
2019-05-15 08:22:53 +02:00
Raphael Michel
b1fa214869
Clarify a description
2019-05-09 14:44:06 +02:00
Raphael Michel
c8a1481f93
Fix #1154 -- Add country-typed questions
2019-05-09 10:02:12 +02:00
Raphael Michel
e7c4121745
Add hidden questions
2019-05-09 10:02:12 +02:00
Raphael Michel
51392f73a8
Locking optimizations
2019-05-05 17:31:08 +02:00
Raphael Michel
465a5b01b9
Offload more work to database replica
2019-05-05 17:31:08 +02:00
Raphael Michel
788f73d842
Fix #1255 -- Approvals of free orders after last date of payments
2019-05-01 14:01:26 +02:00
Raphael Michel
ef600ceddb
Fix invalid handling of variations with quota-level vouchers
2019-04-25 11:54:03 +02:00
Raphael Michel
ee495f2777
Add property SubEvent.is_public
2019-04-23 10:46:09 +02:00
Martin Gross
2eb88840bd
Original price for variations ( #1258 )
...
* Original price for variations
* Documentation
* API-GET
* Fix existing tests to accomodate new attribute
* Test for variation's original_price on API
2019-04-18 16:13:49 +02:00
Raphael Michel
b3684377cd
Fix crash in item validation
...
Fixes Sentry PRETIXEU-10B
2019-04-17 15:40:25 +02:00
Raphael Michel
2fac8592d4
Add modern invoice renderer
2019-04-17 15:08:58 +02:00
Raphael Michel
874b38db17
Mark order as paid immediately
2019-04-15 12:58:20 +02:00
Raphael Michel
6d1dea7922
Upgrade to Django 2.2 and modern DRF and py.test ( #1246 )
...
* 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
2019-04-07 14:09:49 +01:00
Raphael Michel
b931d27486
Solve cart deletion issues once and for all
2019-04-04 09:57:57 +02:00
Raphael Michel
2d37c6d94d
Make device token revokation more explicit
2019-04-02 09:36:07 +02:00
Raphael Michel
a6de586b80
Make ItemBundle.designated_price non-nullable
2019-03-23 23:42:58 +01:00
Raphael Michel
420649e10a
Refs #654 -- REST API: Allow to resend order link
2019-03-23 13:33:57 +01:00
Raphael Michel
90f881c48e
Fix #1001 -- Add product bundles ( #1041 )
...
* 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
2019-03-22 14:48:48 +00:00
Raphael Michel
49e706a580
Fix #878 -- Add multi-event widget
2019-03-22 09:18:04 +00:00
Martin Gross
ca7d55082b
Refs #654 -- Add writable API for subevents ( #1217 )
...
- [x] Write operations for subevents
- [x] Tests
- [x] Documentation
2019-03-21 20:40:59 +00:00
Raphael Michel
307ee36e52
Do not show invisible questions in order overview
2019-03-13 17:06:49 +01:00
Raphael Michel
f95e8f374d
Allow dependencies between questions ( #1202 )
...
- [x] data model
- [x] api
- [x] backend editor
- [x] backend validation logic
- [x] frontend display logic
- [x] frontend validation logic
- [x] test checkout step
- [x] test modify order in frontend
- [x] test modify order in backend
- [x] validation tests
- [x] correctly evaluate dependency tree in frontend?
- [x] copy events
2019-03-13 16:49:20 +01:00
Raphael Michel
8ba38a0254
Order.meta_info_data: Expose null values as an empty dict
2019-03-11 18:12:29 +01:00
Raphael Michel
12b48948e3
Add a new notification category for overpayments
2019-03-08 11:40:22 +01:00