Raphael Michel
937cec53f7
Optimize queries for pdf_data=true
2019-02-14 10:15:55 +01:00
Raphael Michel
da8f7f163f
Check-in API: Include position data
2019-02-12 15:40:06 +01:00
Raphael Michel
2aa246b3d5
Allow to exclude items from ticket generation explicitly
2019-02-01 16:48:58 +01:00
Raphael Michel
303ed07504
Voucher API: Never use a list in log_action(data)
2019-01-28 09:10:18 +01:00
Raphael Michel
60c1ea8aad
Allow to keep cancellation fees ( #1130 )
...
* Allow to keep cancellation fees
* Add tests and clarifications
* Add API
2019-01-11 15:42:33 +01:00
Raphael Michel
8abfbba9d0
Refactor cancelling positions and orders in the data model ( #1088 )
...
- [x] Data model
- [x] display in order view in backend
- [x] review all usages of OrderPositions.objects
- [x] review all usages of order.positions
- [x] review all other model usages
- [x] review plugins
- [x] plugins backwards-compatible API?
- [x] decide on way forward for REST API
- [x] need to cancel fees
- [x] tests
- [ ] plugins
- [ ] gdpr
- [ ] reports
- [x] docs
2019-01-10 16:52:34 +01:00
Raphael Michel
3cb94f702d
Revert accidental commit part
2019-01-04 10:24:06 +01:00
Raphael Michel
ddeae224fb
Log SMTP failures and retry after some error codes
2019-01-04 09:54:43 +01:00
Raphael Michel
3c57895101
Don't mark orders as pending unnecessarily
2019-01-03 09:50:56 +01:00
Raphael Michel
734e77d1a3
API: Allow to redeem ticket by secret
2018-12-18 12:23:07 +01:00
Raphael Michel
ca59237ebf
Use regular asynctasks for order PDF generation
2018-11-26 13:21:25 +01:00
Raphael Michel
584ced87db
Add /me API endpoint
2018-11-09 11:34:40 +01:00
Raphael Michel
8c34a47138
Voucher API: Bulk creation
2018-11-09 10:50:21 +01:00
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
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
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
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
5d7931fcaf
API: CartPositions ( #948 )
2018-06-11 13:18:37 +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
42c9e21d04
Refs #654 -- API call to mark order as refunded
2018-06-01 10:38:34 +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
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
Raphael Michel
b2f92acbf6
Refs #654 -- API: Writable invoice operations ( #886 )
...
* Invoices
* Update invoices.rst
2018-04-29 14:29:03 +02:00
Raphael Michel
6f30ecb365
Refs #654 -- Writable API methods for waiting list entries ( #885 )
...
* Refs #654 -- Writable API methods for waiting list entries
* Update test_waitinglist.py
2018-04-29 14:28:32 +02:00
Raphael Michel
d8e5c9f033
API: Fix insufficient permission check
2018-04-26 09:11:33 +02:00