def delete_cart(request, id): cart = Cart(request) cart.delete(id) if request.META.get('HTTP_X_REQUESTED_WITH', '') == 'XMLHttpRequest': return HttpResponse(cart.serialize()) else: return redirect(reverse('show_cart'))
def test_bug_a_delete(self): c = Cart() c.delete(0) #def test_save_to_session(self): #c = Cart((1,1,1)) #c.save(self.req) #print self.req.session[settings.CART_SESSSION_NAME]
def test_cart_test(self): c = Cart() c.add((1,1,1)) self.assertEqual(c[0][0], 1) c.append((2,2,2)) self.assertEqual(c[1][0], 2) self.assertEqual(c.total(), 2) self.assertEqual(c.total_items(), 3) c.delete(0) self.assertEqual(c.total(), 1) self.assertEqual(c[0][0], 2) self.assertEqual(c.total_items(), 2)
def test_cart_test(self): c = Cart() c.add((1, 1, 1)) self.assertEqual(c[0][0], 1) c.append((2, 2, 2)) self.assertEqual(c[1][0], 2) self.assertEqual(c.total(), 2) self.assertEqual(c.total_items(), 3) c.delete(0) self.assertEqual(c.total(), 1) self.assertEqual(c[0][0], 2) self.assertEqual(c.total_items(), 2)
def update_cart(request): cart = Cart(request) product = int(request.POST.get('product', '0')) amount = int(request.POST.get('amount', '0')) i = int(request.POST.get('i', '0')) data = None if product > 0 and amount >= 0: if amount == 0: cart.delete(product) else: cart.update({'product': product, 'amount': amount}) return HttpResponse(cart.serialize()) else: raise Http404
def cart_list(request, tmpl, action=None, product_id=None): cart = Cart(request) msg_ok = msg_err = None if action == 'del': if cart.delete(int(product_id)): msg_ok = _(u"Product successfully removed from cart") else: msg_err = _(u"Error while removing product from cart") elif action == 'add' or action == 'update': statusok = False if len(request.POST)>0: statusok = True for k,v in request.POST.iteritems(): product_id = 0 try: quantity = int(v) except: quantity = 0 if k.startswith('product_'): product_id = int(k[8:]) if action == 'add': statusok = statusok and cart.add(product_id, quantity) else: statusok = statusok and cart.update(product_id, quantity) if k == 'donation': statusok = statusok and quantity >= 0 if quantity >= 0: cart.donation = quantity if statusok: msg_ok = _(u"Product(s) successfully added") if action == 'add' else _(u"Product(s) successfully updated") else: msg_err = _(u"Error while adding product(s)") if action == 'add' else _(u"Error while updating product(s)") elif action == 'invalid': msg_err = _(u"Unable to confirm your order, one (or more) product(s) in your cart exceed the available quantity") elif action == 'uncheckedgcs': msg_err = _(u"You have to read and accept the general terms and conditions of sales in order to confirm your order") cart.save(request) return tmpl, { 'cart': cart, 'msg_err': msg_err, 'msg_ok': msg_ok, 'usegcs': settings.CART_SETTINGS['gcsuse'], 'currency': settings.CURRENCY, 'currency_alt': settings.CURRENCY_ALT, }
def del_cart_item(request, id): cart=Cart(request) cart.delete(id) return get_cart(request)
def test_bug_a_delete(self): c = Cart() c.delete(0)
def manage_cart(request, tmpl, user_id=None, action=None, product_id=None): user = None if user_id: try: user = User.objects.get(id=user_id) except: user = None msg_ok = msg_err = products = cart = None products = None if user: cart = Cart(request, user.id) if request.user.is_staff: products = Article.objects.all().order_by('order') else: products = Article.objects.filter(enabled=True).order_by('order') if action == 'add': product_id = int(request.POST.get('cart_add')) if cart.add(product_id, 1): msg_ok = _(u"Product successfully added to cart") else: msg_err = _(u"Error while adding product to cart") elif action == 'del': if cart.delete(int(product_id)): msg_ok = _(u"Product successfully removed from cart") else: msg_err = _(u"Error while removing product from cart") elif action == 'update': update = True for k,v in request.POST.iteritems(): product_id = 0 try: quantity = int(v) except: quantity = 0 if k.startswith('product_'): product_id = int(k[8:]) update = update and cart.update(product_id, quantity) if update: msg_ok = _(u"Product(s) successfully updated") else: msg_err = _(u"Error while updating product(s)") elif action == 'validate': valid = cart.is_valid() if not valid and request.user.is_staff: valid = request.POST.get('force') == '1' if not valid: msg_err = _(u"Unable to confirm this order, one (or more) product(s) in the cart exceed the available quantity") else: order = Order(user=user, creation_date=date.now()) order.save_confirm(cart) cart.clear() msg_ok = _(u"Order successfully confirmed") cart.save(request) return tmpl, { 'user_obj': user, 'products': products, 'cart': cart, 'msg_err': msg_err, 'msg_ok': msg_ok, 'is_admin': request.user.is_staff, 'currency': settings.CURRENCY, 'currency_alt': settings.CURRENCY_ALT, }