@@ -140,15 +140,19 @@ class UECommentDetailView(PermissionRequiredMixin, DetailView):
140140 context_object_name = "comment"
141141
142142 def get_queryset (self ):
143- return super ().get_queryset ().annotate_is_reported ()
143+ return (
144+ super ().get_queryset ().viewable_by (self .request .user ).annotate_is_reported ()
145+ )
144146
145147 def dispatch (self , * args , ** kwargs ):
146148 res : HttpResponse = super ().dispatch (* args , ** kwargs )
147149 res .headers ["HX-Trigger" ] = "CommentUpdate"
148150 return res
149151
150152 def get_context_data (self , ** kwargs ):
151- return super ().get_context_data (** kwargs ) | {"ue" : self .object .ue }
153+ return super ().get_context_data (** kwargs ) | {
154+ "ue" : getattr (self .object , "ue" , None )
155+ }
152156
153157
154158class UECommentUpdateView (PermissionOrAuthorRequiredMixin , AllowFragment , UpdateView ):
@@ -189,11 +193,13 @@ class UECommentDeleteView(PermissionOrAuthorRequiredMixin, AllowFragment, Delete
189193 author_field = "author"
190194
191195 def form_valid (self , form ):
192- self .object .delete ()
193- response = HttpResponse (status = 200 )
196+ response = super ().form_valid (form )
194197 response .headers ["HX-Trigger" ] = "CommentUpdate"
195198 return response
196199
200+ def get_success_url (self ):
201+ return reverse ("pedagogy:comment_detail" , kwargs = {"comment_id" : self .object .id })
202+
197203
198204class UEGuideView (PermissionRequiredMixin , TemplateView ):
199205 """UE guide main page."""
@@ -202,12 +208,12 @@ class UEGuideView(PermissionRequiredMixin, TemplateView):
202208 permission_required = "pedagogy.view_ue"
203209
204210
205- class UECommentReportCreateView (PermissionRequiredMixin , CreateView ):
211+ class UECommentReportCreateView (PermissionRequiredMixin , AllowFragment , CreateView ):
206212 """Create a new report for an inappropriate comment."""
207213
208214 model = UECommentReport
209215 form_class = UECommentReportForm
210- template_name = "core/edit .jinja"
216+ template_name = "pedagogy/fragments/comment_report .jinja"
211217 permission_required = "pedagogy.add_uecommentreport"
212218
213219 def dispatch (self , request , * args , ** kwargs ):
@@ -220,6 +226,11 @@ def get_form_kwargs(self):
220226 kwargs ["comment_id" ] = self .ue_comment .id
221227 return kwargs
222228
229+ def get_context_data (self , ** kwargs ):
230+ return super ().get_context_data () | {
231+ "comment_id" : self .ue_comment .id ,
232+ }
233+
223234 def form_valid (self , form ):
224235 resp = super ().form_valid (form )
225236 # Send a message to moderation admins
@@ -235,11 +246,12 @@ def form_valid(self, form):
235246 url = reverse ("pedagogy:moderation" ),
236247 type = "PEDAGOGY_MODERATION" ,
237248 )
238-
239249 return resp
240250
241251 def get_success_url (self ):
242- return reverse ("pedagogy:ue_detail" , kwargs = {"ue_id" : self .ue_comment .ue_id })
252+ return reverse (
253+ "pedagogy:comment_detail" , kwargs = {"comment_id" : self .ue_comment .id }
254+ )
243255
244256
245257class UEModerationFormView (PermissionRequiredMixin , FormView ):
0 commit comments