Commit Graph

47 Commits

Author SHA1 Message Date
Raphael Michel
8f92eb2d2d remove debug statement 2024-12-03 12:40:29 +01:00
Raphael Michel
e99ee91573 Allow to use custom domains for some but not all events (Z#23153875) (#4627)
* Allow to use custom domains for some but not all events

* Update src/pretix/multidomain/urlreverse.py

* Apply suggestions from code review

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

* Logging for domain config changes

---------

Co-authored-by: Mira <weller@rami.io>
2024-12-02 15:58:50 +01:00
Raphael Michel
6cc9529d9a Authentication: Support for fallback secret keys in get_session_auth_hash (#4481)
* Authentication: Support for fallback secret keys in get_session_auth_hash

* Update src/pretix/presale/utils.py

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

---------

Co-authored-by: Richard Schreiber <schreiber@rami.io>
2024-10-07 16:58:37 +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
Mira
49c4cc639f Fix time machine permission via pretix_event_access sessions for staff users (#4160) 2024-05-22 13:13:50 +02:00
Mira
9a807df158 Fix pretix_event_access (custom domain) sessions for staff users (#4158) 2024-05-21 13:26:12 +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
809b971b4f Use custom error layout for shop offline 2024-01-03 11:01:19 +01:00
Raphael Michel
12a898476e Replace redirect() with redirect_to_url() if we don't need Django's resolution 2023-12-08 15:38:50 +01:00
Richard Schreiber
586f42557f Event URLs: Add access-control-allow-origin header for redirects (#3441) 2023-06-29 11:36:50 +02:00
Raphael Michel
6ae5eecf27 Run event_view on org-level plugin views 2023-05-11 14:29:52 +02:00
Raphael Michel
a582db3280 Set stacklevel=2 on DeprecationWarning 2022-12-19 13:53:44 +01:00
Raphael Michel
a4171ef819 OpenID Connect OP support for customer accounts 2022-09-19 18:31:07 +02:00
Raphael Michel
7f5518dbf6 OpenID Connect RP support for customer accounts 2022-09-19 18:31:07 +02:00
Raphael Michel
5210ac3a78 Reduce confusion about customer login with event level domains (#2380) 2021-12-15 16:47:08 +01:00
Raphael Michel
403b8191e4 Upgrade to Django 3.2 (#2056) 2021-05-07 12:00:30 +02:00
Raphael Michel
366395278e Customer login: Fix issue with organizer-level domains 2021-05-07 09:59:35 +02:00
Raphael Michel
8e79eb570e Customer accounts & Memberships (#2024) 2021-05-04 16:56:06 +02:00
Raphael Michel
9f9d047293 Correctly set region on organizer profile page 2021-04-19 17:49:53 +02:00
Raphael Michel
a93287207b pretix Community Edition moves to AGPLv3-based license (#2023) 2021-04-12 10:33:47 +02:00
Raphael Michel
06643232cf Fix #1420 -- Hide "shop not available" from log files 2020-12-19 20:04:48 +01:00
Martin Gross
b3e95f54dd Add option to limit events to specific sales channels (#1867) 2020-12-03 17:10:54 +01:00
Raphael Michel
af23d6e4bf Upgrade to Django 3.0 and other dependencies (#1568)
* Upgrade Django to 3.0 and other dependencies to recent versions

* Fix otp version contsraint

* Remove six dependency

* Resolve some warnings

* Fix failing tests

* Update django-countries

* Resolve all RemovedInDjango31Warnings in test suite

* Run isort

* Fix import

* Update PostgreSQL version on travis
2020-03-23 15:02:20 +01:00
Raphael Michel
7e9c9beace Allow to use a custom domain per event (#1617)
* Drop support for maindomain_urls/subdomain_urls in plugins

* Allow to use a custom domain per event

* Fix bug when manually saving domains

* Fix custom domains in debugging

* Fix middleware

* Fix middleware again, update docs
2020-03-23 13:03:14 +01:00
Martin Gross
2b18621c76 Add flag testmode_supported to sales channels (#1455)
* Add testmode-support-flag to SalesChannels

* Make saleschannels/testmode-warnings even more dangerous!

* Add warning for payment-methods that do support testmode but are being used in a non-testmode order caused by a saleschannel in a testmode-shop.

* Remove redundant testmode_supported-flag for WebshopSalesChannel

* Raise error on API when sales_channel does not support testmode

* Tests

* Fix style issue after merge
2019-10-21 10:07:02 +02:00
Raphael Michel
ccc662228c Force evaluation of template responses in frontend 2019-06-17 22:59:45 +02:00
Raphael Michel
d85ddb5bda Integrate django-scopes (#1319)
* Install django-scopes

* Fix tests.api

* Update tasks and cronjobs

* Fix remaining tests

* Remove unused import

* Fix tests after rebase

* Disable scopes for get_Events_with_any_permission

* Disable scopes for a management command
2019-06-17 10:46:55 +02:00
Raphael Michel
465a5b01b9 Offload more work to database replica 2019-05-05 17:31:08 +02:00
Raphael Michel
a031d72ca9 Widget: Follow redirects 2019-01-22 18:06:56 +01:00
Raphael Michel
b4290384e1 Add sales channels (#1103)
- [x] Data model
- [x] Enforce constraint
- [x] Filter order list
- [x] Set channel on created order
- [x] Products API
- [x] Order API
- [x] Tests
- [x] Filter reports
- [x] Resellers
- [ ] deploy plugins
  - [ ] posbackend
  - [ ] resellers
  - [ ] reports
- [x] Ticketlayouts
- [x] Support in pretixPOS
2018-11-23 15:35:09 +01:00
Raphael Michel
c9d3cf7cac Fix exceptions in previous commit 2018-11-19 11:03:54 +01:00
Raphael Michel
bbdbc94f6e Redirect case-insensitive versions of event/organizer slugs 2018-11-19 10:22:40 +01:00
Raphael Michel
afd766999c Upgrade to Django 2.1 (#710)
* Upgrade to Django 2.0

* more models

* i18n foo

* Update setup.py

* Fix Sentry exception PRETIXEU-JC

* Enforce slug uniqueness

* Import sorting

* Upgrade to Django 2.1

* Travis config

* Try to fix PostgreSQL failure

* Smaller test matrix

* staticfiles→static

* Include request in all authenticate() calls
2018-08-06 12:48:46 +02:00
Raphael Michel
a284e0c2f7 Add auditable superuser mode (#824)
* Remove is_superuser everywhere

* Session handling

* List of sessions, relative timeout

* Absolute timeout

* Optionally pseudo-force audit comments

* Fix failing tests

* Add tests

* Add docs

* Rebsae migration

* Typos

* Fix tests
2018-03-28 14:16:58 +02:00
Raphael Michel
b5bea6fe7a Do not disable core modules' URLs 2017-09-08 17:50:50 +02:00
Raphael Michel
43b5140754 New handling of plugin URLs (#609) 2017-08-29 10:01:50 +03:00
Raphael Michel
c719adf235 Fix typo in method name 2017-05-03 17:11:55 +02:00
Raphael Michel
d08a0bdb00 Refs #39 -- New concept of "teams" (#478)
* New models

* CRUD UI

* UI for adding/removing team members

* Log display for teams

* Fix invitations, move frontend

* Drop old models (incomplete)

* Drop more old stuff

* Drop even more old stuff

* Fix tests

* Fix permission test

* flake8 fix

* Add tests fore the new code

* Rebase migrations
2017-05-03 16:55:37 +02:00
Raphael Michel
e71691d4a5 Allow superusers to access events that are not yet live 2017-01-21 19:10:46 +01:00
Raphael Michel
0998814e69 Improve session inheritation 2017-01-05 12:15:38 +01:00
Raphael Michel
d3f21353ca Allow to access not-yet-live shop on different domain 2017-01-05 12:11:50 +01:00
Tobias Kunze
7a8493cae3 Fix #330 -- Add require_live parameter to event_view decorator (#331)
* Add require_live flag to event_view decorator

Refs #330

* Use new require_live flag in stripe webhook
2016-11-25 14:34:49 +01:00
Raphael Michel
6adcf4bc7c Use more caching in multidomain module 2016-11-08 16:03:06 +01:00
Raphael Michel
3e318d0dcf Django 1.10: User.is_authenticated is now a property 2016-09-27 10:25:20 +02:00
Raphael Michel
ba5d871197 Added process_response URL hook 2016-07-31 13:45:42 +02:00
Raphael Michel
7514b9bab2 Added a signal for processing event requests 2016-07-28 21:02:29 +02:00
Tobias Kunze
310a14a393 Move middleware functionality to utils.py (#154)
This simplifies providing an `event_view` method which works as
decorator for presale/ views (e.g. for plugins), providing passing
requests with event and organizer context if possible, and re-routing or
failing appropriately otherwise.
2016-07-26 10:27:59 +02:00