47 lines
1.3 KiB
Python
47 lines
1.3 KiB
Python
from django.http import HttpResponse, HttpResponseRedirect
|
|
from django.shortcuts import render, get_object_or_404
|
|
from django.urls import reverse
|
|
from django.utils import timezone
|
|
|
|
from mordor.models import Order
|
|
from mordor.forms import OrderForm
|
|
|
|
|
|
def index(req):
|
|
if not req.user.is_authenticated:
|
|
return render(req, "mordor/index.html")
|
|
else:
|
|
return HttpResponseRedirect(reverse("winkel"))
|
|
|
|
|
|
def winkel(req):
|
|
if not req.user.is_authenticated:
|
|
return HttpResponseRedirect(reverse("index"))
|
|
|
|
if req.method == "POST":
|
|
order = Order(user=req.user)
|
|
form = OrderForm(req.POST, instance=order)
|
|
if form.is_valid():
|
|
form.save()
|
|
return HttpResponseRedirect(reverse("orders"))
|
|
else:
|
|
return render(req, "mordor/winkel.html")
|
|
|
|
|
|
def remove_order(request, order_id):
|
|
if request.method != "POST":
|
|
return HttpResponse(status_code=405)
|
|
|
|
order = get_object_or_404(Order, id=order_id)
|
|
order.delete()
|
|
return HttpResponseRedirect(reverse("orders"))
|
|
|
|
|
|
def orders(req):
|
|
if not req.user.is_authenticated:
|
|
return HttpResponseRedirect(reverse("index"))
|
|
|
|
user_orders = Order.objects.filter(user=req.user)
|
|
|
|
return render(req, "mordor/orders.html", {"orders": user_orders})
|