Commit Graph
2401 Commits
Author SHA1 Message Date
Phin WolkwitzandGitHub 8a3da37b45 Connect giftcards with customer accounts (#5126)
Connect giftcards with customer accounts, show giftcards during checkout and in account , show giftcard list in backend customer view
2025-10-16 13:20:00 +02:00
Raphael MichelandGitHub ebfcb6f7c8 Improve interface to create and edit subevents (Z#23207890) (#5519)
* Use select2 item input in newly added quotas

* Make submit row sticky on really long forms

* Only show product settings that match quotas
2025-10-15 09:13:05 +02:00
Raphael MichelandGitHub 177a7d07fc Update license header (#5540) 2025-10-10 15:32:46 +02:00
luelistaandGitHub 50c1c9c724 Run sync job as soon as possible on clicking "Sync now" (#5526) 2025-10-08 13:15:09 +02:00
luelistaandGitHub 59a754f913 Fix log entry details for datasync logs without external link (Z#23210015) (#5524) 2025-10-07 19:58:13 +02:00
Raphael MichelandGitHub 15cbb3a416 Do not crash if generate_invoice fails (#5483)
* Do not crash if generate_invoice fails

* Add logging

* Add cancellation to try block

* One last thing…
2025-10-07 11:20:31 +02:00
Raphael MichelandGitHub 25f57f89b0 Order import: Additional warning for disabling test mode (Z#23208360) (#5494) 2025-10-02 19:14:29 +02:00
Raphael MichelandRaphael Michel 9d2ef94389 Invoicing: Configurable service date 2025-09-29 13:15:42 +02:00
Richard SchreiberandGitHub 15d15f978f Fix logging when changing user notifications (#5470) 2025-09-24 09:58:23 +02:00
Richard SchreiberandGitHub 34dbbdd82f PDF-Editor: fix missing maxlength for layout name (#5473) 2025-09-24 09:58:02 +02:00
✨ Q (it/its) ✨andGitHub 7037f348bf remove infinite loop when output plugin provides a URI for a whole order (#5474) 2025-09-23 18:26:38 +02:00
Raphael MichelandGitHub fb8a8142d9 Scheduled exports: Check permissions on creation 2025-09-22 10:22:12 +02:00
Richard SchreiberandGitHub b8b89f3040 Fix handling negative values in rrule (e.g. batch-adding subevents) (#5476) 2025-09-22 08:08:34 +02:00
Raphael MichelandGitHub baab35b81f Items: Allow plugins to put forms above a formset (#5460) 2025-09-15 18:11:18 +02:00
Richard SchreiberandGitHub b3974067a5 Fix placeholder interpolation in voucher error message (#5456) 2025-09-09 19:43:36 +02:00
Raphael MichelandGitHub 0bb390f0a9 Voucher log: Update wording for waiting list (Z#23206690) (#5454) 2025-09-09 15:05:45 +02:00
luelistaandGitHub e5301dcdc5 Clarify plugin signal docstrings (#5397) 2025-09-05 18:27:04 +02:00
luelistaandGitHub 0fcaeda0e9 Add fields to logdetail to aid debugging (#5426) 2025-09-02 17:50:49 +02:00
luelistaandGitHub 4c2efa0a97 Use different log action types per log_target for mail errors (Z#23204190) (#5422) 2025-09-02 15:37:44 +02:00
09e9273a57 Fix unhandled not found error when manually managing sync jobs (#5412)
* Fix unhandled not found error when manually managing sync jobs

* Improve info text (suggestions from code review)

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

---------

Co-authored-by: luelista <weller@rami.io>
2025-09-02 09:22:47 +02:00
Richard SchreiberandGitHub d23735b1a6 Fix missing payment provider "banktransfer" on export (#5405) 2025-08-26 11:40:24 +02:00
3f00fa58a0 Subevents: set inactive if non-batch deletion of subevent fails (Z#23204183) (#5374)
* Subevents: Extend fallback for undeletable dates for single deletion (Z#23204183)

* Fix useless writes

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

Co-authored-by: Richard Schreiber <schreiber@rami.io>

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

Co-authored-by: Richard Schreiber <schreiber@rami.io>

* Fix flow

---------

Co-authored-by: Richard Schreiber <schreiber@rami.io>
2025-08-22 10:47:47 +02:00
luelistaandGitHub 49c0f6b967 Organizer plugins: Do not show plugins as active if they are inactive on org-level (#5396) 2025-08-22 09:31:01 +02:00
Raphael MichelandGitHub 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 c200072471 Improve string quality and consistency 2025-08-19 18:35:35 +02:00
Raphael Michel cbee131378 Fix typos 2025-08-19 18:01:46 +02:00
05c74b7ad6 Pluggable invoice transmission methods (#5020)
* Flexible invoice transmission

* UI work

* Add peppol and output

* API support

* Profile integration

* Simplify form for individuals

* Remove sent_to_customer usage

* more steps

* Revert "Bank transfer: Allow to send the invoice direclty to the accounting department (#2975)"

This reverts commit cea6c340be.

* minor fixes

* Fixes after rebase

* update stati

* Backend view

* Transmit and show status

* status, retransmission

* API retransmission

* More fields

* API docs

* Plugin docs

* Update migration

* Add missing license headers

* Remove dead code, fix current tests

* Run isort

* Update regex

* Rebase migration

* Fix migration

* Add tests, fix bugs

* Rebase migration

* Apply suggestion from @luelista

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

* Apply suggestion from @luelista

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

* Apply suggestion from @luelista

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

* Apply suggestion from @luelista

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

* Apply suggestion from @luelista

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

* Make migration reversible

* Add TransmissionType.enforce_transmission

* Fix registries API usage after rebase

* Remove code I forgot to delete

* Update transmission status display depending on type

* Add testmode_supported

* Update src/pretix/static/pretixbase/js/addressform.js

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

* Update src/pretix/static/pretixbase/js/addressform.js

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

* Update src/pretix/static/pretixbase/js/addressform.js

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

* New mechanism for non-required invoice forms

* Update src/pretix/base/invoicing/transmission.py

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

* Declare testmode_supported for email

* Make transmission_email_other an implementation detail

* Fix failing tests and add new ones

* Update src/pretix/base/services/invoices.py

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

* Add emails to email history

* Fix comma error

* More generic default email text

* Cleanup

* Remove "email invoices" button and refine logic

* Rebase migration

* Fix edge case

---------

Co-authored-by: luelista <weller@rami.io>
2025-08-19 17:59:45 +02:00
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
Raphael MichelandGitHub 7cdccc7d8e Bulk order-refund: Create log entries (Z#23203462) (#5357) 2025-08-19 12:09:23 +02:00
Raphael MichelandGitHub 727ed67ff4 Orders: Prevent race condition in manual status transition (Z#23203887) (#5385) 2025-08-19 12:01:03 +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
56964b6764 Allow users to run sync jobs immediately (#5352)
* Allow users to run sync jobs immediately

* Transactional safety for manual handling of sync jobs (#5355)

* Fix indentation

---------

Co-authored-by: Raphael Michel <michel@rami.io>
2025-08-18 12:08:25 +02:00
luelistaandGitHub 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
067e11c265 Allow to annul a check-in (#5303)
* Allow to annul a check-in

* Fix locking

* Update doc/api/resources/checkin.rst

Co-authored-by: Phin Wolkwitz <wolkwitz@rami.io>

---------

Co-authored-by: Phin Wolkwitz <wolkwitz@rami.io>
2025-08-08 09:22:19 +02:00
luelistaandGitHub 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 KunzeandGitHub 154f10af8f Fix bulk voucher CSV field description (#5120) 2025-08-04 16:35:19 +02:00
9a119c35a8 Add a system-wide style for admin-only things (#5311)
* Add a system-wide style for admin-only things

* change stripe-color to a red-ish tone

* add stripes to button end-admin-session

---------

Co-authored-by: Richard Schreiber <schreiber@rami.io>
2025-08-04 16:18:29 +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 MichelandGitHub 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 SchreiberandGitHub 14d6013292 FormFields: remove placeholders duplicating labels (#5135) 2025-07-10 16:06:36 +02:00
Raphael Michel 415bff5c72 Device connection: Add copy buttons for manual setup 2025-07-10 14:46:24 +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
Richard SchreiberandGitHub a5f7f2bd0c Control: add event slug errors as help-text (#5288) 2025-07-08 13:49:41 +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
Richard SchreiberandGitHub 090358833d Remove browserconfig.xml (#5280)
* Remove meta-elements

* remove url-route
2025-06-30 11:25:18 +02:00
Richard SchreiberandGitHub a4c74f6310 PDF-Editor: use panel-head as topbar for common commands/tools and preview/save (#4977) 2025-06-30 11:19:39 +02:00
Richard SchreiberandGitHub f66a41f6a7 Presale: remove webmanifest (#5275)
* Remove webmanifest from presale

* move webmanifest from presale to base urls
2025-06-30 09:33:42 +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