mirror of
https://github.com/pretix/pretix.git
synced 2026-08-11 10:57:00 +00:00
Move timemachine to pretix.base.middleware
This commit is contained in:
@@ -33,6 +33,7 @@
|
||||
# License for the specific language governing permissions and limitations under the License.
|
||||
|
||||
import threading
|
||||
|
||||
from dateutil.parser import parse
|
||||
from django.utils.timezone import now
|
||||
|
||||
@@ -64,4 +65,3 @@ class TimeMachineMiddleware:
|
||||
|
||||
def time_machine_now():
|
||||
return getattr(TimeMachineMiddleware.tls, 'now_dt', None) or now()
|
||||
|
||||
@@ -64,6 +64,7 @@ from django.utils.translation import gettext, gettext_lazy as _
|
||||
from django_scopes import ScopedManager, scopes_disabled
|
||||
from i18nfield.fields import I18nCharField, I18nTextField
|
||||
|
||||
from pretix.base.middleware.timemachine import time_machine_now
|
||||
from pretix.base.models.base import LoggedModel
|
||||
from pretix.base.models.fields import MultiStringField
|
||||
from pretix.base.reldate import RelativeDateWrapper
|
||||
@@ -76,7 +77,6 @@ from pretix.helpers.thumb import get_thumbnail
|
||||
|
||||
from ..settings import settings_hierarkey
|
||||
from .organizer import Organizer, Team
|
||||
from ...presale.timemachine import time_machine_now
|
||||
|
||||
logger = logging.getLogger(__name__)
|
||||
|
||||
|
||||
@@ -61,6 +61,7 @@ from django_countries.fields import Country
|
||||
from django_scopes import ScopedManager
|
||||
from i18nfield.fields import I18nCharField, I18nTextField
|
||||
|
||||
from pretix.base.middleware.timemachine import time_machine_now
|
||||
from pretix.base.models import fields
|
||||
from pretix.base.models.base import LoggedModel
|
||||
from pretix.base.models.fields import MultiStringField
|
||||
@@ -69,7 +70,6 @@ from pretix.base.models.tax import TaxedPrice
|
||||
from ...helpers.images import ImageSizeValidator
|
||||
from ..media import MEDIA_TYPES
|
||||
from .event import Event, SubEvent
|
||||
from pretix.presale.timemachine import time_machine_now
|
||||
|
||||
|
||||
class ItemCategory(LoggedModel):
|
||||
|
||||
@@ -76,6 +76,7 @@ from pretix.base.banlist import banned
|
||||
from pretix.base.decimal import round_decimal
|
||||
from pretix.base.email import get_email_context
|
||||
from pretix.base.i18n import language
|
||||
from pretix.base.middleware.timemachine import time_machine_now
|
||||
from pretix.base.models import Customer, User
|
||||
from pretix.base.reldate import RelativeDateWrapper
|
||||
from pretix.base.settings import PERSON_NAME_SCHEMES
|
||||
@@ -85,7 +86,6 @@ from ...helpers import OF_SELF
|
||||
from ...helpers.countries import CachedCountries, FastCountryField
|
||||
from ...helpers.format import format_map
|
||||
from ...helpers.names import build_name
|
||||
from ...presale.timemachine import time_machine_now
|
||||
from ...testutils.middleware import debugflags_var
|
||||
from ._transactions import (
|
||||
_fail, _transactions_mark_order_clean, _transactions_mark_order_dirty,
|
||||
|
||||
@@ -25,15 +25,14 @@ from typing import List, Optional
|
||||
from dateutil.relativedelta import relativedelta
|
||||
from django.core.exceptions import ValidationError
|
||||
from django.utils.formats import date_format
|
||||
from django.utils.timezone import now
|
||||
from django.utils.translation import gettext_lazy as _
|
||||
|
||||
from pretix.base.middleware.timemachine import time_machine_now
|
||||
from pretix.base.models import (
|
||||
AbstractPosition, CartPosition, Customer, Event, Item, Membership, Order,
|
||||
OrderPosition, SubEvent,
|
||||
)
|
||||
from pretix.helpers import OF_SELF
|
||||
from pretix.presale.timemachine import time_machine_now
|
||||
|
||||
|
||||
def membership_validity(item: Item, subevent: Optional[SubEvent], event: Event):
|
||||
|
||||
@@ -66,6 +66,7 @@ from pretix.base.channels import get_all_sales_channels
|
||||
from pretix.base.email import get_email_context
|
||||
from pretix.base.i18n import get_language_without_region, language
|
||||
from pretix.base.media import MEDIA_TYPES
|
||||
from pretix.base.middleware.timemachine import time_machine_now
|
||||
from pretix.base.models import (
|
||||
CartPosition, Device, Event, GiftCard, Item, ItemVariation, Membership,
|
||||
Order, OrderPayment, OrderPosition, Quota, Seat, SeatCategoryMapping, User,
|
||||
@@ -106,7 +107,6 @@ from pretix.celery_app import app
|
||||
from pretix.helpers import OF_SELF
|
||||
from pretix.helpers.models import modelcopy
|
||||
from pretix.helpers.periodic import minimum_interval
|
||||
from pretix.presale.timemachine import time_machine_now
|
||||
from pretix.testutils.middleware import debugflags_var
|
||||
|
||||
|
||||
|
||||
@@ -65,7 +65,7 @@ from django.shortcuts import get_object_or_404, redirect
|
||||
from django.urls import reverse
|
||||
from django.utils.functional import cached_property
|
||||
from django.utils.http import url_has_allowed_host_and_scheme
|
||||
from django.utils.timezone import now, get_current_timezone
|
||||
from django.utils.timezone import get_current_timezone, now
|
||||
from django.utils.translation import gettext, gettext_lazy as _, gettext_noop
|
||||
from django.views.generic import FormView, ListView
|
||||
from django.views.generic.base import TemplateView, View
|
||||
@@ -93,11 +93,13 @@ from pretix.control.permissions import EventPermissionRequiredMixin
|
||||
from pretix.control.views.mailsetup import MailSettingsSetupView
|
||||
from pretix.control.views.user import RecentAuthenticationRequiredMixin
|
||||
from pretix.helpers.database import rolledback_transaction
|
||||
from pretix.multidomain.urlreverse import build_absolute_uri, get_event_domain, eventreverse
|
||||
from pretix.multidomain.urlreverse import (
|
||||
build_absolute_uri, eventreverse, get_event_domain,
|
||||
)
|
||||
from pretix.plugins.stripe.payment import StripeSettingsHolder
|
||||
from pretix.presale.style import regenerate_css
|
||||
from ...base.forms.widgets import SplitDateTimePickerWidget
|
||||
|
||||
from ...base.forms.widgets import SplitDateTimePickerWidget
|
||||
from ...base.i18n import language
|
||||
from ...base.models.items import (
|
||||
Item, ItemCategory, ItemMetaProperty, Question, Quota,
|
||||
@@ -969,7 +971,10 @@ class EventLive(EventPermissionRequiredMixin, TemplateView):
|
||||
super().setup(request, *args, **kwargs)
|
||||
self.timemachine_form = TimemachineForm(
|
||||
data=request.method == 'POST' and request.POST or None,
|
||||
initial={'now_dt':parser.parse(request.session.get('timemachine_now_dt', None))} if request.session.get('timemachine_now_dt', None) else {}
|
||||
initial=(
|
||||
{'now_dt': parser.parse(request.session.get('timemachine_now_dt', None))}
|
||||
if request.session.get('timemachine_now_dt', None) else {}
|
||||
)
|
||||
)
|
||||
|
||||
def get_context_data(self, **kwargs):
|
||||
|
||||
@@ -79,4 +79,3 @@ class EventMiddleware:
|
||||
response = response.render()
|
||||
|
||||
return response
|
||||
|
||||
|
||||
@@ -454,7 +454,7 @@ MIDDLEWARE = [
|
||||
'pretix.base.middleware.LocaleMiddleware',
|
||||
'pretix.base.middleware.SecurityMiddleware',
|
||||
'pretix.presale.middleware.EventMiddleware',
|
||||
'pretix.presale.timemachine.TimeMachineMiddleware',
|
||||
'pretix.base.middleware.timemachine.TimeMachineMiddleware',
|
||||
'pretix.api.middleware.ApiScopeMiddleware',
|
||||
]
|
||||
|
||||
|
||||
Reference in New Issue
Block a user