luelista 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
2025-03-14 17:08:38 +01:00
2017-02-16 10:33:08 +01:00
2020-12-14 13:11:19 +01:00
2016-02-16 16:17:04 +01:00
2024-08-15 12:42:02 +02:00
2022-10-10 11:47:00 +02:00
2025-05-02 10:16:18 +02:00
2025-02-25 17:17:02 +01:00
2023-04-26 15:54:15 +02:00

pretix
======

.. image:: https://img.shields.io/pypi/v/pretix.svg
   :target: https://pypi.python.org/pypi/pretix

.. image:: https://github.com/pretix/pretix/workflows/Documentation/badge.svg
   :target: https://docs.pretix.eu/

.. image:: https://github.com/pretix/pretix/workflows/Tests/badge.svg

.. image:: https://codecov.io/gh/pretix/pretix/branch/master/graph/badge.svg
   :target: https://codecov.io/gh/pretix/pretix



Reinventing ticket presales, one ticket at a time.

Project status & release cycle
------------------------------

While there is always a lot to do and improve on, pretix by now has been in use for thousands of events
conferences that sold millions of tickets combined. We therefore think of pretix as being stable and ready to use.

If you want to use or extend pretix, we strongly recommend to follow our `blog`_. We will announce all
releases there. You can always find the latest stable version on PyPI or in the ``release/X.Y`` branch of
this repository. The ``master`` branch contains a development version that we also try to keep stable in
the sense that it does not break your data,  but its APIs might change without prior notice.

To get started using pretix on your own server, look at the `installation guide`_ in our documentation.

Support
-------

This project is 100 percent free and open source software. You are welcome to ask questions in the GitHub
repository. Private support via email or phone is only offered to customers of our pretix Hosted or pretix
Enterprise offerings. If you are interested in commercial support, hosting services or supporting this project
financially, please go to `pretix.eu`_ or contact us at support@pretix.eu.

Contributing
------------
If you want to contribute to pretix, please read the `developer documentation`_
in our documentation. If you have any further questions, please do not hesitate to ask!

.. image:: https://translate.pretix.eu/widgets/pretix/-/pretix/multi-blue.svg
   :target: https://translate.pretix.eu/engage/pretix/

Code of Conduct
---------------
We have a `Code of Conduct`_ in place that applies to all project contributions,
including issues, pull requests, etc.

License
-------

The code in this repository is covered by different licenses. Most of it is available to everyone under the terms of
the GNU AGPL license v3 with additional terms. See the LICENSE file for the complete license details.

.. _installation guide: https://docs.pretix.eu/self-hosting/installation/general/
.. _developer documentation: https://docs.pretix.eu/dev/development/index.html
.. _Code of Conduct: https://docs.pretix.eu/dev/development/contribution/codeofconduct.html
.. _pretix.eu: https://pretix.eu
.. _blog: https://pretix.eu/about/en/blog/
Description
Ticket shop application for conferences, festivals, concerts, tech events, shows, exhibitions, workshops, barcamps, etc.
Readme Multiple Licenses 891 MiB
Languages
Python 78.1%
HTML 12.9%
JavaScript 5.1%
SCSS 3.3%
Vue 0.5%