luelista and Richard Schreiber
f8cc31b120
Order-level questions ( #6471 )
...
* New CheckoutSession model, created and deleted throught cart lifetime but only used for order-level question answers so far
* Order-level QuestionAnswers (relations to CheckoutSession / Order)
* New container_type field on Question model to specify whether Question belongs to order or orderposition
* Order-level questions are currently experimental, UI is hidden behind feature flag
---------
Co-authored-by: Richard Schreiber <schreiber@pretix.eu >
2026-08-14 14:56:45 +02:00
5f2264daeb
User email verifications: Add rate limiting (Z#23232834) ( #6219 )
...
* User email verifications: Add rate limiting (Z#23232834)
Also, refactor rate limiting into a central utility
* Make ip block work in dev
* Review notes
* Update src/pretix/base/forms/user.py
Co-authored-by: luelista <weller@rami.io >
* Apply suggestions from code review
Co-authored-by: luelista <mira@teamwiki.de >
* Add rate limit reset
---------
Co-authored-by: luelista <weller@rami.io >
Co-authored-by: luelista <mira@teamwiki.de >
2026-07-17 18:35:03 +02:00
Raphael Michel
5db1a5b8af
Rename confusingly named helpers for URL generation ( #6280 )
...
* Rename confusingly named helpers for URL generation
* new name
* fix old call
* Revert "new name"
This reverts commit a6e9a488b62b9bc7c2800c402e432765a838cbc6.
* New name
2026-06-22 09:11:55 +02:00
Martin Gross
7e457f7430
Set max_length to 70 but for all name fields together and not only every single one.
2026-04-21 10:45:00 +02:00
Martin Gross
1b88a84a83
Move validation into form field.
2026-04-21 10:45:00 +02:00
Martin Gross
447cffa7a8
Customer Accounts: Limit length; reject URLs in name
2026-04-21 10:45:00 +02:00
Raphael Michel
d0d76ffddc
Delete unused code ( #6026 )
...
* Delete unused code
* Delete template
2026-04-20 16:56:50 +02:00
pajowu
e80b4b560b
customer login: open pw reset link in new tab (Z#23231027) ( #6074 )
...
This way customers don't have to break their checkout flow and the link works in a widgets iframe
2026-04-10 11:44:36 +02:00
Richard Schreiber
8bd0665f37
Fix password-manager username not saved on customer account creation ( #6043 )
...
* Fix password-manager username not saved on customer account creation
* Fix tests/make email not required
2026-04-01 12:00:03 +02:00
Kara Engelhardt
c7437336b4
Add length help text to customer password forms
...
Also cleans up dead code, as `validate_password` always returns None or raises a ValidationError.
2026-03-30 11:25:14 +02:00
Raphael Michel
177a7d07fc
Update license header ( #5540 )
2025-10-10 15:32:46 +02:00
Richard Schreiber
74cea09f6c
[A11y] add missing autcomplete ( #5236 )
2025-06-11 10:47:17 +02:00
Richard Schreiber
ab72abea0a
[A11y] add autocomplete to customer forms email input ( #5214 )
2025-06-10 12:54:25 +02:00
Richard Schreiber
3a48279b22
[A11y] add group labelling to single input name-widget ( #5195 )
2025-06-02 15:53:35 +02:00
Martin Gross
5659cc0cf8
Fix spelling/apostrophe
2025-05-22 10:37:44 +02:00
Richard Schreiber
6b331888e9
[A11y] Fix missing errors on empty inputs on checkout-login ( #5104 )
2025-05-15 13:19:25 +02:00
Richard Schreiber
2b735bec0b
[A11y] Improve customer account forms ( #5034 )
2025-05-09 08:36:09 +02:00
Richard Schreiber
f09e9590a8
[A11y] make text "required" visible in labels ( #5042 )
2025-05-05 11:40:35 +02:00
Richard Schreiber
ca12cbb69e
Fix checkbox-labels always containing text "required" although not being required
2025-04-25 12:17:33 +02:00
Richard Schreiber
a252c69988
[A11y] Fix tab order on customer step (remove autofocus on email-field)
2025-04-23 18:07:32 +02:00
Raphael Michel and Mira
53f129d5d3
Add codification of tax rates ( #4372 )
...
* draft
* .
* Rebase migration
* Update src/pretix/base/models/tax.py
Co-authored-by: Mira <weller@rami.io >
* Test, isort, flake, migration rebase
* carry data & API
* Fix failing tests
* docs fixes
* Improve validation
* Tests
* More fixes
---------
Co-authored-by: Mira <weller@rami.io >
2024-12-13 12:04:38 +01:00
Raphael Michel
61cb2e15cf
Fix validation crash of InvoiceNameForm
2024-11-29 20:08:36 +01:00
Raphael Michel
03d3c389da
Fix #1674 -- Change spelling of e-mail to email ( #4636 )
...
* Fix #1674 -- Change spelling of e-mail to email
* Conflicts and word list
* Add MobilePay to wordlist
* fix usage in tests
2024-11-18 17:21:29 +01:00
Raphael Michel and Richard Schreiber
81d7045b31
Public event filter: Make "all" option clearer (Z#23169843) ( #4585 )
...
* Public event filter: Make "all" option clearer
* Fix widget tests
* Update src/tests/presale/test_widget.py
Co-authored-by: Richard Schreiber <schreiber@rami.io >
---------
Co-authored-by: Richard Schreiber <schreiber@rami.io >
2024-10-29 17:31:51 +01:00
Raphael Michel and Mira
40c8d014df
Waiting list: Redirect to shop if no products can be awaited (Z#23168172) ( #4517 )
...
* Waiting list: Redirect to shop if no products can be awaited (Z#23168172)
* Update src/pretix/presale/views/waiting.py
Co-authored-by: Mira <weller@rami.io >
---------
Co-authored-by: Mira <weller@rami.io >
2024-10-14 09:26:06 +02:00
Raphael Michel
32d6ded003
Stricten password validation to match PCI DSS requirements ( #4467 )
...
* Stricten password validation to match PCI DSS requirements
* Review fix
* Fix a file header
2024-09-17 13:29:17 +02:00
Richard Schreiber
c91eb2e20d
Set cursor to not-allowed on labels for disabled checkboxes
2024-07-18 11:54:43 +02:00
Raphael Michel and Martin Gross
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 and Mira
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
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
7a8b3d08df
Waiting list: Improve input parameter validation
2023-12-08 15:38:52 +01:00
Raphael Michel
d7aa94d6ae
Add public filters based on meta data ( #3673 )
...
* Add public filters based on meta data
* Fix licenseheaders
* ignore empty values
* Fix tests
* Full non-widget implementation
* Widget support
* Add a few tests
* Allow to reorder properties
* Fix isort
* Allow to opt-out for specific events
* Fix name clash between new and old field to make migration feasible
2023-11-10 12:10:01 +01:00
Raphael Michel
bd32b33ba9
Bump Django to 4.1.* ( #2989 )
2023-06-05 09:56:31 +02:00
Raphael Michel
84180f5af4
Fix address validation for attendee data
2023-05-25 13:34:55 +02:00
Raphael Michel
11e3bd4d39
Add support for GeoIP data ( #3230 )
2023-04-17 09:50:46 +02:00
Raphael Michel
61ae434ab1
Allow attendees to change selected add-ons of same price ( #3150 )
2023-03-08 16:01:59 +01:00
Raphael Michel
79c7b53efa
Self-service order change: Enforce hidden variations
2023-02-22 16:38:34 +01:00
Raphael Michel and Richard Schreiber
04df1c2032
Introduce country-specific address validation ( #2945 )
...
Co-authored-by: Richard Schreiber <schreiber@rami.io >
2022-12-05 12:42:46 +01:00
Raphael Michel
857f56c286
Bump flake8 to 5.0
2022-09-20 10:37:57 +02:00
Raphael Michel
7f5518dbf6
OpenID Connect RP support for customer accounts
2022-09-19 18:31:07 +02:00
Michael Stapelberg
713b13b027
Checkout: fix membership being selected when only one is available
2022-07-28 11:27:51 +02:00
Michael Stapelberg and Raphael Michel
0d407ce36f
API: Allow to send activation email when creating customers ( #2729 )
...
Co-authored-by: Raphael Michel <michel@rami.io >
2022-07-25 12:16:48 +02:00
Raphael Michel
157484b42a
Revert accidental commit "Make new functionality optional"
...
This reverts commit af7d32462873fbbfc3a44a06424bd3c941c3b5f2.
2022-07-25 11:53:23 +02:00
Raphael Michel
839585a3a9
Make new functionality optional
2022-07-25 11:52:32 +02:00
Raphael Michel
e7996c693a
Fix phone number not being saved in customer registration form
2022-03-27 15:09:53 +02:00
Raphael Michel
a66fdc5084
[SECURITY] Fix stored XSS in help texts
2022-02-28 16:06:47 +01:00
Raphael Michel
2fcab70e3b
Add very simple CAPTCHA to standalone customer registration form
2022-02-14 15:37:35 +01:00
Martin Gross
c65883b328
Presale Order Change: Display public name of item instead of internal
2022-02-04 16:41:04 +01:00
Raphael Michel
4262bce2b5
Limit maximum length of passwords to 4096 characters
2022-01-25 17:24:48 +01:00
Richard Schreiber
768bb8c106
Add phone number to customer profile (Z#178346) ( #2414 )
2022-01-18 11:38:32 +01:00