Commit Graph
114 Commits
Author SHA1 Message Date
Raphael Michel fe1b4ec9d0 Order bulk action: Remove nonsensical <form action> attribute (#6154) 2026-05-11 17:39:46 +02:00
df0b580dd6 Pluggable permissions (#5728)
* Data model draft

* Refactor query and assignment usages of old permissions

* Backend UI

* API serializer

* Big string replace

* Docs, tests and fixes for teams api

* Update docs for device auth

* Eliminate old names

* Make tests pass

* Use new permissions, remove inconsistencies

* Add test for translations

* Show plugin permissions

* Add permission for seating plans

* Fix plugin activation

* Fix failing test

* Refactor to permission groups

* Update doc/api/resources/devices.rst

Co-authored-by: luelista <weller@rami.io>

* Update doc/api/resources/events.rst

Co-authored-by: luelista <weller@rami.io>

* Update src/pretix/api/serializers/organizer.py

Co-authored-by: luelista <weller@rami.io>

* Fix typo

* Fix python version compat

* Replacement after rebase

* Add proper permission handling for exports

* Docs for exporters

* Runtime linting of permission names

* Fix typos

* Show export page even without orders permission

* More legacy compat

* Do not strongly validate before plugins are loaded

* Rebase migration

* Add permission for outgoing mails

* Review notes

* Update doc/api/resources/teams.rst

Co-authored-by: Richard Schreiber <schreiber@pretix.eu>

* Clean up logic around exporters

* Review and failures

* Fix migration leading to forbidden combination

* Handle permissions on event copying

* Remove print-statements

* Make test clearer

* Review feedback

* Add AnyPermissionOf

* migration safety

---------

Co-authored-by: luelista <weller@rami.io>
Co-authored-by: Richard Schreiber <schreiber@pretix.eu>
2026-03-17 14:43:56 +01:00
Raphael Michel c3fd3a0838 Scheduled exports: Add copy button (Z#23221224) (#5823)
* Scheduled exports: Add copy button (Z#23221224)

* Update button label
2026-01-26 08:46:25 +01:00
Raphael Michelandluelista 1e0ede529c Event cancellation: Add safety and security checks (#5565)
* Event cancellation: Add safety and security checks

When cancelling an event, a large sum of money might be refunded
instantly. This PR adds safety features around this by

- doing a dry-run first that shows a preview of the expected refund sum

- sending a confirmation mode via email for any automatic refunds of more than 100 currency units

- keeping a more detailed log of the settings this was executed with

* Update src/pretix/control/views/orders.py

Co-authored-by: luelista <weller@rami.io>

---------

Co-authored-by: luelista <weller@rami.io>
2025-10-29 08:53:48 +01:00
Raphael Michel fe9a7eaa24 Order overview: Try to make linked filters behave as expected for line-level cancellations (Z#23203500) 2025-08-22 09:30:34 +02:00
Raphael Michel 0236911a88 Order search: Proper input validation with error feedback for advanced search (#4920) 2025-03-18 09:01:13 +01:00
Richard Schreiber 018569a0d6 [A11y] Remove all autofocus in control except login/auth and dashboard 2025-02-28 08:56:54 +01:00
Raphael MichelandMartin Gross 4fb5c6bef0 New implementation of sales channels (#4111)
Co-authored-by: Martin Gross <gross@rami.io>
2024-06-30 19:24:30 +02:00
Julian Baumann 8c80200fc0 Orders: Add bulk action to refund overpaid amount (#3721)
* add bulk action to refund overpaid amount

* display number of successful actions, use existing annotate method

* add tests, address review comments

* lint
2023-11-23 09:48:28 +01:00
Raphael Michel f1969e783f Export form: Add note on multisheet exporters 2023-11-20 10:18:19 +01:00
Raphael Michel 77da4052b9 Order list export: Expose same "extended status" as in backend (#3674)
* Order list export: Expose same "extended status" as in backend

* Review notes
2023-11-15 15:20:30 +01:00
Raphael Michel 2dd51b6f62 Order import: Allow to manually specify character set 2023-10-16 12:22:05 +02:00
Raphael Michel 56803e3d65 Fix voucher and order views for users with read-only permissions (#3594) 2023-09-14 17:37:48 +02:00
Raphael Michel 8f22d52e24 Fix misformatted translation strings 2023-09-08 10:05:08 +02:00
Raphael Michel f97e6d0a71 Fix missing white space 2023-09-07 11:16:05 +02:00
Raphael Michel c0031e4579 Add bulk operations for orders (#3548)
* Add bulk operations for orders

* UI tweaks

* Fix test failures

* Fix filter form

* Add tests

* Run isort
2023-09-06 17:02:21 +02:00
Raphael Michel 78d8e49990 Reports: Add new "accounting report" (#3314) 2023-05-19 09:23:34 +02:00
Raphael Michel 069c599cff Order list: Remove sums that cause lots of confusion (#3315) 2023-05-16 10:24:54 +02:00
Raphael Michel 6902725f3c New check-in features (#3022) 2023-02-09 09:46:46 +01:00
Raphael Michel 19d1a8de71 Scheduled exports (#3033) 2023-01-19 11:46:30 +01:00
Raphael MichelandRichard Schreiber 0ae66ab7f6 Reorganize UI for exporters (#3025)
Co-authored-by: Richard Schreiber <schreiber@rami.io>
2023-01-11 12:34:56 +01:00
Raphael Michel 772a4ce494 Order list: Use constant width for sales channel icon 2022-06-03 14:05:20 +02:00
Richard Schreiber 90d9ddebb5 Fix #2542 -- Validation of exporter forms (#2544) 2022-03-21 12:37:24 +01:00
Raphael Michel f7e5f0b567 Order overview: Adjust to new filter style 2021-07-19 13:58:45 +02:00
Raphael Michel 1ed1cd33e8 Consistent styling for filter forms 2021-07-19 13:40:44 +02:00
Raphael Michel 97d67d58d5 Add Order.custom_followup_at (#2124) 2021-06-11 17:08:13 +02:00
Raphael Michel 8e79eb570e Customer accounts & Memberships (#2024) 2021-05-04 16:56:06 +02:00
Raphael Michel bba103156c Allow to cancel an order without creating a cancellation invoice 2021-03-08 11:26:52 +01:00
Raphael Michel d109dde1e1 Fix form validation of exporters (again) 2021-02-15 18:30:37 +01:00
Raphael Michel 35270e7032 Allow to change order of refund list 2021-01-20 18:10:40 +01:00
Raphael Michel 4d36676cf8 Allow to filter for partially paid orders 2020-12-15 16:06:59 +01:00
Raphael Michel 821cb54ad0 Backend order list: Show sales channel 2020-12-15 15:53:21 +01:00
Raphael Michel a40951060f Backend order list: Show payment amount 2020-12-15 15:44:38 +01:00
Raphael Michel 821599dc1a Add advanced search to order list 2020-11-17 13:24:22 +01:00
Raphael Michel 2c1195eaa1 Order list: Allow to filter for approved 2020-11-10 11:07:10 +01:00
Raphael Michel 6052895ada Declare pretix.plugins.reports a core module 2020-11-01 15:01:24 +01:00
Raphael Michel 7a98f3fa89 Own column for unapproved orders in order overview 2020-11-01 15:00:54 +01:00
Raphael Michel 9202aca26a Allow to keep a few per ticket when cancelling an event 2020-10-30 15:49:34 +01:00
Raphael Michel 4ff4402a5f Allow to cancel subevents by date range 2020-10-29 10:08:37 +01:00
Raphael Michel 710aaa5f1c Add icons to order status in backend 2020-10-29 09:17:00 +01:00
Raphael Michel 13eabdd7f4 Fix missing date column in list of refunds 2020-10-06 18:45:53 +02:00
Raphael Michel d224b5387d Replace Travis with GitHub actions and fix many typos (#1657)
* Create django.yml

* Fix working directory

* ..

* .

* ..

* a.

* ..

* .

* Fix typo

* Install hunspell

* maxfail

* Fix install

* .

* Reduce number of typos

* Even less typos

* Postgres debug

* Spelling fixes, yet again

* Postgres with PW

* Fix failing test

* New workflows

* Fix syntax error

* Install gettext

* Test aginst python 3.6 as well

* Clean up strategies

* Add badge, do not ignore migrations

* Use pip cache
2020-04-22 12:07:58 +02:00
Raphael Michel f2844ac686 Add expiry dates and individual conditions to gift cards (#1656)
* Add expiry dates and individual conditions to gift cards

* Display refund gift cards with more details and prettier interface

* Allow to set gift card expiry and conditions when cancelling event

* Extend gift card search

* Fix #1565 -- Some gift card filters

* Improve list of gift cards

* Allow to edit gift cards

* Note on validity
2020-04-21 15:57:02 +02:00
Raphael Michel 0b02bcea8b Prevent cancelling all subevents by accident 2020-04-19 14:17:41 +02:00
Martin Gross b3c3ee3b22 Allow to issue gift card refunds when cancelling whole events 2020-04-15 10:08:12 +02:00
Raphael Michel 8a6334bd86 Introduce cancellation requests (#1627)
* Allow to adjust the cancellation fee without JS

* Introduce cancellation requests

* ignore→delete

* Change a few things after Martin's review

* Add a few tests
2020-03-25 14:13:55 +01:00
Raphael Michel b664cc712a Cancelling events: Allow to create manual and partial refunds 2020-03-16 16:00:44 +01:00
Raphael Michel 9b50ec2d74 Cancelling events: Allow to inform waiting list 2020-03-05 10:22:59 +01:00
Raphael Michel 62a86c9b4a Allow to cancel all orders in an event (#1596)
* Allow to cancel all orders in an event

* Add tests

* Actually add tests
2020-03-03 16:55:05 +01:00
Raphael Michel 24b931e1c3 Allow to import orders (#1516)
* Allow to import orders

* seats, subevents

* Plugin support

* Add docs

* Warn about lack of quota handling

* Control interface test

* Test skeleton

* First tests for the impotr columns

* Add tests for all columns

* Fix question validation
2019-12-11 11:44:06 +01:00