Commit Graph
54 Commits
Author SHA1 Message Date
Raphael Michel 500bca1323 Address form: Reduce useless XHR calls 2025-08-20 12:43:21 +02:00
Raphael Michelandluelista 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
Richard Schreiber e8abe5cad8 [A11y] fix variations toggle-button missing aria-controls (#5237) 2025-06-11 10:46:53 +02:00
Richard Schreiber 6aa3747403 Fix sneak-peek missing inert-attribute (#5207) 2025-06-03 21:49:59 +02:00
Raphael Michel 5fb1fc23ce Refactor stubs for gettext JS function (#5170) 2025-05-27 17:24:04 +02:00
Richard Schreiber 590acfe568 Fix asynctask_check_url 2025-05-27 10:03:49 +02:00
5962536a11 Dialog for cart renewal, async task without page refresh (#5148)
* async_task: deduplicate response handling code

* extend cart without full page reload

* update dialog markup

* fix error response from CartExtend

* refactor asynctask, make sure waitingDialog.show() re-initializes dialog contents

* add cart expiry notification

* add aria references to other dialogs

* improve error handling

* fix error if max_extend=None

* different message for expiring soon and expired carts

* refactor dialog css

* add classes to further dialog elements

* switch extend-cart-dialog and loadingmodal to <dialog>

* Backport simple_block_tag from Django 5.2

* Use simple_block_tag for {% dialog %} tag

* add alertdialog role

* Update src/pretix/static/pretixbase/scss/_dialogs.scss

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

* fix mobile dialog styles not being overwritten

* asynctask dialog: prevent close by escape on chrome

* remove dynamic aria-live from #cart-deadline

dynamic aria-live is generally not well supported and as we have the dialog now anyways, we can remove it

* move continue-button to right

* Update src/pretix/static/pretixpresale/js/ui/cart.js

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

* Fix CSS for old-style dialog

* fix heading display/level

* align dialogs at the top as they originally were

* fix </div> from merge-conflict

* fix missing grow for dialog-content

* improve cart-extend-button ui

* do not show cart-extend-dialog onload

* improve message if 0 minutes

* do not save messae in session if ajax_dont_redirect

* add ajax_dont_redirect to async_task_check_url

* improve draw_deadline to only update #cart-deadline if necessary

* add renew-confirmation-message

---------

Co-authored-by: Richard Schreiber <schreiber@rami.io>
Co-authored-by: Raphael Michel <michel@rami.io>
2025-05-27 07:17:50 +02:00
Richard Schreiber 6f92f2324f Fix JavaScript-based required label 2025-05-12 16:35:18 +02:00
Richard Schreiber 7472564c26 [A11y] Fix sneak-peek for cart (#5076) 2025-05-09 08:38:34 +02:00
Raphael Michel 0cca053d45 Address form: Add provinces for Italy 2025-03-17 10:36:29 +01:00
Raphael Michel 00b4622afa Address form logic: Respect dependency of VAT ID on is_business (#4713) 2025-01-21 15:05:16 +01:00
Mira Weller 0279ca7d94 Add missing error handling to addressform.js 2024-12-02 10:15:16 +01:00
Mira Weller f2ee1d00b3 Don't use animation for address information load indicator 2024-11-29 17:09:14 +01:00
Mira e8e9698a31 Update address field logic (Z#23163120) (#4659)
* Move country-dependent JS logic to separate file (avoids code duplication for presale and control)
* Correctly apply "required" attribute to address state field
* Load address format information when selecting country
* Fix some other bugs and inconsistencies
2024-11-29 14:56:56 +01:00
Richard Schreiber b04ec720dc Fix details sneak-peek keyup 2023-09-08 13:15:19 +02:00
Richard Schreiber f262cd632c Chekout: make disabling sneak-peek more robust (#3527) 2023-08-16 15:02:02 +02:00
Raphael Michel 88ac407cf3 Cart: Disable sneak peek on very small carts (#3512) 2023-08-09 14:53:50 +02:00
Richard Schreiber 8a9f14db03 Fix cart sneak-peek on async error 2023-07-07 09:02:53 +02:00
Raphael MichelandMartin Gross b415393ccf Data shredder optimizations (#3429)
Co-authored-by: Martin Gross <gross@rami.io>
2023-06-23 16:56:19 +02:00
Richard Schreiber b8b5835eff Fix asynctask’s ajax success callback signature 2023-04-27 09:04:00 +02:00
Richard Schreiber 38e826724f Cart: Add sneak-peek preview (#3259) 2023-04-26 14:43:23 +02:00
Richard Schreiber c7060d188f Product list: Indent variations, improve alignment of price and quantity (#3135) 2023-03-03 14:26:11 +01:00
Raphael Michel 19d1a8de71 Scheduled exports (#3033) 2023-01-19 11:46:30 +01:00
Raphael Michel 334c1c4b5e Hotfix JS issue 2022-06-10 13:00:01 +02:00
86085d9368 Allow to bulk-select many tickets to check in or out (#2678)
* Allow to bulk-select many tickets to check in or out

* Update tests

* Add permission test

* Update src/pretix/control/templates/pretixcontrol/checkin/index.html

Co-authored-by: Richard Schreiber <wiffbi@gmail.com>

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

Co-authored-by: Richard Schreiber <wiffbi@gmail.com>

* Remove console.warn

* Simplify stuff

* minor refactor

* fix missing checked-out success message

Co-authored-by: Richard Schreiber <wiffbi@gmail.com>
Co-authored-by: Richard Schreiber <schreiber@rami.io>
2022-06-10 12:14:44 +02:00
Raphael MichelandRichard Schreiber 591f5a75ef Fix error handling on add-ons selection step (#2659)
Co-authored-by: Richard Schreiber <wiffbi@gmail.com>
2022-05-19 13:27:28 +02:00
Raphael Michel 4c71995560 Support for file upload in asynctask.js 2022-02-03 11:21:49 +01:00
3dcfa57b70 A11y improvements (#2081)
Co-authored-by: Raphael Michel <michel@rami.io>
Co-authored-by: Raphael Michel <mail@raphaelmichel.de>
2021-10-17 16:56:16 +02:00
Raphael Michel 17adde99fa Allow to restrict availability of variations by date, sales channel, and voucher (#2202) 2021-09-15 12:04:17 +02:00
Raphael Michel dcf29ec63e Add workaround for issue with "back" button in Safari 2021-07-15 18:38:16 +02:00
Raphael Michel e510a2c121 Fix creating large numbers of subevents (introduces async task) (#2091) 2021-05-25 19:24:43 +02:00
Raphael Michel 92a50cb2d1 Web-based check-in interface (#1985) 2021-03-30 09:34:11 +02:00
Raphael Michel 488273d5f2 Fix #1912 -- Auto-open all <details> with an error inside 2021-02-15 18:30:37 +01:00
Raphael Michel 9fdaf040dc Asynctask JS: On errors, only replace inner part of page 2021-02-15 18:30:37 +01:00
Raphael Michel da149682aa Improve load behavior of ajaxpending.js 2020-10-31 16:33:45 +01:00
Raphael Michel 265da6c746 Progress bar instead of acks_late for event cancellation 2020-07-23 21:54:03 +02:00
Raphael Michel d58c8559fc Long-running async tasks: Expose running state 2020-07-23 21:39:13 +02:00
Raphael Michel a310c33497 Add progress bar to some large exports 2020-07-23 21:35:58 +02:00
Raphael Michel c0972ef39d Re-run form handlers when validation of an async form fails 2020-05-06 09:51:45 +02:00
Raphael Michel 4afef62cbd Fix typo 2019-12-07 13:24:35 +01:00
Raphael Michel 3d5cfdd9c7 Fix conflict between are-you-sure.js and async tasks
Thanks @luto for reporting and helping to debug
2019-12-07 13:23:33 +01:00
Raphael Michel ea71b1f04e Fix typo 2019-11-06 15:42:20 +01:00
Raphael Michel 77046136f2 asynctask.js: Hack to allow form validation 2019-07-12 12:23:34 +02:00
Raphael Michel 5180b5e48b Fix #1329 -- Fix image lightbox for products with variations 2019-07-05 16:58:39 +02:00
Raphael Michel ca59237ebf Use regular asynctasks for order PDF generation 2018-11-26 13:21:25 +01:00
Raphael Michel bd838b3b7c Fix #1074 -- More specific messages during asynctasks 2018-11-08 16:38:12 +01:00
Raphael Michel 33ae6f12de Fix links in item descriptions 2018-06-10 15:11:19 +02:00
Raphael Michel 05daeb561c Use <details> und <summary> instead of panel-collapse 2018-05-10 12:04:29 +02:00
Jakob Schnell 831e31ea9d occured -> occurred (#660)
* Fix duplicate source string

* occured -> occurred

All resources I could find listed this as misspelled, but I wasn't too
sure…
Also, it should be checked if all changes to the .po-files are respected
in the corresponding src-files.
2017-11-03 11:46:35 +01:00
Jakob Schnell 4614d04be4 Correct english typos (#662)
* Check that vouchers selected via API are for the correct event

* Choose different subject for reminder mails if auto-expiry is off

* correct english typos

As with PR #660, it should be checked whether the changes to the
.po-files are respected in the corresponding src-files.
2017-11-03 11:40:52 +01:00