@@ -381,11 +381,9 @@ def __init__(self, *args, **kwargs):
381381 if finding .cwe > 0 and finding .cwe not in cwe )
382382 cwe = collections .OrderedDict (sorted (cwe .items ()))
383383 self .form .fields ['cwe' ].choices = cwe .items ()
384- sevs = dict ()
385- sevs = dict ([finding .severity , finding .severity ]
386- for finding in self .queryset .distinct ()
387- if finding .severity not in sevs )
388- self .form .fields ['severity' ].choices = sevs .items ()
384+ self .form .fields ['severity' ].choices = self .queryset .order_by (
385+ 'numerical_severity'
386+ ).values_list ('severity' , 'severity' ).distinct ()
389387 if self .user is not None and not self .user .is_staff :
390388 if self .form .fields .get ('test__engagement__product' ):
391389 qs = Product .objects .filter (authorized_users__in = [self .user ])
@@ -462,11 +460,9 @@ def __init__(self, *args, **kwargs):
462460 if finding .cwe > 0 and finding .cwe not in cwe )
463461 cwe = collections .OrderedDict (sorted (cwe .items ()))
464462 self .form .fields ['cwe' ].choices = cwe .items ()
465- sevs = dict ()
466- sevs = dict ([finding .severity , finding .severity ]
467- for finding in self .queryset .distinct ()
468- if finding .severity not in sevs )
469- self .form .fields ['severity' ].choices = sevs .items ()
463+ self .form .fields ['severity' ].choices = self .queryset .order_by (
464+ 'numerical_severity'
465+ ).values_list ('severity' , 'severity' ).distinct ()
470466
471467
472468class ClosedFingingSuperFilter (ClosedFindingFilter ):
@@ -533,11 +529,9 @@ def __init__(self, *args, **kwargs):
533529 if finding .cwe > 0 and finding .cwe not in cwe )
534530 cwe = collections .OrderedDict (sorted (cwe .items ()))
535531 self .form .fields ['cwe' ].choices = cwe .items ()
536- sevs = dict ()
537- sevs = dict ([finding .severity , finding .severity ]
538- for finding in self .queryset .distinct ()
539- if finding .severity not in sevs )
540- self .form .fields ['severity' ].choices = sevs .items ()
532+ self .form .fields ['severity' ].choices = self .queryset .order_by (
533+ 'numerical_severity'
534+ ).values_list ('severity' , 'severity' ).distinct ()
541535
542536
543537class AcceptedFingingSuperFilter (AcceptedFindingFilter ):
@@ -597,11 +591,9 @@ def __init__(self, *args, **kwargs):
597591 if finding .cwe > 0 and finding .cwe not in cwe )
598592 cwe = collections .OrderedDict (sorted (cwe .items ()))
599593 self .form .fields ['cwe' ].choices = cwe .items ()
600- sevs = dict ()
601- sevs = dict ([finding .severity , finding .severity ]
602- for finding in self .queryset .distinct ()
603- if finding .severity not in sevs )
604- self .form .fields ['severity' ].choices = sevs .items ()
594+ self .form .fields ['severity' ].choices = self .queryset .order_by (
595+ 'numerical_severity'
596+ ).values_list ('severity' , 'severity' ).distinct ()
605597
606598
607599class TemplateFindingFilter (DojoFilter ):
@@ -707,8 +699,8 @@ class MetricsFindingFilter(FilterSet):
707699 def __init__ (self , * args , ** kwargs ):
708700 super (MetricsFindingFilter , self ).__init__ (* args , ** kwargs )
709701 self .form .fields ['severity' ].choices = self .queryset .order_by (
710- 'numerical_severity' ) \
711- .values_list ('severity' , 'severity' ).distinct ()
702+ 'numerical_severity'
703+ ) .values_list ('severity' , 'severity' ).distinct ()
712704
713705 class Meta :
714706 model = Finding
0 commit comments