Commit Graph

1582 Commits

Author SHA1 Message Date
Richard Schreiber
4b5711253e Fix display_add_to_cart for variations 2025-12-01 13:48:02 +01:00
Martin Gross
2fc7c23960 Cart Fragment: Display description of OrderFee.FEE_TYPE_OTHER if description is set (as done in invoices) 2025-11-20 13:56:21 +01:00
Richard Schreiber
818bb76e89 Fix calendar before-date to check for events (#5608) 2025-11-17 16:39:20 +01:00
Raphael Michel
86ca7c4440 Order page: Do not show download deadline if download is disabled (fixes #3144) (#5630) 2025-11-17 15:42:20 +01:00
Raphael Michel
e99eecb8be Product list: Show number of items currently in cart (Z#23212546) (#5599)
* Product list: Show number of items currently in cart

* Apply suggestions from code review

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

* Add display property

---------

Co-authored-by: Richard Schreiber <schreiber@rami.io>
2025-11-11 08:05:40 +01:00
Phin Wolkwitz
fd9d03786b Add program times for items (Z#23178639)
* Add program times for items

* Fix frontend date validation

* Add ical data for program times [wip]

* Improve ical data for program times

* Remove duplicate code and add comments

* Adjust migration

* Remove program times form for event series

* Add pdf placeholder [wip]

* Improve explanation text with suggestion

Co-authored-by: Raphael Michel <michel@pretix.eu>

* Fix import sorting

* Improve ical generation

* Improve ical entry description

* Fix migration

* Add copyability for program times fot items and events

* Update migration

* Add API endpoints/functions, fix isort

* Improve variable name

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

* Remove todo comment

* Add documentation, Change endpoint name

* Change related name

* Remove unnecessary code block

* Add program times to item API

* Fix imports

* Add log text

* Use daterange helper

* Add and update API tests

* Add another API test

* Add program times to cloning tests

* Update query count because of program times query

* Invalidate cached tickets on program time changes

* Reduce invalidation calls

* Update migration after rebase

* Apply improvements to invalidation from review

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

* remove unneccessary attr=item param

* remove unnecessary kwargs for formset_factory

* fix local var name being overwritten in for-loop

* fix empty formset being saved

* Use subevent if available

* make code less verbose

* remove double event-label in ical desc

* fix unnecessary var re-assign

* fix ev vs p.subevent

---------

Co-authored-by: Raphael Michel <michel@pretix.eu>
Co-authored-by: Richard Schreiber <schreiber@rami.io>
2025-11-06 12:24:47 +01:00
Raphael Michel
b02e1a1515 Gift card payment: Clean-up some code (#5574)
* Remove apparently unused code

* Move templates that do not belong in pretixcontrol
2025-11-03 17:38:56 +01:00
Raphael Michel
3e972eddbf Allow to round taxes on order-level (#5019)
* Allow to round taxes on order-level

* Rename get_cart_total

* Persist rounding mode with order

* Add general docs

* Order creation API

* Update fee algorithm

* Rounding on payment method change

* Round when splitting order

* Fix failing tests

* Add settings page

* Add tests

* Replace algorithm

* Add test case for currency rounding

* Improve order change

* Update flowchart

* Update discount logic (more hypothetical, we don't store rounding on cart positions atm)

* Rename internal method

* Fix typo

* Update help text

* Apply suggestions from code review

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

* Order rounding refactor (#5571)

* Add RoundingCorrectionMixin providing before-rounding-values as properties

* Use gross_price_before_rounding in more places

* Update doc/development/algorithms/pricing.rst

Co-authored-by: Martin Gross <gross@rami.io>

* Allow to override on perform_order

* Rebase migration

* Fix event cancellation

---------

Co-authored-by: luelista <weller@rami.io>
Co-authored-by: Martin Gross <gross@rami.io>
2025-10-30 11:49:31 +01:00
Martin Gross
5563183255 Allow to unlock a payment method and redeem a voucher at the same time (#5564) 2025-10-21 17:28:33 +02:00
Phin Wolkwitz
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 Michel
177a7d07fc Update license header (#5540) 2025-10-10 15:32:46 +02:00
Raphael Michel
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 Michel
4931059da3 Approval process: Use less scary wording for free orders (Z#23206212) (#5485)
* Approval process: Use less scary wording for free orders (Z#23206212)

* Update src/pretix/presale/templates/pretixpresale/event/checkout_confirm.html

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

* Update src/pretix/presale/templates/pretixpresale/event/checkout_confirm.html

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

* Revert "Update src/pretix/presale/templates/pretixpresale/event/checkout_confirm.html"

This reverts commit bd98c1a01432403c8428b95591458e259c7e5fae.

---------

Co-authored-by: luelista <weller@rami.io>
2025-09-24 15:50:48 +02:00
✨ Q (it/its) ✨
7037f348bf remove infinite loop when output plugin provides a URI for a whole order (#5474) 2025-09-23 18:26:38 +02:00
Raphael Michel
c488901dc5 Adjust spec of filter_subevents signal (#5462)
* Adjus tspec of filter_subevents signal

* Fix typos

---------

Co-authored-by: Richard Schreiber <schreiber@rami.io>
2025-09-12 15:45:37 +02:00
Raphael Michel
ed9250c522 Allow plugins to filter subevents in the public calendar (#5457)
* Allow plugins to filter subevents in the public calendar

* Add to docs

* Review notes
2025-09-11 19:40:10 +02:00
luelista
e5301dcdc5 Clarify plugin signal docstrings (#5397) 2025-09-05 18:27:04 +02:00
Richard Schreiber
f3b6627e63 Fix handling zero-duration events in organizer day-calendar (#5414) 2025-09-02 09:51:05 +02:00
Raphael Michel
e591c74862 Hotfix crash PRETIXEU-C0F 2025-08-20 08:44:33 +02:00
Raphael Michel
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
Raphael Michel
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
Raphael Michel
39a0093c6b Fix subtotal rendering on mobile (#5365) 2025-08-12 09:39:21 +02:00
Raphael Michel
807df01f5d Checkout: Delete invoice address if no longer required (Z#23203488) (#5358) 2025-08-08 15:56:35 +02:00
Waldir Pimenta
6338dceb9e Clarify checkout success message (#5336) 2025-08-04 16:07:45 +02:00
Richard Schreiber
4d9f1a8efc [A11y] add main-landmark to all presale pages (#5332) 2025-07-30 14:30:45 +02:00
Richard Schreiber
23b07e29cd [A11y] Presale: improve heading levels for better document outline (#5335) 2025-07-30 11:51:19 +02:00
Raphael Michel
6a8ec1ec7f Generalize link footer on organizer page as well 2025-07-17 10:32:09 +02:00
Raphael Michel
0b799b132d Generalize link in footer to "Contact" (Z#23200756) (#5315) 2025-07-16 17:40:50 +02:00
Raphael Michel
149f1ee871 Product list: Fix consistency issue (Z#23201046) (#5307) 2025-07-16 14:51:11 +02:00
Richard Schreiber
2788ba10fe Fix broken widget cache (#5282) 2025-07-01 11:15:02 +02:00
Richard Schreiber
090358833d Remove browserconfig.xml (#5280)
* Remove meta-elements

* remove url-route
2025-06-30 11:25:18 +02:00
Richard Schreiber
f66a41f6a7 Presale: remove webmanifest (#5275)
* Remove webmanifest from presale

* move webmanifest from presale to base urls
2025-06-30 09:33:42 +02:00
Richard Schreiber
545625b732 Fix failing flake8 2025-06-25 11:24:11 +02:00
Richard Schreiber
9bf302e5ae Widget: deprecate v1 and deliver v2 instead (#5273)
* Widget: deprecate v1 and redirect to v2

* Make redirect permanent

* remove v1 files

* do not redirect, just serve version_min

* add version-comment to delivered css/js-file

* fix tests
2025-06-25 11:20:34 +02:00
Richard Schreiber
d55f411989 Add data-article-id to reference cart-item in product-list (#5244) 2025-06-23 11:49:23 +02:00
Raphael Michel
dec07b2df1 Subevent calendar: Respect time machine (#5231) 2025-06-17 11:30:52 +02:00
Richard Schreiber
74cea09f6c [A11y] add missing autcomplete (#5236) 2025-06-11 10:47:17 +02:00
Richard Schreiber
e8abe5cad8 [A11y] fix variations toggle-button missing aria-controls (#5237) 2025-06-11 10:46:53 +02:00
Richard Schreiber
ae4073b3e4 [A11y] improve cart renew confirmation (#5206)
* [A11y] improve cart renew confirmation

* revert time

* add inline-dialog to cart-renewal-button so confirm-button has interactive meaning
2025-06-11 08:58:26 +02:00
Richard Schreiber
9f49b7747c [A11y] Checkout: fix semantics for addon-list, etc. (#5212) 2025-06-10 20:39:16 +02:00
Richard Schreiber
ab72abea0a [A11y] add autocomplete to customer forms email input (#5214) 2025-06-10 12:54:25 +02:00
Richard Schreiber
f600200ec6 [A11y] improve questions step (#5199)
* [A11y] fix copy-answer buttons being inside interactive summary

* fix legends missing fieldsets

* indent explanation-texts

* Do not indent explanation, move copy-button after explanation

* fix code indent

* remove unneccessary change
2025-06-03 10:06:40 +02:00
Phin Wolkwitz
36c0acc574 Fix unavailable input options (Z#23194875) (#5178)
* Fix unavailable input options

* Fix it also for items with variations

* Fix it also for items with variations
2025-06-02 18:41:47 +02:00
Richard Schreiber
3a48279b22 [A11y] add group labelling to single input name-widget (#5195) 2025-06-02 15:53:35 +02:00
Richard Schreiber
0ee451560a [A11y] fix organizer event view navigation missing aria-current (#5196)
* [A11y] fix organizer event view navigation

* Update src/pretix/presale/templates/pretixpresale/fragment_calendar_nav.html

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

---------

Co-authored-by: Raphael Michel <michel@rami.io>
2025-06-02 15:53:11 +02:00
Richard Schreiber
5866162932 [A11y] change organizer page-titles based calendar-view (#5197)
* [A11y] change organizer page-titles based calendar-view

* add current date to title as in h2
2025-06-02 15:52:21 +02:00
Richard Schreiber
66a4a34383 [A11y] fix giftcard-checkout error messages (#5175)
* [A11y] fix giftcard-checkout error messages

* move validation to payment_form

* Update checkout_payment.html

* move already-used check to clean as well

* fix tests

* fix code style issue

* fix giftcard-payment in redeem-view

* Fix responsiveness on checkout

* Fix paying for existing orders

* fix cart.py for new GiftCardPaymentForm-signature

* fix order_tests

---------

Co-authored-by: Raphael Michel <michel@rami.io>
2025-05-30 13:29:33 +02:00
luelista
fe7a076dd4 Remove unused form.has-seating classes (#5179)
Co-authored-by: Richard Schreiber <schreiber@rami.io>
2025-05-28 18:11:54 +02:00
luelista
0f4a767b58 Fix form.has-seating class in voucher.html (#5180) 2025-05-28 18:10:11 +02:00
Richard Schreiber
e8ff743b76 Improve wording for cart-renew dialog (#5174)
* Improve wording for cart-renew dialog

* remove duplication of static texts for dialog

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

* Fix typo

Co-authored-by: Raphael Michel <michel@rami.io>

* Apply suggestions from code review

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

---------

Co-authored-by: luelista <weller@rami.io>
Co-authored-by: Raphael Michel <michel@rami.io>
2025-05-28 17:36:37 +02:00