Example #1
0
def index(request):
    cart = json.dumps({
        ci.product_id: ci.quantity
        for ci in get_or_create_cart(request).items.all()
    })
    values = {'cart': cart}
    return TemplateResponse(request, 'store/index.html', values)
Example #2
0
def start_checkout(request):
    cart = get_or_create_cart(request, save=True)
    cart.update(request)
    try:
        order = Order.objects.filter(cart_pk=cart.pk, status__lt=Order.PAID)[0]
    except IndexError:
        order = Order.objects.create_from_cart(cart, request)
    order.status = Order.CONFIRMED
    order.save()
    out = {'order_pk': order.pk, '_errors': []}
    for item in cart.items.all():
        if item.product.in_stock is None:
            continue
        if item.product.in_stock < item.quantity:
            s = "Sorry, we only have %s in stock of the following item: %s"
            out['_errors'].append(s % (item.product.in_stock, item.product))
    return HttpResponse(json.dumps(out))
Example #3
0
def start_checkout(request):
  cart = get_or_create_cart(request,save=True)
  cart.update(request)
  try:
    order = Order.objects.filter(cart_pk=cart.pk,status__lt=Order.PAID)[0]
  except IndexError:
    order = Order.objects.create_from_cart(cart,request)
  order.status = Order.CONFIRMED
  order.save()
  out = {
    'order_pk': order.pk,
    '_errors': []
  }
  for item in cart.items.all():
    if item.product.in_stock is None:
      continue
    if item.product.in_stock < item.quantity:
      s = "Sorry, we only have %s in stock of the following item: %s"
      out['_errors'].append(s%(item.product.in_stock,item.product))
  return HttpResponse(json.dumps(out))
Example #4
0
def index(request):
  cart = json.dumps({ci.product_id: ci.quantity for ci in get_or_create_cart(request).items.all()})
  values = {
    'cart': cart
  }
  return TemplateResponse(request,'store/index.html',values)