Ejemplo n.º 1
0
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'))
Ejemplo n.º 2
0
Archivo: views.py Proyecto: Sergey-L/v2
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'))
Ejemplo n.º 3
0
    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]
Ejemplo n.º 4
0
 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)
Ejemplo n.º 5
0
 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)
Ejemplo n.º 6
0
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
Ejemplo n.º 7
0
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
Ejemplo n.º 8
0
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,
        }
Ejemplo n.º 9
0
Archivo: views.py Proyecto: chemt/vsad
def del_cart_item(request, id):
    cart=Cart(request)
    cart.delete(id)
    return get_cart(request)
Ejemplo n.º 10
0
 def test_bug_a_delete(self):
     c = Cart()
     c.delete(0)
Ejemplo n.º 11
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,
    }