Commit Graph
350 Commits
Author SHA1 Message Date
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
luelistaandGitHub 38be6d13da Update setup.rst (#5283) 2025-07-17 11:21:09 +02:00
Raphael MichelandGitHub c53fc8df4e Developer docs: Remove some ancient history (#5224) 2025-06-10 12:20:41 +02:00
luelistaandGitHub 5375e22781 Add search and links to plugin settings (#4854)
* Show links to plugin views and settings in plugin list and in success message after activating a plugin
* Fix menu highlighting in payment provider settings
* Specify settings_links and navigation_links for built-in plugins
* Add link to payment plugins from payment settings
* Add client-side search and "View only active plugins" for plugins page
2025-03-24 15:04:35 +01:00
083e5ed265 New Signal: order_expiry_changed (#4867)
Co-authored-by: Raphael Michel <michel@rami.io>
2025-02-25 13:38:26 +01:00
Raphael MichelandGitHub 2f2551cc71 Prepare for new docs, remove user docs as they move to own repo (#4819) 2025-02-14 14:05:19 +01:00
0079be68d3 Allow plugins to add data to the order API (Z#23179688) (#4822)
* Allow plugins to add data to the order API (Z#23179688)

* Update src/pretix/api/serializers/media.py

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

* Fix failing test

---------

Co-authored-by: Richard Schreiber <schreiber@rami.io>
2025-02-10 14:06:20 +01:00
c8d4815c9e LogEntryType registry (#4235)
Move display of LogEntry details from the `logentry_display` and 
`logentry_object_link` signals to a class hierarchy based approach. 
For each action_type, an instance of a subclass of `LogEntryType` 
is registered in the `log_entry_types` registry.

Analogous to EventPluginSignal, this registry is an `EventPluginRegistry`, 
so it keeps track of the plugin the LogEntryType is defined in.

---------

Co-authored-by: Raphael Michel <michel@rami.io>
Co-authored-by: Richard Schreiber <schreiber@rami.io>
2025-01-16 13:05:57 +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 5795aa6492 Docs: Fix various sphinx warnings 2024-10-25 21:58:14 +02:00
George HickmanandGitHub 9dc38e42d8 Add device_changed signal (#4412)
This provides both the original and updated version of the Device so
subscribers can see the changes.
2024-10-11 11:08:23 +02:00
George HickmanandGitHub cdde688964 Remove git dir and work tree config from pre-commit hook (#4397)
These variables effectively hardcode the location from which the script
is run.  We shouldn't need these since git should know that it is inside
a repo when run.
2024-08-15 12:42:57 +02:00
Richard SchreiberandGitHub 22e2143623 API: add api_meta to order 2024-07-18 10:01:03 +02:00
Raphael Michel a889abc52b Unify terminology choice Ticketshop (German) 2024-07-03 13:41:09 +02:00
Raphael Michel 828f4e3168 Fix isort and docs test 2024-07-01 11:46:46 +02:00
4fb5c6bef0 New implementation of sales channels (#4111)
Co-authored-by: Martin Gross <gross@rami.io>
2024-06-30 19:24:30 +02:00
f0a06cd9fe Replace SCSS compilation with CSS variables (#4191)
* Replace SCSS compilation with CSS variables

* Update tests

* Update src/pretix/presale/style.py

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

* Update src/pretix/presale/context.py

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

* Update src/pretix/presale/views/widget.py

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

* Update src/pretix/presale/context.py

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

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

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

* Last minor changes

* Rename file

---------

Co-authored-by: Mira <weller@rami.io>
Co-authored-by: Richard Schreiber <schreiber@rami.io>
2024-06-25 13:01:20 +02:00
Martin GrossandGitHub 44170c1b93 Doc: Add missing backquote in dev/structure (ref #4222) 2024-06-14 12:31:35 +02:00
b638c00952 Time machine mode [Z#23129725] (#3961)
Allows organizers to test their shop as if it were a different date and time.

Implemented using a time_machine_now() function which is used instead of regular now(), which can overlay the real date time with a value from a ContextVar, assigned from a session value in EventMiddleware.

For more information, see doc/development/implementation/timemachine.rst

---------

Co-authored-by: Richard Schreiber <schreiber@rami.io>
Co-authored-by: Raphael Michel <michel@rami.io>
2024-05-17 10:52:17 +02:00
MiraandGitHub 9dc5c1b266 Prevent transferring files from priv/ to pub/ on event clone (#3956)
* Prevent transferring files from priv/ to pub/ on event clone

* Also detect file names with node prefix

* Only transfer files in explicitly declared file fields

* Update django-hierarkey

* Add note to documentation about the new behaviour
2024-05-08 09:33:23 +02:00
990e9da21d Generalize import process from orders to more models (#4002)
* Generalize import process from orders to more models

* Add voucher import

* Model import: Guess assignments of based on column headers

* Fix lock_seats being pointless

* Update docs

* Update doc/development/api/import.rst

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

* Update src/pretix/base/modelimport_vouchers.py

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

---------

Co-authored-by: Richard Schreiber <schreiber@rami.io>
2024-04-03 10:15:30 +02:00
Martin GrossandGitHub d67f5c650c Event-specific fonts and Web-Embedded Fonts (Z#23130701) (#3893) 2024-03-26 09:55:08 +01:00
bac673f3ab Allow template syntax in event text (Z#23140046) (#3815)
* remove duplicate context generation

* allow text templates in frontpage_text

* refactor: move placeholder functionality to separate file

* fix wrong class name, code style

* update year in license header

* undo license header update

* use new function name

* render only the placeholders that are actually used in the message

* refactoring

* add str(...) call

* Update doc/development/api/placeholder.rst

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

* rename register_mail_placeholders to register_template_placeholders
(deprecate old name)

* isort

* add signals to docs

---------

Co-authored-by: Raphael Michel <michel@rami.io>
2024-02-06 11:32:03 +01:00
Raphael Michel e971733d51 Add missing signal to documentation 2023-11-28 17:17:57 +01:00
c842ea597c New locking mechanism (#2408)
Co-authored-by: Richard Schreiber <schreiber@rami.io>
2023-09-11 11:44:50 +02:00
Kian CrossandGitHub d6caf01a38 Add warning about configuration of Celery in development mode to docs (#3525) 2023-08-22 10:44:11 +02:00
MiraandGitHub 5119bbd0b1 Docs: Update i18n.rst (fix dead link) (#3513) 2023-08-08 15:04:51 +02:00
Raphael MichelandGitHub e208a79c32 Docs: Update implementation docs for URL routing (#3510) 2023-08-07 14:13:19 +02:00
1733c383b3 Docs: Add description of NFC support (#3494)
* Add documentation on NFC support

* Add a .

* Update doc/development/nfc/uid.rst

Co-authored-by: robbi5 <richt@rami.io>

---------

Co-authored-by: robbi5 <richt@rami.io>
2023-07-26 13:26:00 +02:00
Kian CrossandGitHub a7f7c64cce Add signals for customer account creation and sign in (#3470) 2023-07-17 11:09:05 +02:00
41cded095c PProv: Implement detection of wallets such as Google Pay and Apple Pay (#3444)
Co-authored-by: Richard Schreiber <schreiber@rami.io>
2023-07-11 11:51:43 +02:00
Raphael MichelandGitHub bd32b33ba9 Bump Django to 4.1.* (#2989) 2023-06-05 09:56:31 +02:00
Raphael MichelandGitHub e0524f2a03 New plugin signal order_valid_if_pending (#3337) 2023-05-19 16:09:20 +02:00
Raphael MichelandGitHub c0419518c3 GiftCard: Add more information to transactions (#3308) 2023-05-12 09:38:35 +02:00
Raphael Michel 386e658d0b Update developer guide 2023-04-25 10:04:05 +02:00
Michael StapelbergandGitHub ba1a5f0e35 Docs: Note on periodic tasks in dev setup (#3228)
It took a little bit of searching to figure out that in the dev environment, by
default, celery tasks are run synchronously, but periodic tasks are not run at
all.
2023-04-16 14:24:35 +02:00
Raphael MichelandRaphael Michel e358bacfa3 Expose some payment details in exports 2023-02-15 13:21:55 +01:00
Raphael Michel c2c7e58fd6 Add BasePaymentProvider.refund_matching_id 2023-02-15 12:03:47 +01:00
Raphael MichelandGitHub 6941dda489 Doc: Upgrade to Sphinx 6 (#3113) 2023-02-10 16:37:57 +01:00
Felix SchäferandGitHub e4b9877444 Docs: Remove duplicate entry in attribute table (#3111) 2023-02-10 09:20:18 +01:00
Raphael MichelandGitHub 6902725f3c New check-in features (#3022) 2023-02-09 09:46:46 +01:00
Raphael MichelandGitHub 749f5c7e6c Invoices: Visibly mark paid invoices (#3094) 2023-02-07 11:34:38 +01:00
0ae66ab7f6 Reorganize UI for exporters (#3025)
Co-authored-by: Richard Schreiber <schreiber@rami.io>
2023-01-11 12:34:56 +01:00
Raphael Michel cce98e0418 Docs: Remove long-obsolete change notes 2022-11-29 14:29:42 +01:00
Raphael MichelandGitHub 9624b1c505 Support for external gift cards (#2912) 2022-11-23 14:52:56 +01:00
Raphael Michel 62a6a11836 Add refund details to API 2022-11-15 18:10:19 +01:00
Raphael Michel 60cdfe4029 Allow organizer-level exports with separate permission and no event selection 2022-10-05 10:36:57 +02:00
Raphael MichelandGitHub 6fee0ac0a9 Discounts (#2510) 2022-04-27 14:43:16 +02:00
e2adf1fdb3 Layout refresh for plugin settings page (#2490)
Co-authored-by: Richard Schreiber <schreiber@rami.io>
2022-03-21 16:42:03 +01:00
Raphael Michel af2600fd52 Docs: Fix reference to UserManager 2022-02-25 11:53:05 +01:00