forked from CGM_Public/pretix_original
Customer accounts & Memberships (#2024)
This commit is contained in:
@@ -46,7 +46,7 @@ from django_scopes import scopes_disabled
|
||||
|
||||
from pretix.base.i18n import language
|
||||
from pretix.base.models import (
|
||||
CartPosition, InvoiceAddress, ItemAddOn, OrderPosition, Question,
|
||||
CartPosition, Customer, InvoiceAddress, ItemAddOn, OrderPosition, Question,
|
||||
QuestionAnswer, QuestionOption,
|
||||
)
|
||||
from pretix.base.services.cart import get_fees
|
||||
@@ -91,6 +91,14 @@ class CartMixin:
|
||||
from pretix.presale.views.cart import cart_session
|
||||
return cart_session(self.request)
|
||||
|
||||
@cached_property
|
||||
def cart_customer(self):
|
||||
if self.cart_session.get('customer_mode', 'guest') == 'login':
|
||||
try:
|
||||
return self.request.organizer.customers.get(pk=self.cart_session.get('customer', -1))
|
||||
except Customer.DoesNotExist:
|
||||
return
|
||||
|
||||
@cached_property
|
||||
def invoice_address(self):
|
||||
return cached_invoice_address(self.request)
|
||||
@@ -273,7 +281,7 @@ def get_cart(request):
|
||||
'item__category__position', 'item__category_id', 'item__position', 'item__name', 'variation__value'
|
||||
).select_related(
|
||||
'item', 'variation', 'subevent', 'subevent__event', 'subevent__event__organizer',
|
||||
'item__tax_rule', 'addon_to'
|
||||
'item__tax_rule', 'addon_to', 'used_membership', 'used_membership__membership_type'
|
||||
).select_related(
|
||||
'addon_to'
|
||||
).prefetch_related(
|
||||
|
||||
Reference in New Issue
Block a user