2626class SubmissionStatsMixin :
2727 def get_context_data (self , ** kwargs ):
2828 submissions = ApplicationSubmission .objects .exclude_draft ()
29+ filter = kwargs .get ("filter" )
30+ user = self .request .user
31+
2932 # Getting values is an expensive operation. If there's no valid filters
3033 # then `count_values` & `total_value` will be encapsulating all submissions
3134 # and should be used rather than recaluclating these values.
32- if not (filter := kwargs .get ("filter" )) or not is_filter_empty (filter ):
33- submission_count = kwargs .get ("count_values" )
35+ if not filter or not is_filter_empty (filter ):
3436 submission_sum = kwargs .get ("total_value" )
3537 else :
36- submission_count = submissions .count ()
3738 submission_value = submissions .current ().value ()
3839 submission_sum = format_submission_sum_value (submission_value )
3940
4041 submission_undetermined_count = submissions .undetermined ().count ()
41- review_my_count = submissions .reviewed_by (self . request . user ).count ()
42+ review_my_count = submissions .reviewed_by (user ).count ()
4243
4344 submission_accepted = submissions .current_accepted ()
4445 submission_accepted_value = submission_accepted .value ()
@@ -47,13 +48,12 @@ def get_context_data(self, **kwargs):
4748
4849 reviews = Review .objects .submitted ()
4950 review_count = reviews .count ()
50- review_my_score = reviews .by_user (self . request . user ).score ()
51+ review_my_score = reviews .by_user (user ).score ()
5152
5253 return super ().get_context_data (
5354 submission_undetermined_count = submission_undetermined_count ,
5455 review_my_count = review_my_count ,
5556 submission_sum = submission_sum ,
56- submission_count = submission_count ,
5757 submission_accepted_count = submission_accepted_count ,
5858 submission_accepted_sum = submission_accepted_sum ,
5959 review_count = review_count ,
@@ -82,24 +82,13 @@ def get_filterset_kwargs(self, filterset_class, **kwargs):
8282 return new_kwargs
8383
8484 def get_queryset (self ):
85- return (
86- self .filterset_class ._meta .model .objects .current ()
87- .exclude_draft ()
88- .defer (
89- "search_data" ,
90- "submit_time" ,
91- "workflow_name" ,
92- "search_document" ,
93- "live_revision_id" ,
94- "draft_revision_id" ,
95- "summary" ,
96- )
97- )
85+ return self .filterset_class ._meta .model .objects .current ().exclude_draft ()
9886
9987 def get_context_data (self , ** kwargs ):
10088 search_term = self .request .GET .get ("query" )
10189
102- if self .object_list :
90+ if self .object_list .exists ():
91+ submission_count = self .object_list .count ()
10392 submission_values = self .object_list .value ()
10493 count_values = submission_values .get ("value__count" )
10594 total_value = format_submission_sum_value (submission_values )
@@ -111,12 +100,14 @@ def get_context_data(self, **kwargs):
111100 count_values = 0
112101 total_value = 0
113102 average_value = 0
103+ submission_count = 0
114104
115105 return super ().get_context_data (
116106 search_term = search_term ,
117107 filter_action = self .filter_action ,
118108 count_values = count_values ,
119109 total_value = total_value ,
120110 average_value = average_value ,
111+ submission_count = submission_count ,
121112 ** kwargs ,
122113 )
0 commit comments