Esempio n. 1
0
def place_order(request):
    msg = ''
    prodlist = Product.objects.all()
    if request.method == 'POST':
        form = OrderForm(request.POST)
        if form.is_valid():
            order = form.save(commit=False)
            if order.num_units <= order.product.stock:
                var = Product.objects.get(name=order.product)
                newstock = Product.objects.filter(name=var).values_list(
                    'stock', flat=True).get()
                msg = 'Your order has been placed successfully.'
                p = Product()
                p.updateStock(var, newstock, order.num_units)
                order.save()
            else:
                msg = 'We do not have sufficient stock to fill your order.'
            return render(request, 'myapp/order_response.html', {'msg': msg})

    else:
        form = OrderForm()
    return render(request, 'myapp/placeorder.html', {
        'form': form,
        'msg': msg,
        'prodlist': prodlist
    })
Esempio n. 2
0
def place_order(request):

    #TODO: If the user is not the admin, the member will not be asked. 
    # The member will be the logged in user.

    if request.method == 'POST':
        form = OrderForm(request.POST)
        if form.is_valid():
            books = form.cleaned_data['books']
            order = form.save(commit=False)     
            member = order.member
            type = order.order_type
            order.save()
            total_purchase = 0
            if type == 1:       
                for b in books:  
                    member.borrowed_books.add(b)
                member.save()
            else:
                
                for b in books:  
                    order.books.add(b)
                    total_purchase += b.price 
                order.save()
            return render(request, 'myapp/order_response.html', {'books': books, 'order':order, 'total_purchase': total_purchase})
        else:
            return render(request, 'myapp/placeorder.html', {'form':form})

    else:
        form = OrderForm()
        if not request.user.is_superuser:
            form.fields['member'].queryset=Member.objects.filter(user_ptr=request.user)
        return render(request, 'myapp/placeorder.html', {'form':form})
Esempio n. 3
0
def place_order(request):
    msg = ''
    courselist = Course.objects.all()
    if request.method == 'POST':
        form = OrderForm(request.POST)
        if form.is_valid():
            order = form.save(commit=False)
            print(order)
            if order.levels <= order.course.stages:
                form.save()
                msg = 'Your course has been ordered successfully.'
                if float(order.course.price) > 150:
                    order.course.discounted_price = Course.discount(order.course)
                    order.course.save()
                    msg = msg + 'Price for order updated to $' + str(order.course.discounted_price)
            else:
                msg = 'You exceeded the number of levels for this course.'
            return render(request, 'myapp/order_response.html', {'msg': msg})
    else:
        form = OrderForm()
        return render(request, 'myapp/placeorder.html', {'form': form, 'msg': msg, 'courselist': courselist})
Esempio n. 4
0
def place_order(request):
    msg = ''
    prodlist = Product.objects.all()
    if request.method == 'POST':
        form = OrderForm(request.POST)
        if form.is_valid():
            order = form.save(commit=False)
            if order.num_units <= order.product.stock:
                order.save()
                msg = 'Order placed succesfully.'
            else:
                msg = 'We dont have sufficient stock to fill your order.'
            return render(request, 'myapp/order_response.html', {'msg': msg})
    else:
        form = OrderForm()
    return render(request, 'myapp/placeorder.html', {
        'form': form,
        'msg': msg,
        'prodlist': prodlist
    })