Raphael Michel
0fe3db634c
Voucher API: Reduce number of event locks
2018-11-09 10:46:27 +01:00
Raphael Michel
c2d03f5e6b
Fix #526 -- Add a webhook system ( #1073 )
...
- [x] Data model
- [x] UI
- [x] Fire hooks
- [x] Unit tests
- [x] Display logs
- [x] API to modify hooks
- [x] Documentation
- [x] More hooks!
2018-11-08 16:38:05 +01:00
Raphael Michel
4477f8001e
Adjust test for previous commit
2018-11-07 11:53:13 +01:00
Raphael Michel
5390b0b191
API: Allow to sort orders by modification date
2018-11-07 10:29:41 +01:00
Raphael Michel
97de8cea08
Allow cart creation without attendee name
2018-11-06 18:16:54 +01:00
Raphael Michel
cd465c1aad
Fix not passing an attendee name in the API
2018-11-06 17:42:18 +01:00
Raphael Michel
94be46ffdb
Fix #978 -- Allow to split names ( #1049 )
...
- [x] attendee names
- [x] Invoice address names
- [x] Data migration
- [x] API serializers
- [x] orderposition
- [x] cartposition
- [x] invoiceaddress
- [x] checkinlistposition
- [x] position API search
- [x] invoice API search
- [x] business/individual required toggle
- [x] Split columns in CSV exports
- [x] ticket editor
- [x] shredder
- [x] ticket/invoice sample data
- [x] order search
- [x] Handle changed naming scheme
- [x] tests
- [x] make use in:
- [x] Boabee
- [x] Certificate download order
- [x] Badge download order
- [x] Ticket download order
- [x] Document new MySQL requirement
- [x] Plugins
2018-11-05 15:43:21 +01:00
Raphael Michel
df2d8925ed
Prevent some race conditions
2018-10-29 17:27:12 +01:00
Raphael Michel
0dbcfdc5ac
Allow to enable ticket downloads for pending orders
2018-10-03 12:15:43 +02:00
Raphael Michel
96bc64c456
Do not break invoices if order has no locale
2018-09-27 17:15:49 +02:00
Raphael Michel
0369deb72d
Fix permission for access to root event resource
2018-09-27 10:01:57 +02:00
Raphael Michel
feb262644e
Orders API: Reduce query load imposed by ?pdf_data=true by multiple orders of magnitude
2018-09-25 17:39:58 +02:00
Raphael Michel
63ba393c12
Proper permission handling and testing
2018-09-25 12:29:05 +02:00
Raphael Michel
304ad4e3db
Restrict list of events
2018-09-25 10:54:36 +02:00
Raphael Michel
1ba4047b1b
API-level tests
2018-09-25 10:28:07 +02:00
Raphael Michel
1aca5fb6ff
Fix wrong action parameter
2018-09-25 10:28:07 +02:00
Raphael Michel
7860d690fa
Add endpoints to update, roll and revoke devices
2018-09-25 10:28:07 +02:00
Raphael Michel
6d01c99d38
Auth mechanism
2018-09-25 10:28:07 +02:00
Raphael Michel
ee951a7448
API: Add subevent list on organizer level
2018-09-24 12:59:44 +02:00
Raphael Michel
9935ba370d
Event list API: Do not show events without any access permissions
2018-09-24 12:44:45 +02:00
Raphael Michel
e815cce143
Event list API: Add filters
2018-09-24 12:36:12 +02:00
Raphael Michel
1ae97f5477
API: Allow to filter order positions by voucher
2018-08-31 12:53:37 +02:00
Raphael Michel
7c155d307b
Return 404 for invalid check-in list ID
2018-08-31 12:16:15 +02:00
Raphael Michel
35ddf6790e
Add mark_refunded parameter to refund creation
2018-08-21 15:48:22 +02:00
Raphael Michel
f60a99c357
Tests
2018-08-14 11:31:41 +02:00
Raphael Michel
248b94c296
Approvals
2018-08-14 10:46:55 +02:00
Raphael Michel
779756f1ab
API: Allow to delete order positions
2018-08-13 18:09:10 +02:00
Raphael Michel
5d68a5133e
Add pseudonymization_id filter to API
2018-08-13 08:55:57 +02:00
Raphael Michel
67897dfcc0
Fix #406 -- Allow moving waiting list entries to the top or bottom
2018-08-07 10:53:07 +02:00
Raphael Michel
afd766999c
Upgrade to Django 2.1 ( #710 )
...
* Upgrade to Django 2.0
* more models
* i18n foo
* Update setup.py
* Fix Sentry exception PRETIXEU-JC
* Enforce slug uniqueness
* Import sorting
* Upgrade to Django 2.1
* Travis config
* Try to fix PostgreSQL failure
* Smaller test matrix
* staticfiles→static
* Include request in all authenticate() calls
2018-08-06 12:48:46 +02:00
Raphael Michel
18a378976b
Fix #571 -- Partial payments and refunds
2018-08-06 12:24:36 +02:00
Raphael Michel
427f78b14d
OrderCreateSerializer: Do not crash on optional fields missing
2018-07-19 09:27:36 +02:00
Raphael Michel
47f8e5b8c6
API: FIll meta info
2018-06-15 12:04:40 +02:00
Raphael Michel
ff9d480b6e
Orders API: Improve validation errors
2018-06-13 11:08:54 +02:00
Raphael Michel
5d7931fcaf
API: CartPositions ( #948 )
2018-06-11 13:18:37 +02:00
Raphael Michel
e3450baeb3
Fix #549 -- Multiple PDF ticket layouts ( #938 )
...
- [x] Data model
- [x] CRUD
- [x] Editor
- [x] Migration from old settings
- [x] Clone files when copying events
- [x] badges?
- [x] Actual ticket output
- [x] Default layout on event creation
- [x] Link well from ticketing settings
- [x] Tests
- [x] Shipping plugin
- [x] Migration
- [x] Settings
- [x] Create default
- [x] API
2018-06-06 15:27:55 +02:00
Raphael Michel
69d10489b8
Implement OAuth2 provider ( #927 )
...
- [x] Application management
- [x] Link
- [ ] Tests
- [x] Authorize flow
- [x] Tests
- [x] Refresh token handling
- [x] Tests
- [x] Revocation endpoint
- [x] Tests
- [x] Mitigate: https://github.com/jazzband/django-oauth-toolkit/issues/585
- [x] API authenticator / permission driver
- [x] Test
- [x] Enforce organizer restriction
- [x] Tests
- [x] Enforce scope restriction
- [x] Tests
- [x] Show current applications to user
- [x] Revoke
- [x] Tests
- [x] Log new authorizations
- [x] notify user
- [x] Ensure other grant types are not available
- [x] Documentation
- [x] check if revoking access toking, then refreshing gets rid of organizer constraint
- [x] Show logentry foo
2018-06-05 12:58:04 +02:00
Raphael Michel
850b9e5e3d
Fix oversight in a95a208e
2018-06-05 11:27:31 +02:00
Raphael Michel
a95a208e1b
API: Optional pdf_data field
2018-06-04 18:40:38 +02:00
Raphael Michel
42c9e21d04
Refs #654 -- API call to mark order as refunded
2018-06-01 10:38:34 +02:00
Raphael Michel
ae686fab38
Set payment_date for paid orders created via API
2018-05-30 11:34:59 +02:00
Raphael Michel
eb6063cc2d
Add QR codes for pseudonymization ID
2018-05-28 17:02:56 +02:00
Raphael Michel
fa326eba6f
Introduce original price ( #905 )
...
* Introduce original price
* Rebase and styling
* Widget
2018-05-18 22:48:38 +02:00
Raphael Michel
777424ad18
Remove debugging output
2018-05-18 11:54:42 +02:00
Raphael Michel
4985e7e96d
Fix X-Page-Generated for paginated results
2018-05-18 11:31:37 +02:00
Raphael Michel
26029508c6
Implement Last-Modified for a number of API resources
2018-05-17 16:09:08 +02:00
Raphael Michel
35e8dcf2bc
Fix #599 -- Add API to create orders ( #911 )
...
* [WIP] Fix #599 -- Add API to create orders
* Add more validation logic
* Add docs and some validation
* Fix test on MySQl
* Validation is fun, let's do more of it!
* Fix live_issues
2018-05-16 12:14:31 +02:00
Raphael Michel
1c2acbb57f
Add last_modified property to orders ( #907 )
2018-05-14 11:09:26 +02:00
Raphael Michel
edeaa1333b
Fix #473 -- Internal name for categories and products ( #900 )
...
* Fix #473 -- Internal name for categories and products
* fix pdf renderer
2018-05-11 12:53:25 +02:00
Raphael Michel
7bccd62a4f
Fix #678 -- Data shredders for personally identifiable information ( #817 )
...
* Add data shredders for PII
* First working shredder
* Add more shredders
* Add new shredders and download confirmation
* tmp
* PayPal, Stripe, banktransfer
* Add icon to logs
* Untested payment log shredders
* Add waiting list shredder
* First tests
* Add tests for shredders
* Improve templats, link to shredder
* Test payment info shredders
* More tests
* Documentation
* Fix enabled flag in payment provider overview
* Fix minor issues
2018-05-02 15:59:59 +02:00