Beispiel #1
0
def cart_add(pet_id):
    cart = get_cart()
    pet = find_pet(pet_id)
    cart.append(pet)
    new_cart = {'pets_in_cart': cart}
    save_cart(new_cart)
    return redirect(url_for('cart'))
Beispiel #2
0
def add_pet_to_cart(pet_id):
    cart = get_cart()
    pet = find_pet(pet_id)
    if pet is not None:
        cart['pets'].append(pet)
        save_cart(cart)
    return redirect(url_for('show_cart'))
Beispiel #3
0
def add_to_cart(id):
    pet = find_pet(id)
    cart = get_cart()
    if pet is not None:
        cart.append(pet)
    save_cart(cart)
    return redirect(url_for("show_cart"))
Beispiel #4
0
def add_pet(pet_id):
    pet = find_pet(pet_id)
    cart = get_cart()
    cart.append(pet)
    new_cart = {"pets_in_cart": cart}
    save_cart(new_cart)
    return redirect(url_for('cart'))
Beispiel #5
0
def checkout(request):
    postdata = request.POST.copy()
    form = DefaultOrderForm(postdata or None)
    order = cart.get_cart(request)

    if form.is_valid() and order.goods > 0:
        contact = form.save(commit=False)
        contact.order = order
        contact.save()
        order.status = 2
        order.save()
        return HttpResponseRedirect(reverse('cart:cart_confirm'))

    else:
        return HttpResponseRedirect(reverse('cart:show_cart'))
Beispiel #6
0
def show_cart():
    cart = get_cart()
    total = get_cart_total(cart)
    return render_template('cart.html', cart=cart, total=total)
Beispiel #7
0
def empty_cart():
    cart = get_cart()
    cart.clear()
    new_cart = {'pets_in_cart': cart}
    save_cart(new_cart)
    return redirect(url_for('cart'))
Beispiel #8
0
def show_cart():
    cart = get_cart()
    return render_template('cart.html', cart=cart)
Beispiel #9
0
def cart_view(request, template_name="cart/cart.html"):
    """Представление для отображения корзины"""

    postdata = request.POST.copy()

    if request.method == 'POST':

        if postdata.has_key('add'):
            cart.add_to_cart(request)
            order = cart.get_cart(request)
            # res = {'order': order, }
            # html = render_to_string('cart/summary.html', res, context_instance=RequestContext(request))
            # return JsonResponse({
            #     'success': True,
            #     'action_add': True,
            #     'panel_html': html,
            # })
        if postdata.has_key('remove'):
            cart.remove_from_cart(request)

        if postdata.has_key('update'):
            cart.update_cart(request)

        if postdata.has_key('update') or postdata.has_key('remove') or postdata.has_key('add'):
            order = cart.get_cart(request)
            formset = OrderFormset(instance=order)
            res = {
                'order_form': DefaultOrderForm(request.POST),
                'formset': formset,
                'order': order,
                'keep': BASKET_OPTIONS_USE_KEEP,
                'delete': True,
            }
            html = render_to_string('cart/cart_table.html', res, context_instance=RequestContext(request))
            panel_html = render_to_string('cart/summary.html', res, context_instance=RequestContext(request))
            return JsonResponse({
                'success': True,
                # 'action_remove': True,
                'html': html,
                'panel_html': panel_html,
            })

        # if postdata.has_key('checkout'):
        #     checkout_url = checkout.get_checkout_url(request)
        #     return HttpResponseRedirect(checkout_url)
    # Получаем список всех товаров в корзине из cookies
    #cart_item_count = cart.cart_item_count(request)
    # cart_items = cart.get_cart_items(request)
    # cart_subtotal = cart.cart_subtotal(request)
    # return render_to_response(template_name, locals(),
    #                           context_instance=RequestContext(request))

    form = DefaultOrderForm(postdata or None)
    order = cart.get_cart(request)

    if form.is_valid() and order.goods > 0:
        contact = form.save(commit=False)
        contact.order = order
        contact.save()

        remote_address = request.META.get('REMOTE_ADDR')
        order.ip_address=remote_address
        order.status = 2
        order.save()

        return HttpResponseRedirect(reverse('cart:cart_confirm'))

    # else:
    #     return HttpResponseRedirect(reverse('cart:show_cart'))

    # order = cart.get_cart(request)
    formset = OrderFormset(instance=order)
    # form = DefaultOrderForm(postdata or None)
    return {
        'order_form': form,
        'formset': formset,
        'order': order,
        'keep': BASKET_OPTIONS_USE_KEEP,
        'delete': True,
    }