fix: reformatted with black
This commit is contained in:
@@ -12,9 +12,8 @@ class LoginRequiredMiddleware:
|
||||
]
|
||||
|
||||
def __call__(self, request):
|
||||
if (
|
||||
not request.user.is_authenticated and
|
||||
not any(request.path.startswith(str(url)) for url in self.login_exempt_urls)
|
||||
if not request.user.is_authenticated and not any(
|
||||
request.path.startswith(str(url)) for url in self.login_exempt_urls
|
||||
):
|
||||
return HttpResponseRedirect(reverse_lazy("login"))
|
||||
return self.get_response(request)
|
||||
return self.get_response(request)
|
||||
|
||||
@@ -48,7 +48,7 @@ MIDDLEWARE = [
|
||||
"django.contrib.auth.middleware.AuthenticationMiddleware",
|
||||
"django.contrib.messages.middleware.MessageMiddleware",
|
||||
"django.middleware.clickjacking.XFrameOptionsMiddleware",
|
||||
"korrekturmanagementsystem.middleware.LoginRequiredMiddleware"
|
||||
"korrekturmanagementsystem.middleware.LoginRequiredMiddleware",
|
||||
]
|
||||
|
||||
ROOT_URLCONF = "korrekturmanagementsystem.urls"
|
||||
@@ -127,4 +127,4 @@ STATICFILES_DIRS = [BASE_DIR / "static"]
|
||||
DEFAULT_AUTO_FIELD = "django.db.models.BigAutoField"
|
||||
|
||||
LOGIN_REDIRECT_URL = "/ticketsystem"
|
||||
LOGOUT_REDIRECT_URL = "/accounts/login/"
|
||||
LOGOUT_REDIRECT_URL = "/accounts/login/"
|
||||
|
||||
@@ -21,5 +21,5 @@ from django.urls import include, path
|
||||
urlpatterns = [
|
||||
path("ticketsystem/", include("ticketsystem.urls")),
|
||||
path("admin/", admin.site.urls),
|
||||
path("accounts/", include('django.contrib.auth.urls'))
|
||||
path("accounts/", include("django.contrib.auth.urls")),
|
||||
]
|
||||
|
||||
@@ -6,7 +6,7 @@ from .views import (
|
||||
TicketUpdateView,
|
||||
HomeView,
|
||||
AssignedTicketListView,
|
||||
TicketDetailUpdateView
|
||||
TicketDetailUpdateView,
|
||||
)
|
||||
|
||||
urlpatterns = [
|
||||
@@ -15,7 +15,7 @@ urlpatterns = [
|
||||
# /ticketsystem/tickets
|
||||
path("tickets", TicketListView.as_view(), name="ticket-list"),
|
||||
# /ticketsystem/detail/
|
||||
path('<int:pk>/', TicketDetailUpdateView.as_view(), name='detail'),
|
||||
path("<int:pk>/", TicketDetailUpdateView.as_view(), name="detail"),
|
||||
# /ticketsystem/new/
|
||||
path("new/", TicketCreateView.as_view(), name="create"),
|
||||
path("<int:pk>/modify/", TicketUpdateView.as_view(), name="modify"),
|
||||
|
||||
@@ -18,12 +18,14 @@ class HomeView(TemplateView):
|
||||
|
||||
def get_context_data(self, **kwargs):
|
||||
context = super().get_context_data(**kwargs)
|
||||
context.update({
|
||||
'total_tickets': Ticket.objects.count(),
|
||||
'open_tickets': Ticket.objects.filter(status='open').count(),
|
||||
'closed_tickets': Ticket.objects.filter(status='closed').count(),
|
||||
'recent_tickets': Ticket.objects.order_by('-updated_at')[:5],
|
||||
})
|
||||
context.update(
|
||||
{
|
||||
"total_tickets": Ticket.objects.count(),
|
||||
"open_tickets": Ticket.objects.filter(status="open").count(),
|
||||
"closed_tickets": Ticket.objects.filter(status="closed").count(),
|
||||
"recent_tickets": Ticket.objects.order_by("-updated_at")[:5],
|
||||
}
|
||||
)
|
||||
return context
|
||||
|
||||
|
||||
@@ -65,7 +67,7 @@ class TicketDetailUpdateView(UpdateView):
|
||||
comment_form_class = CommentForm
|
||||
|
||||
def get_success_url(self):
|
||||
return reverse('detail', kwargs={'pk': self.object.pk})
|
||||
return reverse("detail", kwargs={"pk": self.object.pk})
|
||||
|
||||
def dispatch(self, request, *args, **kwargs):
|
||||
self.ticket = self.get_object()
|
||||
@@ -84,8 +86,8 @@ class TicketDetailUpdateView(UpdateView):
|
||||
def get_context_data(self, **kwargs):
|
||||
context = super().get_context_data(**kwargs)
|
||||
# Kommentarformular hinzufügen
|
||||
if 'comment_form' not in context:
|
||||
context['comment_form'] = self.comment_form_class()
|
||||
if "comment_form" not in context:
|
||||
context["comment_form"] = self.comment_form_class()
|
||||
return context
|
||||
|
||||
def form_valid(self, form):
|
||||
@@ -120,15 +122,17 @@ class TicketDetailUpdateView(UpdateView):
|
||||
)
|
||||
|
||||
if form.changed_data:
|
||||
messages.success(self.request,
|
||||
f"Ticket erfolgreich aktualisiert. Geänderte Felder: {', '.join(form.changed_data)}")
|
||||
messages.success(
|
||||
self.request,
|
||||
f"Ticket erfolgreich aktualisiert. Geänderte Felder: {', '.join(form.changed_data)}",
|
||||
)
|
||||
|
||||
return response
|
||||
|
||||
def post(self, request, *args, **kwargs):
|
||||
self.object = self.get_object() # Wichtig: object setzen für beide Fälle
|
||||
|
||||
if 'comment_submit' in request.POST:
|
||||
if "comment_submit" in request.POST:
|
||||
# Kommentar absenden
|
||||
comment_form = self.comment_form_class(request.POST)
|
||||
if comment_form.is_valid():
|
||||
@@ -157,9 +161,9 @@ class AssignedTicketListView(LoginRequiredMixin, ListView):
|
||||
ordering = ["-created_at"]
|
||||
|
||||
def get_queryset(self):
|
||||
return Ticket.objects.filter(
|
||||
assigned_to=self.request.user
|
||||
).exclude(status="closed") # oder "geschlossen", je nach Wahl
|
||||
return Ticket.objects.filter(assigned_to=self.request.user).exclude(
|
||||
status="closed"
|
||||
) # oder "geschlossen", je nach Wahl
|
||||
|
||||
|
||||
class TicketCreateView(CreateView):
|
||||
@@ -169,11 +173,11 @@ class TicketCreateView(CreateView):
|
||||
|
||||
def form_valid(self, form):
|
||||
form.instance.created_by = self.request.user
|
||||
form.instance.status = 'open'
|
||||
form.instance.status = "open"
|
||||
return super().form_valid(form)
|
||||
|
||||
def get_success_url(self):
|
||||
return reverse('detail', kwargs={'pk': self.object.pk})
|
||||
return reverse("detail", kwargs={"pk": self.object.pk})
|
||||
|
||||
|
||||
class TicketUpdateView(LoginRequiredMixin, UpdateView):
|
||||
|
||||
Reference in New Issue
Block a user