Commit 00085f47aa3b96d0cab70659db13ca9b1395102e
1 parent
e0d491e1
Exists in
master
and in
5 other branches
added file and exam creation notifications #207
Showing
2 changed files
with
15 additions
and
2 deletions
Show diff stats
exam/views.py
... | ... | @@ -44,7 +44,7 @@ class ViewExam(LoginRequiredMixin,generic.DetailView): |
44 | 44 | |
45 | 45 | |
46 | 46 | |
47 | -class CreateExam(LoginRequiredMixin,HasRoleMixin,generic.CreateView): | |
47 | +class CreateExam(LoginRequiredMixin,HasRoleMixin, NotificationMixin,generic.CreateView): | |
48 | 48 | |
49 | 49 | allowed_roles = ['professor', 'system_admin'] |
50 | 50 | login_url = reverse_lazy("core:home") |
... | ... | @@ -72,8 +72,12 @@ class CreateExam(LoginRequiredMixin,HasRoleMixin,generic.CreateView): |
72 | 72 | self.object = form.save(commit = False) |
73 | 73 | topic = get_object_or_404(Topic, slug = self.kwargs.get('slug')) |
74 | 74 | self.object.topic = topic |
75 | + self.object.name = str(self.object) | |
75 | 76 | self.object.save() |
76 | 77 | |
78 | + super(CreateExam, self).createNotification(message="created an Exam "+ self.object.name, actor=self.request.user, | |
79 | + resource_name=self.object.name, resource_link= reverse('course:exam:view_exam', args=[self.object.slug]), | |
80 | + users=self.object.topic.subject.students.all()) | |
77 | 81 | for key in self.request.POST: |
78 | 82 | if(key != 'csrfmiddlewaretoken' and key != 'name' and key != 'begin_date' and key != 'limit_date' and key != 'all_students' and key != 'students'): |
79 | 83 | answer = Answer(answer=self.request.POST[key],order=key,exam=self.object) | ... | ... |
files/views.py
... | ... | @@ -11,9 +11,10 @@ from .models import TopicFile |
11 | 11 | from .utils import mime_type_to_material_icons |
12 | 12 | from courses.models import Topic |
13 | 13 | from core.models import MimeType |
14 | +from core.mixins import NotificationMixin | |
14 | 15 | |
15 | 16 | # Create your views here. |
16 | -class CreateFile(LoginRequiredMixin, HasRoleMixin, generic.edit.CreateView): | |
17 | +class CreateFile(LoginRequiredMixin, HasRoleMixin, NotificationMixin, generic.edit.CreateView): | |
17 | 18 | allowed_roles = ['professor', 'system_admin'] |
18 | 19 | login_url = reverse_lazy("core:home") |
19 | 20 | redirect_field_name = 'next' |
... | ... | @@ -32,6 +33,10 @@ class CreateFile(LoginRequiredMixin, HasRoleMixin, generic.edit.CreateView): |
32 | 33 | self.object = form.save(commit = False) |
33 | 34 | topic = get_object_or_404(Topic, slug = self.kwargs.get('slug')) |
34 | 35 | self.object.topic = topic |
36 | + | |
37 | + self.object.name = str(self.object) | |
38 | + | |
39 | + | |
35 | 40 | # Set MimeType |
36 | 41 | file = self.request.FILES['file_url'] |
37 | 42 | try: |
... | ... | @@ -54,6 +59,10 @@ class CreateFile(LoginRequiredMixin, HasRoleMixin, generic.edit.CreateView): |
54 | 59 | # self.object.file_type = MimeType.objects.get(id = 1) |
55 | 60 | |
56 | 61 | self.object.save() |
62 | + #CREATE NOTIFICATION | |
63 | + super(CreateFile, self).createNotification(message="uploaded a File "+ self.object.name, actor=self.request.user, | |
64 | + resource_name=self.object.name, resource_link= reverse('course:file:create_file', args=[self.object.slug]), | |
65 | + users=self.object.topic.subject.students.all()) | |
57 | 66 | |
58 | 67 | return self.get_success_url() |
59 | 68 | ... | ... |