def cartAdd(request, product_id): cart = requestCurCart(request) try: product = Product.objects.get(id=product_id,isActive=True) amount = 1 if request.method == 'POST': form = CartAddForm(request.POST) if form.is_valid(): amount = form.cleaned_data['amount'] cartproduct = CartProduct.objects.get(cart=cart,product=product) if product.max_order_amount == -1 or (cartproduct.amount + amount) < product.max_order_amount: cartproduct.amount += amount else: cartproduct.amount = product.max_order_amount cartproduct.save() msg = 'Das Produkt ist auf %s Bestellung(en) limitiert.' % product.max_order_amount return render_to_response('error.html', { 'errormsg': msg, 'caption' : 'Hinweis', },context_instance=RequestContext(request)) except CartProduct.DoesNotExist: cartproduct = CartProduct() cartproduct.cart = cart cartproduct.product = product cartproduct.amount = amount except (TypeError, ValueError, KeyError): return HttpResponseRedirect(request.META['HTTP_REFERER']) cartproduct.save() context = RequestContext(request, { 'product':cartproduct.product, }) return render_to_response('shop/cart_added.html', context)