Commit ae0d1c79d4e305b68bbe5816721ef5360583d258
1 parent
048c9d41
Exists in
master
and in
5 other branches
Adding log to other crud functions [Issue: #203]
Showing
1 changed file
with
60 additions
and
4 deletions
Show diff stats
courses/views.py
... | ... | @@ -141,7 +141,11 @@ class AllCoursesView(LoginRequiredMixin, NotificationMixin, generic.ListView): |
141 | 141 | |
142 | 142 | return context |
143 | 143 | |
144 | -class CreateCourseView(LoginRequiredMixin, HasRoleMixin, NotificationMixin,generic.edit.CreateView): | |
144 | +class CreateCourseView(LoginRequiredMixin, HasRoleMixin, LogMixin, NotificationMixin, generic.edit.CreateView): | |
145 | + log_component = "course" | |
146 | + log_resource = "course" | |
147 | + log_action = "create" | |
148 | + log_context = {} | |
145 | 149 | |
146 | 150 | allowed_roles = ['professor', 'system_admin'] |
147 | 151 | login_url = reverse_lazy("core:home") |
... | ... | @@ -153,6 +157,15 @@ class CreateCourseView(LoginRequiredMixin, HasRoleMixin, NotificationMixin,gener |
153 | 157 | def form_valid(self, form): |
154 | 158 | self.object = form.save() |
155 | 159 | self.object.professors.add(self.request.user) |
160 | + | |
161 | + self.log_context['course_id'] = self.object.id | |
162 | + self.log_context['course_name'] = self.object.name | |
163 | + self.log_context['course_slug'] = self.object.slug | |
164 | + self.log_context['course_category_id'] = self.object.category.id | |
165 | + self.log_context['course_category_name'] = self.object.category.name | |
166 | + | |
167 | + super(CreateCourseView, self).createLog(self.request.user, self.log_component, self.log_action, self.log_resource, self.log_context) | |
168 | + | |
156 | 169 | return super(CreateCourseView, self).form_valid(form) |
157 | 170 | |
158 | 171 | def get_context_data(self, **kwargs): |
... | ... | @@ -166,7 +179,11 @@ class CreateCourseView(LoginRequiredMixin, HasRoleMixin, NotificationMixin,gener |
166 | 179 | context['now'] = date.today() |
167 | 180 | return context |
168 | 181 | |
169 | -class ReplicateCourseView(LoginRequiredMixin, HasRoleMixin, NotificationMixin,generic.edit.CreateView): | |
182 | +class ReplicateCourseView(LoginRequiredMixin, HasRoleMixin, LogMixin, NotificationMixin,generic.edit.CreateView): | |
183 | + log_component = "courses" | |
184 | + log_action = "replicate" | |
185 | + log_resource = "course" | |
186 | + log_context = {} | |
170 | 187 | |
171 | 188 | allowed_roles = ['professor', 'system_admin'] |
172 | 189 | login_url = reverse_lazy("core:home") |
... | ... | @@ -188,6 +205,15 @@ class ReplicateCourseView(LoginRequiredMixin, HasRoleMixin, NotificationMixin,ge |
188 | 205 | elif has_role(self.request.user,'professor'): |
189 | 206 | courses = self.request.user.courses_professors.all() |
190 | 207 | categorys_courses = CourseCategory.objects.all() |
208 | + | |
209 | + self.log_context['course_id'] = course.id | |
210 | + self.log_context['course_name'] = course.name | |
211 | + self.log_context['course_slug'] = course.slug | |
212 | + self.log_context['course_category_id'] = course.category.id | |
213 | + self.log_context['course_category_name'] = course.category.name | |
214 | + | |
215 | + super(ReplicateCourseView, self).createLog(self.request.user, self.log_component, self.log_action, self.log_resource, self.log_context) | |
216 | + | |
191 | 217 | context['courses'] = courses |
192 | 218 | context['course'] = course |
193 | 219 | context['categorys_courses'] = categorys_courses |
... | ... | @@ -198,7 +224,11 @@ class ReplicateCourseView(LoginRequiredMixin, HasRoleMixin, NotificationMixin,ge |
198 | 224 | def get_success_url(self): |
199 | 225 | return reverse_lazy('course:view', kwargs={'slug' : self.object.slug}) |
200 | 226 | |
201 | -class UpdateCourseView(LoginRequiredMixin, HasRoleMixin, generic.UpdateView): | |
227 | +class UpdateCourseView(LoginRequiredMixin, HasRoleMixin, LogMixin, generic.UpdateView): | |
228 | + log_component = "courses" | |
229 | + log_action = "update" | |
230 | + log_resource = "course" | |
231 | + log_context = {} | |
202 | 232 | |
203 | 233 | allowed_roles = ['professor', 'system_admin'] |
204 | 234 | login_url = reverse_lazy("core:home") |
... | ... | @@ -213,6 +243,19 @@ class UpdateCourseView(LoginRequiredMixin, HasRoleMixin, generic.UpdateView): |
213 | 243 | return self.handle_no_permission() |
214 | 244 | return super(UpdateCourseView, self).dispatch(*args, **kwargs) |
215 | 245 | |
246 | + def form_valid(self, form): | |
247 | + self.object = form.save() | |
248 | + | |
249 | + self.log_context['course_id'] = self.object.id | |
250 | + self.log_context['course_name'] = self.object.name | |
251 | + self.log_context['course_slug'] = self.object.slug | |
252 | + self.log_context['course_category_id'] = self.object.category.id | |
253 | + self.log_context['course_category_name'] = self.object.category.name | |
254 | + | |
255 | + super(UpdateCourseView, self).createLog(self.request.user, self.log_component, self.log_action, self.log_resource, self.log_context) | |
256 | + | |
257 | + return super(UpdateCourseView, self).form_valid(form) | |
258 | + | |
216 | 259 | def get_context_data(self, **kwargs): |
217 | 260 | context = super(UpdateCourseView, self).get_context_data(**kwargs) |
218 | 261 | course = get_object_or_404(Course, slug = self.kwargs.get('slug')) |
... | ... | @@ -229,7 +272,11 @@ class UpdateCourseView(LoginRequiredMixin, HasRoleMixin, generic.UpdateView): |
229 | 272 | def get_success_url(self): |
230 | 273 | return reverse_lazy('course:view', kwargs={'slug' : self.object.slug}) |
231 | 274 | |
232 | -class DeleteCourseView(LoginRequiredMixin, HasRoleMixin, generic.DeleteView): | |
275 | +class DeleteCourseView(LoginRequiredMixin, HasRoleMixin, LogMixin, generic.DeleteView): | |
276 | + log_component = "courses" | |
277 | + log_action = "delete" | |
278 | + log_resource = "course" | |
279 | + log_context = {} | |
233 | 280 | |
234 | 281 | allowed_roles = ['professor', 'system_admin'] |
235 | 282 | login_url = reverse_lazy("core:home") |
... | ... | @@ -242,6 +289,15 @@ class DeleteCourseView(LoginRequiredMixin, HasRoleMixin, generic.DeleteView): |
242 | 289 | course = get_object_or_404(Course, slug = self.kwargs.get('slug')) |
243 | 290 | if(not has_object_permission('delete_course', self.request.user, course)): |
244 | 291 | return self.handle_no_permission() |
292 | + | |
293 | + self.log_context['course_id'] = course.id | |
294 | + self.log_context['course_name'] = course.name | |
295 | + self.log_context['course_slug'] = course.slug | |
296 | + self.log_context['course_category_id'] = course.category.id | |
297 | + self.log_context['course_category_name'] = course.category.name | |
298 | + | |
299 | + super(DeleteCourseView, self).createLog(self.request.user, self.log_component, self.log_action, self.log_resource, self.log_context) | |
300 | + | |
245 | 301 | return super(DeleteCourseView, self).dispatch(*args, **kwargs) |
246 | 302 | |
247 | 303 | def get_context_data(self, **kwargs): | ... | ... |