Commit 00085f47aa3b96d0cab70659db13ca9b1395102e

Authored by fbormann
1 parent e0d491e1

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  
... ...