Browse Source

Templates improvement

TonyKurts 1 year ago
parent
commit
eb718bc42c

+ 5 - 5
forms/ticket.py

@@ -1,8 +1,6 @@
-from datetime import timedelta
-
 from django import forms
 from django.contrib.auth.models import Group
-from django.utils import timezone
+from django.contrib.auth import get_user_model
 
 from tickets.models import Ticket, TicketList
 
@@ -17,11 +15,13 @@ class TicketForm(forms.ModelForm):
             
         ticket_lists = TicketList.objects.select_related("group").filter(group__in=group_ids)
 
+        self.fields["assigned_to"].empty_label = "Anyone"
         self.fields["ticket_list"].empty_label = None
+
+        self.fields['assigned_to'].queryset = get_user_model().objects.all().order_by('username')
         self.fields["ticket_list"].queryset = ticket_lists
+        
         self.fields["ticket_list"].label_from_instance = lambda obj: f"{obj.group} > {obj}"
-        self.fields["assigned_to"].empty_label = "Select a user"
-        self.initial["due_date"] = (timezone.now() + timedelta(days=7)).date().strftime('%Y-%m-%d')
 
         if self.instance.pk:
             self.initial["ticket_type"] = self.instance.ticket_type

+ 1 - 1
templates/tickets/base.html

@@ -18,7 +18,7 @@
   
   <body>
     <header>
-      <nav class="navbar bg-body-tertiary navbar-expand-md fixed-top">
+      <nav class="navbar bg-body-tertiary navbar-expand-lg fixed-top">
         <div class="container">
           <a class="navbar-brand" href="{% url 'tickets:ticket_list_list' %}">
             <img src="{% static 'tickets/favicon.ico' %}" width="30" height="30" class="d-inline-block align-top">

+ 8 - 8
templates/tickets/search.html

@@ -7,8 +7,8 @@
       <div class="row">
         <div class="col-md-8">
           <div class="card-body">
-            <h5 class="card-title"><a href="{% url 'tickets:ticket_detail' ticket.pk %}">{{ ticket.title|truncatechars:24 }}</a></h5>
-            <p class="card-text">{{ ticket.note|truncatechars:96 }}</p>
+            <h5 class="card-title"><a href="{% url 'tickets:ticket_detail' ticket.pk %}">{{ ticket.title|truncatechars:48 }}</a></h5>
+            <p class="card-text">{{ ticket.note|truncatechars:128 }}</p>
             <section class="card-text">
               <small class="text-body-secondary">Created at: {{ ticket.created_at }}</small><br>
               <small class="text-body-secondary">Due date: {{ ticket.due_date }}</small>
@@ -17,12 +17,12 @@
         </div>
         <div class="col-md-4">
           <div class="card-body">
-            In list: <a href="{% url 'tickets:ticket_list_detail' ticket.ticket_list.pk %}">{{ ticket.ticket_list.name }}</a><br>
-            Created by: {{ ticket.created_by_username }}<br>
-            Assigned to: {% if ticket.assigned_to_username %}{{ ticket.assigned_to_username }}{% else %}Anyone{% endif %}<br>
-            Type: {{ ticket.get_ticket_type_display }}<br>
-            Status: {{ ticket.status }}<br>
-            Priority: {{ ticket.priority }}
+            <b>In list:</b> <a href="{% url 'tickets:ticket_list_detail' ticket.ticket_list.pk %}">{{ ticket.ticket_list.name }}</a><br>
+            <b>Created by:</b> {{ ticket.created_by_username }}<br>
+            <b>Assigned to:</b> {% if ticket.assigned_to_username %}{{ ticket.assigned_to_username }}{% else %}Anyone{% endif %}<br>
+            <b>Type:</b> {{ ticket.get_ticket_type_display }}<br>
+            <b>Status:</b> {{ ticket.status }}<br>
+            <b>Priority:</b> {{ ticket.priority }}
           </div>
         </div>
       </div>

+ 13 - 13
templates/tickets/ticket_detail.html

@@ -2,11 +2,11 @@
 {% load static %}
 
 {% block content %}
+  <h3 class="card-title fw-bold my-3">{{ ticket.title }}</h3> 
   <div class="row">
     <div class="col-12 col-md-8 mb-2 mb-md-0">
       <div class="card h-100">
         <div class="card-body">
-          <h3 class="card-title fw-bold">{{ ticket.title }}</h3>
             {% if ticket.note %}
               <div class="card-text overflow-auto">{{ ticket.note|safe|urlize|linebreaks }}</div>
             {% endif %}
@@ -200,26 +200,26 @@
   <form class="mb-3" method="post">
     {% csrf_token %}
     <textarea class="form-control" name="comment-body" rows="2" placeholder="Write your comment here" required></textarea>
-    <button class="btn btn-primary mt-2" type="submit">
+    <div class="d-flex justify-content-end">
+     <button class="btn btn-primary mt-2" type="submit">
       <i class="fa-solid fa-paper-plane pe-1"></i>
-      Comment
-    </button>
+        Post
+      </button>
+    </div>
   </form>
   
   {% if comment_list %}
     {% for comment in comment_list %}
-      <div class="card mb-2">
+      <div class="card mb-2 bg-body-secondary">
         <div class="card-body">
-          <h5>
-            {{ comment.author_username }}
-            <small class="text-muted">{{ comment.author_email }}</small>
-          </h5>
+          <h5>{{ comment.author_username }}</h5>
+
+          {{ comment.body|safe|urlize|linebreaks }}
           
-          <div class="container">
-            {{ comment.body|safe|urlize|linebreaks }}
+          <div class="text-body-secondary d-flex justify-content-between">
+            <small>{{ comment.author_email }}</small>
+            <small>{{ comment.date }}</small>
           </div>
-          
-          <p class="card-text"><small class="text-body-secondary">{{ comment.date }}</small></p>
         </div>
       </div>
     {% endfor %}

+ 1 - 1
templates/tickets/ticket_list_detail.html

@@ -116,7 +116,7 @@
                 {{ ticket.pk }}
               </td>
               <td>
-                <a href="{% url 'tickets:ticket_detail' ticket.pk %}">{{ ticket.title|truncatewords:10 }}</a>
+                <a href="{% url 'tickets:ticket_detail' ticket.pk %}">{{ ticket.title|truncatechars:48 }}</a>
               </td>
               <td>
                   {{ ticket.created_at }}