def requestCurCart(request): cart = None user = None try: #gibt es schon einen warenkorb? cartid = request.session['cart_id'] cart = Cart.objects.get(id=cartid,isOrdered=False) if request.user.is_authenticated(): #soll der warenkorb einem benutzer gehoeren? if not cart.user: # warenkorb hat keine besitzer (vorm login der fall) cart.user = request.user cart.save() if cart.user == request.user: #warenkorb gehoert der email-addy -> return return cart elif not cart.user: return cart # warenkorb gehoert niemandem except (KeyError, Cart.DoesNotExist): # es gibt keinen warenkorb if request.user.is_authenticated(): user = request.user try: cart = Cart.objects.get(user=user,isActive=True,isOrdered=False) request.session['cart_id'] = cart.id return cart except: pass cart = Cart() # warenkorb erstellen if user: #soll korb einem benutzer gehoeren? cart.user = user cart.isActive = True cart.save() request.session['cart_id'] = cart.id # id in sesison speichern return cart