Commit Graph

131 Commits

Author SHA1 Message Date
Raphael Michel
e0063fce52 Allow superusers to inspect payments and refunds 2019-04-17 10:15:14 +02: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
67059fe323 Add a simple test mode (#1181)
- [x] Provide data model and configuration toggle
- [x] Allow to delete individual test orders
- [x] Add tests
- [x] Add a prominent warning message to the backend if test mode orders exist (even though test mode is off), as this leads to wrong statistics
- [x] Decide if and how to generate invoices for test orders as invoice numbers cannot be repeated or should not have gaps.
- [x] Decide if and how we expose test orders through the API, since our difference pull mechanism relies on the fact that orders cannot be deleted.
- [x] Decide if and how we want to couple test modes of payment providers?
- [ ] pretix.eu: Ignore test orders for billing
- [ ] Adjust payment providers: Mollie, bitpay, cash, fakepayment, sepadebit

![download](https://user-images.githubusercontent.com/64280/53009081-fe420d80-343a-11e9-8361-b8511c988598.png)
2019-02-20 17:51:26 +01:00
Raphael Michel
06eddb2c6d Self-service refund form (#1135)
* Auto-refund

* Add missing template

* Notification for requested refund

* Model-level tests

* Add front-end tests

* Default to notify
2019-01-18 17:24:42 +01:00
Raphael Michel
215514fca7 Add ticket downloads to the backend 2018-12-19 12:31:24 +01:00
oocf
b658c73c19 Removed permissions page from events settings (#1063)
* Removed old configuration for events settings

* Urls file to remove permissions file

* Removing not needed test

* Removing test in permissions
2018-11-12 12:23:40 +01:00
Raphael Michel
09a9d610f8 Make navigation structure more approachable to new users (#1083)
* Move event selector to sidebar

* Unify navigation

* Fix confusing icons
2018-11-12 11:30:36 +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
7039374588 Allow to anonymize users 2018-11-05 11:11:43 +01:00
Raphael Michel
0a5347c08b Allow to delete organizers 2018-11-05 11:11:43 +01:00
Raphael Michel
4b8d4b4792 Allow to bulk-delete vouchers 2018-10-03 11:32:55 +02:00
Raphael Michel
f848561d25 Expose log details for admins 2018-10-01 14:13:44 +02:00
Raphael Michel
17e09c601e Revoke + Logging 2018-09-25 10:28:07 +02:00
Raphael Michel
ddb645aeea Creating device objects 2018-09-25 10:28:07 +02:00
Raphael Michel
4db4790270 Custom HTML email renderers and new email style (#991)
* Custom HTML email renderers

* Move inline_css call

* Small fixes

* New HTML mail style for pretix

* Thumbs

* Inlinestyle for notifications

* Documentation

* Set line-height
2018-08-16 12:01:23 +02:00
Raphael Michel
248b94c296 Approvals 2018-08-14 10:46:55 +02:00
Raphael Michel
18a378976b Fix #571 -- Partial payments and refunds 2018-08-06 12:24:36 +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
Mason Mohkami
479a7d9162 Fix #357 -- Implement go to for vouchers (#849)
* Add Go input for vouchers on the vouchers list page (#357)

* Final fixes
2018-05-31 12:43:32 +02:00
Raphael Michel
0a9aeca3bc Bulk deletion for subevents 2018-05-09 11:13:34 +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
209646e012 Remove color scheme test pages 2018-04-25 18:28:32 +02:00
Raphael Michel
ca603f41db New color scheme and UI design 2018-04-25 17:13:20 +02:00
Raphael Michel
87c54f07c6 Move PDF editor out of plugin and into core 2018-04-09 09:40:18 +02:00
Raphael Michel
7939503a11 Bulk creation for event series dates (#848)
* copy-from things

* Some frontend

* rrule UI

* .

* Fixes

* UI improvements

* First test

* Tests
2018-04-03 18:21:27 +02:00
Raphael Michel
bb10d25561 Fix #782 -- Select2 widget for item selection for vouchers 2018-04-03 12:10:34 +02:00
Raphael Michel
7ec5adb6b4 Fix #782 -- Select2 widget for check-in lists 2018-04-03 11:57:12 +02:00
Raphael Michel
a284e0c2f7 Add auditable superuser mode (#824)
* Remove is_superuser everywhere

* Session handling

* List of sessions, relative timeout

* Absolute timeout

* Optionally pseudo-force audit comments

* Fix failing tests

* Add tests

* Add docs

* Rebsae migration

* Typos

* Fix tests
2018-03-28 14:16:58 +02:00
Raphael Michel
28506538a3 Add quick-start assistant for new users (#833)
* First draft for quick-setup

* Add payment

* Fix stripe w/o connect

* cols

* Add tests
2018-03-26 20:52:24 +02:00
Raphael Michel
3a7e0da80b Backend UX: Restructure payment settings 2018-03-24 18:18:28 +01:00
Raphael Michel
ae861f080b Add global banner message 2018-03-07 15:28:03 +01:00
Raphael Michel
f6713008aa Apparently, isort reverted their change 2018-02-03 15:01:01 +01:00
Raphael Michel
1a1a02d080 Compliance with new isort version 2018-02-01 16:38:22 +01:00
Raphael Michel
0b12b7aa89 Refs #678 -- Allow deletion of events that do not have any orders 2018-01-29 12:25:11 +01:00
Raphael Michel
14da25bd9e Allow administrators to impersonate other users 2018-01-29 12:25:11 +01:00
Raphael Michel
3a713541a2 User management UI for system administrators 2018-01-29 12:25:11 +01:00
Raphael Michel
e12caf186c Use Select2 for subevent and other long selections (#763)
* Use Select2 for subevent and other long selections

* Minor correction
2018-01-26 16:47:33 +01:00
Raphael Michel
1ee6e31538 Fix #190 and #472 -- Change of questions within pretix control 2018-01-26 12:43:47 +01:00
Raphael Michel
128203800c Implement notifications for admin users (#700)
* First stab at notification settings

* Add "global" setting for notification levels

* Trigger notification task

* Get users with permission for event

* Actually send notification emails

* More notifications

* Allow to turn off notifications

* Link in email to pause all notifications

* Add NotificationType to wordlist

* Add notification tests

* Add documentation

* Rebase fixes
2017-12-14 22:06:08 +01:00
Raphael Michel
353dce789d Fix #515 -- Add check-in lists (#693)
* Data model and migration

* Some backwards compatibility

* CRUD for checkin lists

* Show and perform checkins

* Correct numbers in table and dashboard widget

* event creation and cloning

* Allow to link specific exports and pass options per query

* Play with the CSV export

* PDF export

* Collapse exports by default

* Improve PDF exporter

* Addon stuff

* Subevent stuff, pretixdroid tests

* pretixdroid tests

* Add CRUD API

* Test compatibility

* Fix test

* DB-independent sorting behavior

* Add CRUD and coyp tests

* Re-enable pretixdroid plugin

* pretixdroid config

* Tests & fixes
2017-12-04 18:12:23 +01:00
Raphael Michel
9767243a6d Fix #277 -- Embeddable shop (#622)
* Vendor vue.js

* Refactor item_group_by_category to support vouchers

* Widget: Show product list

* Widget: free prices

* Widget: pictures and loading indicator

* Widget: First iframe steps

* Widget: Do not rerender iframe

* Widget: Error handling

* Improve widget

* Widget: localization tech

* Fix invoice style

* Voucher attribute and waiting list

* Add some iframe chrome

* First step to namespaced carts

* More isolation steps

* More cart isolation things

* More cart isolation things

* Mobile stuff

* Show cart on checkout pages

* PayPal and Stripe support

* Enable downloads

* Locale handling

* change text "save URL to this exact page"

* Widget: voucher redemption

* Widget: CSS

* CSS: Responsive

* Widget: CSS improvements

* Widget: Add embedding code generator

* Widget: Error messages and SSL check

* First tests

* Widget: tests

* Don't use IDs in widgets

* Widget: static files caching
2017-10-28 21:54:27 +02:00
Raphael Michel
bbd112280a Propagate setting and add organizer display settings page 2017-10-07 18:13:06 +02:00
Raphael Michel
56338be13e Tax rules and reverse charge (#559)
Tax rules and reverse charge
2017-08-23 13:13:16 +03:00
Raphael Michel
1a42a54d98 [SECURITY] Tokens for downloading answer attachments 2017-08-21 15:14:45 +02:00
Daniel
b90894c20f Fix #543 -- Allow send mail from order (#550)
- Add send email directly for order
- Add email history (from mass and custom) to each specific order
2017-07-18 11:45:30 +02:00
Raphael Michel
8123effa65 Add sub-events and relative date settings (#503)
* Data model

* little crud

* SubEventItemForm etc

* Drop SubEventItem.active, quota editor

* Fix failing tests

* First frontend stuff

* Addons form stuff

* Quota calculation

* net price display on EventIndex

* Add tests, solve some bugs

* Correct quota selection in more places, consolidate pricing logic

* Fix failing quota tests

* Fix TypeError

* Add tests for checkout

* Fixed a bug in QuotaForm

* Prevent immutable cart if a quota was removed from an item

* Add tests for pricing

* Handle waiting list

* Filter in check-in list

* Fixed import lost in rebase

* Fix waiting list widget

* Voucher management

* Voucher redemption

* Fix broken tests

* Add subevents to OrderChangeManager

* Create a subevent during event creation

* Fix bulk voucher creation

* Introduce subevent.active

* Copy from for subevents

* Show active in list

* ICal download for subevents

* Check start and end of presale

* Failing tests / show cart logic

* Test

* Rebase migrations

* REST API integration of sub-events

* Integrate quota calculation into the traditional quota form

* Make subevent argument to add_position optional

* Log-display foo

* pretixdroid and subevents

* Filter by subevent

* Add more tests

* Some mor tests

* Rebase fixes

* More tests

* Relative dates

* Restrict selection in relative datetime widgets

* Filter subevent list

* Re-label has_subevents

* Rebase fixes, subevents in calendar view

* Performance and caching issues

* Refactor calendar templates

* Permission tests

* Calendar fixes and month selection

* subevent selection

* Rename subevents to dates

* Add tests for calendar views
2017-07-11 13:56:00 +02:00
Daniel
0663f25208 Fix #541 -- Allow delete waitinglist entries (#544)
Add new action "delete" for each waiting list entries
2017-07-09 15:19:30 +02:00
Raphael Michel
35979ed332 Add internal comment to events 2017-07-07 11:31:33 +02:00
Raphael Michel
ea970be6f2 Allow to generate random slugs 2017-06-28 18:20:06 +02:00
Raphael Michel
a02823ca38 Add global order search 2017-06-05 20:50:06 +02:00