diff --git a/app/templates/home_teacher_student_content.html b/app/templates/home_teacher_student_content.html
index 184a6ac..9e1b810 100644
--- a/app/templates/home_teacher_student_content.html
+++ b/app/templates/home_teacher_student_content.html
@@ -11,7 +11,7 @@
diff --git a/core/mixins.py b/core/mixins.py
index f5e49b8..b48dec7 100644
--- a/core/mixins.py
+++ b/core/mixins.py
@@ -44,7 +44,8 @@ class NotificationMixin(object):
action_slug = ''
resource_name = ''
- def createNotification(self, message='', actor=None, users = User.objects.all(), resource_slug='' ,action_slug = '', resource_name='', resource_link=''): #the default will be a broadcast
+ def createNotification(self, message='', actor=None, users = User.objects.all(), resource_slug='' ,action_slug = '',
+ resource_name='', resource_link=''): #the default will be a broadcast
action = Action.objects.filter(slug = action_slug)
resource = Resource.objects.filter(slug = resource_slug)
if action.exists():
diff --git a/forum/views.py b/forum/views.py
index ad4501e..f154429 100644
--- a/forum/views.py
+++ b/forum/views.py
@@ -58,7 +58,7 @@ class CreateForumView(LoginRequiredMixin, generic.edit.CreateView, NotificationM
action = super(CreateForumView, self).createorRetrieveAction("create Topic")
super(CreateForumView, self).createNotification("Forum "+ self.object.name + " was created",
resource_name=self.object.name, resource_link= 'topics/'+self.object.slug,
- actor=self.request.user, users = self.object.topic.subject.course.students.all() )
+ actor=self.request.user, users = self.object.topic.subject.students.all() )
return self.success_url
def render_forum(request, forum):
@@ -162,8 +162,8 @@ class CreatePostView(LoginRequiredMixin, generic.edit.CreateView, NotificationMi
self.object.user = self.request.user
self.object.save()
- #super(CreatePostView, self).createNotification(self.object.user.username + " posted on " + self.object.forum,name,
- #resource_slug = self.object.forum.slug, actor=self.request.user, users= self.object.forum.topic.)
+ super(CreatePostView, self).createNotification(self.object.user.username + " posted on " + self.object.forum,name,
+ resource_slug = self.object.forum.slug, actor=self.request.user, users= self.object.forum.topic.subject.students.all())
return super(CreatePostView, self).form_valid(form)
diff --git a/poll/models.py b/poll/models.py
index 3d770f7..68eac05 100644
--- a/poll/models.py
+++ b/poll/models.py
@@ -8,7 +8,6 @@ from courses.models import Activity
class Poll(Activity):
class Meta:
- #ordering = ('create_date','name')
verbose_name = _('Poll')
verbose_name_plural = _('Polls')
diff --git a/poll/views.py b/poll/views.py
index 38984bb..715d4b3 100644
--- a/poll/views.py
+++ b/poll/views.py
@@ -9,7 +9,7 @@ from django.utils.translation import ugettext_lazy as _
from rolepermissions.verifications import has_role
from rolepermissions.verifications import has_object_permission
from django.db.models import Q
-# from django.views.generic.edit import FormMixin
+from django.urls import reverse
from .forms import PollForm
from .models import Poll, Answer, AnswersStudent
@@ -41,7 +41,7 @@ class ViewPoll(LoginRequiredMixin,generic.DetailView):
return context
-class CreatePoll(LoginRequiredMixin,HasRoleMixin,generic.CreateView):
+class CreatePoll(LoginRequiredMixin,HasRoleMixin, NotificationMixin,generic.CreateView):
allowed_roles = ['professor', 'system_admin']
login_url = reverse_lazy("core:home")
@@ -63,15 +63,19 @@ class CreatePoll(LoginRequiredMixin,HasRoleMixin,generic.CreateView):
context.context_data['keys'] = keys
context.context_data['form'] = form
context.status_code = 400
- # return self.render_to_response(context, status = 400)
+ s
return context
def form_valid(self, form):
self.object = form.save(commit = False)
topic = get_object_or_404(Topic, slug = self.kwargs.get('slug'))
self.object.topic = topic
+ self.object.name = str(self.object)
self.object.save()
+ super(CreatePoll, self).createNotification(message="create a Poll "+ self.object.name, actor=self.request.user,
+ resource_name=self.object.name, resource_link= reverse('course:poll:view_poll', args=[self.object.slug]),
+ users=self.object.topic.subject.students.all())
for key in self.request.POST:
if(key != 'csrfmiddlewaretoken' and key != 'name' and key != 'limit_date' and key != 'all_students' and key != 'students'):
answer = Answer(answer=self.request.POST[key],order=key,poll=self.object)
--
libgit2 0.21.2