Free and open source ticket system written in python

๐Ÿ‘Œ IMPROVE: Update History view

+52 -30
+1 -1
paw/__init__.py
··· 1 1 from django import get_version 2 2 3 - VERSION = (0, 5, 4, "final", 0) 3 + VERSION = (0, 5, 5, "final", 0) 4 4 5 5 __version__ = get_version(VERSION)
+50 -22
paw/templates/ticketing/tickets_history.html
··· 1 1 {% extends 'dashboard_base.html' %} 2 2 {% block dashboard_content %} 3 - <div class="w-full p-8"> 4 - <table class="table w-full"> 5 - <thead> 6 - <tr> 7 - <th></th> 8 - <th>Title</th> 9 - <th>Category</th> 10 - <th></th> 11 - </tr> 12 - </thead> 13 - <tbody> 14 - {% for ticket in tickets %} 15 - <tr> 16 - <td>#{{ ticket.id }}</td> 17 - <td>{{ ticket.title }}</td> 18 - <td><div class="badge badge-neutral">{{ ticket.category }}</div></td> 19 - <td class="flex justify-end"><a href="{% url 'ticket_detail' ticket.id %}" class="btn btn-xs btn-accent">View</a></td> 20 - </tr> 21 - {% endfor %} 22 - </tbody> 23 - </table> 24 - </div> 3 + {% load i18n %} 4 + <div class="w-full p-8"> 5 + <h1 class="flex items-center text-2xl text-base-content font-bold mb-4">{% trans 'History' %} 6 + {% if request.user.team_set.all %} 7 + {% trans 'for' %}: 8 + {% for team in request.user.team_set.all %} 9 + <span class="ml-2 badge badge-neutral">{{ team.name }}</span> 10 + {% endfor %} 11 + {% endif %} 12 + </h1> 13 + <table class="table w-full"> 14 + <thead> 15 + <tr> 16 + <th></th> 17 + <th>{% trans 'Title' %}</th> 18 + <th>{% trans 'Assigned to' %}</th> 19 + <th>{% trans 'Category' %}</th> 20 + <th>{% trans 'Closed on' %}</th> 21 + <th></th> 22 + </tr> 23 + </thead> 24 + <tbody> 25 + {% if tickets.count == 0 %} 26 + <tr> 27 + <td colspan="5" class="text-center p-10">{% trans 'No tickets found' %}</td> 28 + </tr> 29 + {% endif %} 30 + {% for ticket in tickets %} 31 + <tr> 32 + <td><span class="badge badge-neutral">#{{ ticket.id }}</span></td> 33 + <td>{{ ticket.title }}</td> 34 + <td> 35 + {% include 'partials/assigned_to.html' with assigned_to=ticket.assigned_to %} 36 + </td> 37 + <td> 38 + <div class="badge badge-neutral"> 39 + {% if ticket.category %} 40 + {{ ticket.category }} 41 + {% else %} 42 + {% trans 'General' %} 43 + {% endif %} 44 + </div> 45 + </td> 46 + <td>{{ ticket.updated_at|date:"d.m.Y H:m" }}</td> 47 + <td class="flex justify-end"><a href="{% url 'ticket_detail' ticket.id %}" class="btn btn-xs btn-accent">{% trans 'View' %}</a></td> 48 + </tr> 49 + {% endfor %} 50 + </tbody> 51 + </table> 52 + </div> 25 53 {% endblock %}
+1 -7
ticketing/views.py
··· 14 14 15 15 @login_required 16 16 def show_tickets_history(request): 17 - if request.user.is_staff: 18 - tickets = Ticket.objects.filter( 19 - status=Ticket.Status.CLOSED).order_by("priority", "-created_at") 20 - print(tickets) 21 - else: 22 - tickets = Ticket.objects.filter( 23 - user=request.user).order_by("-created_at") 17 + tickets = Ticket.get_closed_tickets(request.user).order_by("priority", "-updated_at") 24 18 return render(request, "ticketing/tickets_history.html", {"tickets": tickets}) 25 19 26 20