Commit 719c3b5ec84547e7f8491ab8306811f2d4f4aba7
1 parent
4643e1c2
Exists in
master
and in
2 other branches
Avoiding non-student to access goals submit screen after update specifications
Showing
1 changed file
with
9 additions
and
6 deletions
Show diff stats
goals/views.py
@@ -972,14 +972,17 @@ class UpdateView(LoginRequiredMixin, LogMixin, generic.UpdateView): | @@ -972,14 +972,17 @@ class UpdateView(LoginRequiredMixin, LogMixin, generic.UpdateView): | ||
972 | def get_success_url(self): | 972 | def get_success_url(self): |
973 | messages.success(self.request, _('The Goals specification for the topic %s was updated successfully!')%(self.object.topic.name)) | 973 | messages.success(self.request, _('The Goals specification for the topic %s was updated successfully!')%(self.object.topic.name)) |
974 | 974 | ||
975 | - success_url = reverse_lazy('goals:submit', kwargs = {'slug': self.object.slug}) | 975 | + if has_subject_permissions(self.request.user, self.object.topic.subject): |
976 | + success_url = reverse_lazy('goals:view', kwargs = {'slug': self.object.slug}) | ||
977 | + else: | ||
978 | + success_url = reverse_lazy('goals:submit', kwargs = {'slug': self.object.slug}) | ||
976 | 979 | ||
977 | - if self.object.show_window: | ||
978 | - self.request.session['resources'] = {} | ||
979 | - self.request.session['resources']['new_page'] = True | ||
980 | - self.request.session['resources']['new_page_url'] = reverse('goals:window_submit', kwargs = {'slug': self.object.slug}) | 980 | + if self.object.show_window: |
981 | + self.request.session['resources'] = {} | ||
982 | + self.request.session['resources']['new_page'] = True | ||
983 | + self.request.session['resources']['new_page_url'] = reverse('goals:window_submit', kwargs = {'slug': self.object.slug}) | ||
981 | 984 | ||
982 | - success_url = reverse_lazy('subjects:view', kwargs = {'slug': self.object.topic.subject.slug}) | 985 | + success_url = reverse_lazy('subjects:view', kwargs = {'slug': self.object.topic.subject.slug}) |
983 | 986 | ||
984 | return success_url | 987 | return success_url |
985 | 988 |