Raphael Michel
3453818c16
Fix email layout preview (PRETIXEU-AB9)
2024-07-01 08:56:36 +02:00
Raphael Michel
4fb5c6bef0
New implementation of sales channels ( #4111 )
...
Co-authored-by: Martin Gross <gross@rami.io >
2024-06-30 19:24:30 +02:00
Raphael Michel
9fe6916ab5
Item index: use internal category names again
2024-06-26 15:25:04 +02:00
Raphael Michel
634263f1ba
Item form: Validate empty dynamic validity
2024-06-26 09:44:49 +02:00
Raphael Michel
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
Mira
a73c4ad937
Improve List Sorting UI ( #4215 )
...
Improve product list UI (allow move between categories, more useful columns and links)
and hide "move up/down" arrows in lists by default if drag-drop is available
2024-06-25 12:54:11 +02:00
Raphael Michel
a7a33ed165
Voucher bulk form: Strip spaces from email addresses before validation
2024-06-20 17:16:21 +02:00
Martin Gross
cb95cdc6ce
item_forms: Allow signals to return None ( #4237 )
...
Co-authored-by: Richard Schreiber <schreiber@rami.io >
2024-06-18 16:24:39 +02:00
Raphael Michel
e9a95b0b09
Add system report for pretix Enterprise ( #4213 )
...
* Add system report for pretix Enterprise
* Update src/pretix/control/sysreport.py
Co-authored-by: Mira <weller@rami.io >
* ADd missing license header
---------
Co-authored-by: Mira <weller@rami.io >
2024-06-13 17:08:36 +02:00
Mira
dd6ebd7a48
Improve validation of email templates ( #4184 )
...
* Improve validation of email templates
* simplify SafeFormatter (skip attribute access code path altogether instead of blocklisting characters)
* let SafeFormatter optionally raise on missing key
* simplify placeholder validation
* rename parameter
* Remove unused import
---------
Co-authored-by: Raphael Michel <michel@rami.io >
2024-06-10 16:41:52 +02:00
Raphael Michel
ebda10542e
Add IE11 banner to frontend ( #4207 )
2024-06-10 14:29:17 +02:00
Raphael Michel
e28bbb7ea0
Voucher creation: Fix TypeError in validation (PRETIXEU-A52)
2024-06-10 12:23:20 +02:00
Raphael Michel
90ce802a33
Item form: Prevent combining validity_mode with gift cards ( #4187 )
2024-06-04 11:57:49 +02:00
Mira
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
Raphael Michel
bfcca7046a
Vouchers: Add copy button for URL
2024-05-16 11:57:50 +02:00
Raphael Michel
9c4efa7dcf
Fix link on orders with memberships without customer (PRETIXEU-A1W)
2024-05-14 11:59:16 +02:00
Raphael Michel
e8f7cea1bf
Allow attendees to modify their data (Z#23152886) ( #4138 )
...
* Allow attendees to modify their data
* Allow attendees to change ticket information
* Update src/pretix/control/templates/pretixcontrol/event/settings.html
Co-authored-by: Mira <weller@rami.io >
* Update src/pretix/presale/views/order.py
Co-authored-by: Mira <weller@rami.io >
* Update src/pretix/base/services/placeholders.py
Co-authored-by: Mira <weller@rami.io >
* Tests fix
* Fix test
---------
Co-authored-by: Mira <weller@rami.io >
2024-05-08 15:18:33 +02:00
Raphael Michel
0e20d897d2
Prevent parallel refunds for the same order (Z#23152965) ( #4136 )
2024-05-07 14:32:02 +02:00
Raphael Michel
5ca0833db1
Vouchers: Fix validation of quota when copying a blocking voucher (Z#23152799) ( #4133 )
...
* Vouchers: Fix validation of quota when copying a blocking voucher
* Bugfixes
2024-05-07 09:50:16 +02:00
Raphael Michel
cebb6d3b43
Introduce locking to prevent duplicate invoices (Z#23150548) ( #4067 )
...
* Introduce locking to prevent duplicate invoices
This is not a perfect solution as it does not handle all code paths to
create invoices, but it handles all that seem likely to be triggered
concurrently
* Review note
2024-04-30 10:43:13 +02:00
Richard Schreiber
20b2a3d2aa
Control: add link to orders for each subevent in list of subevents (Z#23129436) ( #3566 )
2024-04-29 18:44:42 +02:00
Martin Gross
5c833cd493
Add special input widgets for markdown fields ( #1577 )
...
* Add markdown text input widgets
* Update src/pretix/static/pretixcontrol/scss/_forms.scss
* Improvements
---------
Co-authored-by: Raphael Michel <michel@rami.io >
2024-04-23 14:40:30 +02:00
Martin Gross
79d59553d7
POS: Do not fail when rendering ZVT-transactions without a cardName or cardType
2024-04-22 13:52:18 +02:00
Raphael Michel
b6a42ac8d2
Widget: Document and improve situation around COEP (Z#23149909) ( #4051 )
2024-04-22 13:15:33 +02:00
Raphael Michel
fb403dad88
Add comment field to subevents (Z#23148472) ( #4099 )
...
* Add comment field to subevents (Z#23148472)
* Review fix
2024-04-22 12:56:29 +02:00
Raphael Michel
a3139944f6
Send notifications about login with new client or country ( #4032 )
...
* Send notifications about login with new client or country
* Rebase migration
* Remove immediately
* Fix isort
* Text update
2024-04-03 11:19:20 +02:00
Raphael Michel
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
Raphael Michel
4afb7a4976
Allow admins to generate emergency 2FA tokens ( #4035 )
...
* Allow admins to generate emergency 2FA tokens
* Update src/pretix/control/views/users.py
Co-authored-by: Richard Schreiber <schreiber@rami.io >
---------
Co-authored-by: Richard Schreiber <schreiber@rami.io >
2024-04-03 10:15:17 +02:00
Raphael Michel
a233b92f6f
Add disable date of waiting list to event timeline ( #4036 )
2024-04-02 17:15:41 +02:00
Raphael Michel
4ea4189e6d
Allow team admins to require two-factor authentication ( #4034 )
...
* Allow team admins to require two-factor authentication
* Add API tests
* Improve logic
* ADd button tooltip
2024-04-02 17:15:16 +02:00
Raphael Michel
f3f42a8a42
Login: Add logging for incorrect JS hostnames
2024-04-02 11:34:43 +02:00
Raphael Michel
fb49046ac1
Log and count user logins ( #4020 )
...
* Log and count user logins
* Allow metrics without label
---------
Co-authored-by: Mira Weller <weller@rami.io >
2024-03-28 17:18:51 +01:00
Raphael Michel
f532853021
Memberships: Prefer valid_from over event date for .is_valid() ( #4003 )
...
* Memberships: Prefer valid_from over event date for .is_valid()
* Fix tests
* Add parameter description
* Use reasonable default for requested_valid_from if membership starts in the future
* Set datetimepicker viewDate to closest allowed date
* Keep current value on going back to QuestionsStep
* Fix min_date/max_date in SplitDateTimePickerWidget
* Remove unused import
* Update src/pretix/base/models/memberships.py
Co-authored-by: Mira <weller@rami.io >
* Respect variations
---------
Co-authored-by: Mira Weller <weller@rami.io >
2024-03-27 12:11:20 +01:00
Martin Gross
d67f5c650c
Event-specific fonts and Web-Embedded Fonts (Z#23130701) ( #3893 )
2024-03-26 09:55:08 +01:00
Raphael Michel
273c1ae0a6
Waiting list: Allow to set auto-disable date (Z#23141338) ( #4004 )
...
* Waiting list: Allow to set auto-disable date (Z#23141338)
* ADd warning on non-esries events
2024-03-22 11:17:02 +01:00
Raphael Michel
2d8fba7d7c
Treat partially paid expired orders as overpaid orders (Z#23147757) ( #3990 )
...
* Treat partially paid expired orders as overpaid orders (Z#23147757)
* Use is_overpaid from annotate_overpayments in OrderFilterForm
* Revert change to pending sum
* Show warning on order page
---------
Co-authored-by: Mira Weller <weller@rami.io >
2024-03-22 10:17:51 +01:00
Raphael Michel
ad0d3f5469
PDF editor: Minor UX adjustments
2024-03-14 12:34:21 +01:00
Mira
6e6b75d55e
Don't double file extension in clean_filename ( #3942 )
...
* Don't double file extension in clean_filename
* Don't use display_name as ClearableBasenameFileInput.FakeFile.name
Reason: it's used as the thumbnail source and therefore needs to be a valid file name and not some display name
2024-03-01 09:58:17 +01:00
Raphael Michel
f9d78eaf1a
CachedFileField: Do not store file that does not pass validation
2024-02-21 14:32:23 +01:00
Mira Weller
2d5d27e950
forms: fix image file upload in CachedFileField
2024-02-21 14:32:23 +01:00
Mira Weller
c6fa19d771
forms: fix bound data retrieval of CachedFile
...
when re-submitting a form a second time, the cached file got lost
2024-02-21 14:32:23 +01:00
Mira Weller
3129253eef
forms: fix file type validation on CachedFileInput
2024-02-21 14:32:23 +01:00
Raphael Michel
75b93eebc5
Order change form: Show attendee names
2024-02-15 14:22:48 +01:00
Raphael Michel
93eb041acc
Quota item selection: Strike disabled items in select2
2024-02-14 16:38:53 +01:00
Raphael Michel
63894ca3da
Update django-bootstrap3 requirement from ==23.1.* to ==23.6 ( #3894 )
...
* Update django-bootstrap3 requirement from ==23.1.* to ==23.6
Removing our previous workarounds
* Fix import
2024-02-14 14:35:45 +01:00
Raphael Michel
57738f19bf
Update webauthn requirement from ==0.4.* to ==2.0.* ( #3880 )
...
* Get rid of unmaintained dependency python-u2flib-server
* Update webauthn requirement from ==0.4.* to ==2.0.*
* Fix tests
* Update src/pretix/control/views/auth.py
Co-authored-by: Richard Schreiber <schreiber@rami.io >
* Update src/pretix/control/views/auth.py
Co-authored-by: Richard Schreiber <schreiber@rami.io >
* Update src/pretix/control/views/user.py
Co-authored-by: Richard Schreiber <schreiber@rami.io >
* Update src/pretix/control/views/user.py
Co-authored-by: Richard Schreiber <schreiber@rami.io >
* Update src/pretix/control/views/user.py
Co-authored-by: Richard Schreiber <schreiber@rami.io >
---------
Co-authored-by: Richard Schreiber <schreiber@rami.io >
2024-02-14 13:27:24 +01:00
Richard Schreiber
d5f9beef69
PDF-Editor: improve grouping of object attribute inputs ( #3881 )
2024-02-13 22:26:30 +01:00
Phin Wolkwitz
e261ce7554
Fix key error on copy_from (PRETIXEU-9NR) ( #3868 )
2024-02-08 17:34:24 +01:00
Raphael Michel
7cae0ceab8
Fix migration of old hide_without_voucher products
2024-02-08 13:08:13 +01:00
Phin Wolkwitz
39f9329207
Quota form: Change item selection field per context ( #3839 )
...
* Change item checkbox select to multiselect widget
* Make item selection widget dependent on count
* Make item selection widget dependent on variable
* Adjust widget choices
* Fix widget choices
* Fix item variation key errors
* Simplify code
* Fix classname
* Improve argument name
* Fix widget name
2024-02-08 09:33:39 +01:00