0cc8e59bb0
Webhooks: Add vouchers (Z#23203072) ( #5360 )
...
* Webhooks: Add vouchers (Z#23203072)
This also requires more consistent usage of webhook types to avoid
vouchers not being known to the external system.
* Update src/pretix/api/webhooks.py
Co-authored-by: luelista <weller@rami.io >
* Fix shredder test
---------
Co-authored-by: luelista <weller@rami.io >
2025-08-19 13:04:22 +02:00
a51a6123f5
Organizer-level plugins ( #5305 )
...
* Add version notes to the docs
* Adapt signal handling
* Add UI
* Add API
* API and tests
* Fix registry
* Update doc/development/api/plugins.rst
Co-authored-by: Felix Rindt <felix@rindt.me >
* Fix failing tests
* Apply suggestions from code review
Co-authored-by: Richard Schreiber <schreiber@rami.io >
* Update src/pretix/control/templates/pretixcontrol/organizers/plugin_events.html
Co-authored-by: luelista <weller@rami.io >
* Update src/pretix/control/templates/pretixcontrol/organizers/plugins.html
Co-authored-by: luelista <weller@rami.io >
* Update src/pretix/control/templates/pretixcontrol/organizers/plugins.html
Co-authored-by: luelista <weller@rami.io >
* Update src/pretix/control/navigation.py
Co-authored-by: luelista <weller@rami.io >
* Update src/pretix/control/urls.py
Co-authored-by: luelista <weller@rami.io >
* Apply suggestion from @wiffbi
* REbase migration
* Fix review note
* Fix test cases
* Remove plugin from all events if disabled on org level
* Update doc/development/api/plugins.rst
* Unify registries
* Rebase migration
---------
Co-authored-by: Felix Rindt <felix@rindt.me >
Co-authored-by: Richard Schreiber <schreiber@rami.io >
Co-authored-by: luelista <weller@rami.io >
2025-08-19 11:33:34 +02:00
luelista and GitHub
527bc83e5f
Add more sourcefields for datasync ( #5378 )
...
* add email domain field
* add order and ticket URL fields
* add "is admission product" field
* fix types
* Display sourcefields grouped into categories (#5379 )
2025-08-18 12:07:50 +02:00
luelista and GitHub
61eff28978
Use deserialized data structures for mapping configuration ( #5351 )
2025-08-07 12:19:15 +02:00
d5bccf8726
Queueing and mapping utilities for outbound data sync ( #4881 )
...
Add a registry for datasync providers and an associated sync queue, to be used by
plugins that transfer data from pretix orders to external systems.
Additionally, provide a generic data mapping interface to be used in settings pages
of such plugins, to let users configure which information from pretix to fill into
which data fields of the external system.
---------
Co-authored-by: Raphael Michel <michel@rami.io >
2025-08-06 14:34:04 +02:00
Tobias Kunze and GitHub
154f10af8f
Fix bulk voucher CSV field description ( #5120 )
2025-08-04 16:35:19 +02:00
423f0cbb90
Add button to reset entire check-in stack (Z#23188730) ( #5312 )
...
* Show print logs to admins
* Add button to reset entire check-in stack (Z#23188730)
* isort
* Update src/pretix/control/templates/pretixcontrol/checkin/reset.html
Co-authored-by: Richard Schreiber <schreiber@rami.io >
* Update src/pretix/control/templates/pretixcontrol/checkin/reset.html
Co-authored-by: Richard Schreiber <schreiber@rami.io >
* Update src/pretix/control/templates/pretixcontrol/checkin/reset.html
Co-authored-by: Richard Schreiber <schreiber@rami.io >
* Update src/pretix/control/templates/pretixcontrol/checkin/lists.html
Co-authored-by: Richard Schreiber <schreiber@rami.io >
---------
Co-authored-by: Richard Schreiber <schreiber@rami.io >
2025-07-18 10:02:18 +02:00
Raphael Michel and GitHub
04e92e9f2f
Order import: Allow to create multiple multi-ticket orders ( #5304 )
...
* Order import: Allow to create multiple multi-ticket orders
* Update src/pretix/base/modelimport_orders.py
* Fix failing test
2025-07-14 10:03:16 +02:00
Richard Schreiber and GitHub
14d6013292
FormFields: remove placeholders duplicating labels ( #5135 )
2025-07-10 16:06:36 +02:00
177b9cdcbb
Voucher form: Field-specific error messages (Z#23199648) ( #5291 )
...
* Voucher form: Field-specific error messages (Z#23199648)
* Update src/pretix/control/forms/vouchers.py
Co-authored-by: Richard Schreiber <schreiber@rami.io >
---------
Co-authored-by: Richard Schreiber <schreiber@rami.io >
2025-07-08 14:11:44 +02:00
Martin Gross
25cd84c459
mail_bcc: Add comma-separation hint
2025-07-02 15:08:25 +02:00
14ed6982a5
New data model for default tax rule and new options for cancellation fees ( #4962 )
...
* New data model for default tax rule
* Remove misleading empty label when field is not optional
* Allow to split cancellation fee
* Fix API and tests
* Update migration
* Update src/tests/api/test_taxrules.py
Co-authored-by: luelista <weller@rami.io >
* Update src/tests/api/test_taxrules.py
Co-authored-by: luelista <weller@rami.io >
* Review note
* Update src/pretix/base/models/tax.py
Co-authored-by: luelista <weller@rami.io >
* Flip API behaviour for default
* Fix failing tests
* Fix failing test
* Split migration
---------
Co-authored-by: luelista <weller@rami.io >
2025-06-30 16:47:09 +02:00
5d3fc62ba4
Questions: Validate type changes (Z#23197118) ( #5259 )
...
* Questions: Validate type changes (Z#23197118)
* Update src/pretix/base/forms/questions.py
Co-authored-by: Richard Schreiber <schreiber@rami.io >
* Update src/pretix/base/forms/questions.py
Co-authored-by: Richard Schreiber <schreiber@rami.io >
* Update src/pretix/base/forms/questions.py
Co-authored-by: Richard Schreiber <schreiber@rami.io >
* Update src/pretix/base/models/items.py
Co-authored-by: Richard Schreiber <schreiber@rami.io >
* Fix failing test
---------
Co-authored-by: Richard Schreiber <schreiber@rami.io >
2025-06-24 17:54:28 +02:00
Raphael Michel and GitHub
9fc9aaa661
Event settings: Fix duplicate font choices (Z#23196687) ( #5230 )
2025-06-17 09:58:18 +02:00
Raphael Michel and GitHub
1752b2f037
Do not allow to bulk-set empty names for subevents (Z#23194943) ( #5184 )
2025-05-30 13:29:18 +02:00
e46e689f01
Allow to add declaration of accessibility ( #5140 )
...
* Allow to add declaration of accessibility
* add fallback for empty accessibility_title
* unify label format (not "Title for")
* move title to top and set helptext before text
---------
Co-authored-by: Richard Schreiber <schreiber@rami.io >
2025-05-28 13:23:04 +02:00
7756b6745c
[A11y] move timezone info inline instead of tooltip ( #5130 )
...
* [A11y] move timezone info inline instead of tooltip
* Update text as suggested from code review
Co-authored-by: Raphael Michel <michel@rami.io >
* Rebase migration
* Delete src/pretix/base/migrations/0280_event_is_remote.py
---------
Co-authored-by: Raphael Michel <michel@rami.io >
2025-05-22 16:48:11 +02:00
Richard Schreiber and GitHub
ea955c779e
Fix image size in help-text for logo-images
2025-04-08 20:40:18 +02:00
Raphael Michel and GitHub
5138e86cf1
Order search: Keep searching in canceled positions (Z#23187097) ( #4963 )
2025-03-31 12:14:00 +02:00
0b8a7349c7
Discounts: Add applicability date ranges (Z#23151897) ( #4927 )
...
* Add event date fields, add preliminary range check
* Remove function, use filtered queryset for subevent id limit
* Improve and fix date range check
* Add formfields
* Add tests
* Improve tests
* Add new fields to API and documentation
* Add migration
* Change description according to suggestion
* Change discount apply signature, remove unnecessary query
* Rename new fields, simplify range check
* Rename fields in template
* Apply suggestions from code review
Co-authored-by: Raphael Michel <michel@rami.io >
---------
Co-authored-by: Raphael Michel <michel@rami.io >
2025-03-27 15:36:20 +01:00
luelista and GitHub
6a92b98766
Event order list: Search in attendee company field (Z#23186263) ( #4941 )
2025-03-24 15:04:17 +01:00
67b65bf67d
SMTP config: Do not accept non-ASCII passwords (Z#23186129) ( #4922 )
...
* SMTP config: Do not accept non-ASCII passwords
Python's SMTP implementation can't seem to handle non-ascii passwords,
so let's not let people enter them.
* Update src/pretix/control/forms/mailsetup.py
Co-authored-by: Mira <weller@rami.io >
---------
Co-authored-by: Mira <weller@rami.io >
2025-03-19 10:25:19 +01:00
Mira and GitHub
addba1ff57
Display "Order status" correctly in the "Search query" line of advanced search results ( #4926 )
2025-03-18 14:24:24 +01:00
Raphael Michel and GitHub
745929b625
Order email: Allow to attach default attachment (Z#23185463, #4903 ) ( #4915 )
2025-03-18 13:52:50 +01:00
Raphael Michel and GitHub
ac8cb3bfd1
Order search: Fix typing errors in advanced search ( fixes #4900 ) ( #4919 )
2025-03-18 09:01:30 +01:00
Raphael Michel and GitHub
0cca053d45
Address form: Add provinces for Italy
2025-03-17 10:36:29 +01:00
Richard Schreiber and GitHub
018569a0d6
[A11y] Remove all autofocus in control except login/auth and dashboard
2025-02-28 08:56:54 +01:00
Raphael Michel and GitHub
67db230f72
OIDC: Implement PKCE in OP and RP
2025-02-21 13:23:17 +01:00
Mira and GitHub
64effc84a3
Hide "Optional" label on conditionally required "Cross-selling condition" field ( #4809 )
2025-02-06 11:52:27 +01:00
a1100412ff
OIDC: Allow to add query parameters to Authorization URL ( #4791 )
...
Co-authored-by: Mira <weller@rami.io >
2025-01-30 13:39:31 +01:00
Mira Weller
f014a9bbd3
Reapply "Implement hidden_if_item_available_mode option (Z#23177008) ( #4776 )"
...
This reverts commit 5cd7959e86 .
2025-01-24 14:48:28 +01:00
Mira Weller
5cd7959e86
Revert "Implement hidden_if_item_available_mode option (Z#23177008) ( #4776 )"
...
This reverts commit b847612e1a .
2025-01-24 14:07:55 +01:00
Mira and GitHub
b847612e1a
Implement hidden_if_item_available_mode option (Z#23177008) ( #4776 )
2025-01-24 11:24:50 +01:00
Mira and GitHub
0a23aeece4
Allow 0% tax rate on event creation ( #4756 )
...
(but still warn if tax rate is not filled at all)
2025-01-23 12:59:39 +01:00
Raphael Michel and GitHub
46aefc10f3
Order change form: No default fee type, use most generic fee type first (Z#23179634) ( #4771 )
2025-01-21 17:48:31 +01:00
Raphael Michel and GitHub
1635118772
Copy ItemVariation.limit_sales_channels when copying items ( #4752 )
2025-01-21 15:01:28 +01:00
Raphael Michel
595c042624
Regenerate OrderPosition.web_secret when chaning other secrets
2025-01-03 15:21:45 +01:00
53f129d5d3
Add codification of tax rates ( #4372 )
...
* draft
* .
* Rebase migration
* Update src/pretix/base/models/tax.py
Co-authored-by: Mira <weller@rami.io >
* Test, isort, flake, migration rebase
* carry data & API
* Fix failing tests
* docs fixes
* Improve validation
* Tests
* More fixes
---------
Co-authored-by: Mira <weller@rami.io >
2024-12-13 12:04:38 +01:00
2dc625cf31
Add the option to introduce rich-text placeholders ( #4657 )
...
* Add the option to introduce rich-text placeholders
* Add tests in test_format
* Add some css
* Block vs inline
* Some fixed css
* Update src/pretix/control/forms/event.py
Co-authored-by: Mira <weller@rami.io >
* Add missing docstring prat
---------
Co-authored-by: Mira <weller@rami.io >
2024-12-03 11:38:15 +01:00
e99ee91573
Allow to use custom domains for some but not all events (Z#23153875) ( #4627 )
...
* Allow to use custom domains for some but not all events
* Update src/pretix/multidomain/urlreverse.py
* Apply suggestions from code review
Co-authored-by: Mira <weller@rami.io >
* Logging for domain config changes
---------
Co-authored-by: Mira <weller@rami.io >
2024-12-02 15:58:50 +01:00
Raphael Michel
fcff5a522d
Fix inconsistent labels
2024-11-19 16:36:09 +01:00
5896ca0197
Event creation: Prevent accidentally creating events without tax rate ( #4623 )
...
* Event creation: Prevent accidentally creating events without tax rate
* Update src/pretix/control/forms/event.py
Co-authored-by: Richard Schreiber <schreiber@rami.io >
* Fix tests
---------
Co-authored-by: Richard Schreiber <schreiber@rami.io >
2024-11-19 16:14:56 +01:00
Raphael Michel and GitHub
03d3c389da
Fix #1674 -- Change spelling of e-mail to email ( #4636 )
...
* Fix #1674 -- Change spelling of e-mail to email
* Conflicts and word list
* Add MobilePay to wordlist
* fix usage in tests
2024-11-18 17:21:29 +01:00
a5c39271dd
Make API security profiles pluggable ( #4597 )
...
* Make API security profiles pluggable
* Update src/pretix/api/signals.py
Co-authored-by: robbi5 <richt@rami.io >
* REmove dead class
---------
Co-authored-by: robbi5 <richt@rami.io >
2024-11-11 17:13:53 +01:00
Raphael Michel and GitHub
3d85d9d865
Remove deprecated auto_checkin_sales_channels ( #4587 )
...
* Remove deprecated auto_checkin_sales_channels
* Fix Query count
2024-11-06 12:30:41 +01:00
Raphael Michel and GitHub
4ca9a43890
Fix performance issue in filtering checkin list (Z#23170917) ( #4607 )
...
* Fix performance issue in filtering checkin list
* remove test
2024-11-06 12:30:37 +01:00
Mira and GitHub
91de0f93e6
Allow organizers to manually add fees to an existing order ( #4590 )
2024-11-05 14:37:50 +01:00
359df1f51e
Cross selling ( #4185 )
...
Product categories can now be marked as "cross-selling categories", causing them to
appear in the add-on checkout step as additional recommendations, depending on
their cross-selling visibility (always, only if certain products are already in the cart, or
only if they qualify for a discount according to discount rules).
---------
Co-authored-by: Raphael Michel <michel@rami.io >
Co-authored-by: Richard Schreiber <schreiber@rami.io >
2024-10-14 14:39:49 +02:00
Mira and GitHub
c10efc692d
Let organizers specify a helptext for the custom invoice field (Z#23167497) ( #4520 )
2024-10-14 09:22:58 +02:00
Raphael Michel
7a66aea2cb
Voucher update: Allow to remove seat
2024-10-07 11:42:28 +02:00