From 2d92859f50b1cf0799ff3c4f02e827282d852de9 Mon Sep 17 00:00:00 2001 From: DavidVadnais Date: Fri, 1 Aug 2025 18:53:22 +0000 Subject: [PATCH] dropdown works for assign --- .../templates/helpdesk/ticket_desc_table.html | 22 +++++++++++++++++++ helpdesk/views/public.py | 2 +- helpdesk/views/staff.py | 15 +++++++++++-- 3 files changed, 36 insertions(+), 3 deletions(-) diff --git a/helpdesk/templates/helpdesk/ticket_desc_table.html b/helpdesk/templates/helpdesk/ticket_desc_table.html index b968b4e1..023390e9 100644 --- a/helpdesk/templates/helpdesk/ticket_desc_table.html +++ b/helpdesk/templates/helpdesk/ticket_desc_table.html @@ -73,9 +73,31 @@ {{ ticket.created|date:"DATETIME_FORMAT" }} ({{ ticket.created|naturaltime }}) + {% trans "Assigned To" %} + {{ ticket.get_assigned_to }} +
+ {% csrf_token %} + + + +
+ + +
+
+ diff --git a/helpdesk/views/public.py b/helpdesk/views/public.py index 0f142c05..13867086 100644 --- a/helpdesk/views/public.py +++ b/helpdesk/views/public.py @@ -1,7 +1,7 @@ """ django-helpdesk - A Django powered ticket tracker for small enterprise. -(c) Copyright 2008 Jutda. All Rights Reserved. See LICENSE for details. +(c) Copyright 2008-2025 Jutda. All Rights Reserved. See LICENSE for details. views/public.py - All public facing views, eg non-staff (no authentication required) views. diff --git a/helpdesk/views/staff.py b/helpdesk/views/staff.py index 024c3b20..8a60ff03 100644 --- a/helpdesk/views/staff.py +++ b/helpdesk/views/staff.py @@ -1,7 +1,7 @@ """ django-helpdesk - A Django powered ticket tracker for small enterprise. -(c) Copyright 2008 Jutda. All Rights Reserved. See LICENSE for details. +(c) Copyright 2008-2025 Jutda. All Rights Reserved. See LICENSE for details. views/staff.py - The bulk of the application - provides most business logic and renders all staff-facing views. @@ -87,6 +87,7 @@ import helpdesk.views.abstract_views as abstract_views from helpdesk.views.permissions import MustBeStaffMixin import json import re +import logging from rest_framework import status from rest_framework.decorators import api_view import typing @@ -96,6 +97,9 @@ from django.utils.timezone import now if helpdesk_settings.HELPDESK_KB_ENABLED: from helpdesk.models import KBItem +logger = logging.getLogger(__name__) + + DATE_RE: re.Pattern = re.compile( r"(?P\d{1,2})/(?P\d{1,2})/(?P\d{4})$" ) @@ -473,6 +477,10 @@ def view_ticket(request, ticket_id): # add custom fields to further details panel customfields_form = EditTicketCustomFieldForm(None, instance=ticket) + # Define users that the ticket can be assigned to + assignable_users = User.objects.filter(is_active=True).order_by('username') + logger.debug("Assignable users:", assignable_users) + return render( request, "helpdesk/ticket.html", @@ -488,6 +496,7 @@ def view_ticket(request, ticket_id): "SHOW_SUBSCRIBE": show_subscribe, "checklist_form": checklist_form, "customfields_form": customfields_form, + "assignable_users": assignable_users, **extra_context_kwargs, }, ) @@ -816,7 +825,9 @@ def mass_update(request): elif action == "delete": t.delete() - return HttpResponseRedirect(reverse("helpdesk:list")) + # Go to ticket template if from ticket or list template otherwise + next_url = request.POST.get("next") or reverse("helpdesk:list") + return HttpResponseRedirect(next_url) mass_update = staff_member_required(mass_update)