|
@@ -8,21 +8,14 @@ from tickets.models import Ticket, TicketList
|
|
|
|
|
|
|
|
|
class TicketForm(forms.ModelForm):
|
|
|
- ticket_type = forms.ChoiceField(
|
|
|
- choices=Ticket.TICKET_TYPES_CHOICES,
|
|
|
- widget=forms.Select(attrs={
|
|
|
- 'class': 'form-control'
|
|
|
- }),
|
|
|
- )
|
|
|
-
|
|
|
def __init__(self, user, *args, **kwargs):
|
|
|
super().__init__(*args, **kwargs)
|
|
|
|
|
|
group_ids = Group.objects.values_list("pk", flat=True)
|
|
|
if not user.is_superuser:
|
|
|
- group_ids = group_ids.filter(user=user)
|
|
|
- ticket_lists = TicketList.objects.select_related("group")
|
|
|
- ticket_lists = ticket_lists.filter(group__in=group_ids)
|
|
|
+ group_ids = group_ids.filter(user=user)
|
|
|
+
|
|
|
+ ticket_lists = TicketList.objects.select_related("group").filter(group__in=group_ids)
|
|
|
|
|
|
self.fields["ticket_list"].empty_label = None
|
|
|
self.fields["ticket_list"].queryset = ticket_lists
|
|
@@ -30,6 +23,10 @@ class TicketForm(forms.ModelForm):
|
|
|
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
|
|
|
+ self.fields["ticket_type"].disabled = True
|
|
|
+
|
|
|
class Meta:
|
|
|
model = Ticket
|
|
|
exclude = ["status"]
|
|
@@ -43,7 +40,7 @@ class TicketForm(forms.ModelForm):
|
|
|
'class': 'form-control'
|
|
|
}),
|
|
|
'ticket_type': forms.Select(attrs={
|
|
|
- 'class': 'form-control',
|
|
|
+ 'class': 'form-control'
|
|
|
}),
|
|
|
'due_date': forms.DateInput(attrs={
|
|
|
'class': 'form-control',
|
|
@@ -59,4 +56,4 @@ class TicketForm(forms.ModelForm):
|
|
|
'priority': forms.NumberInput(attrs={
|
|
|
'class': 'form-control',
|
|
|
}),
|
|
|
- }
|
|
|
+ }
|