diff --git a/core/mixins.py b/core/mixins.py index d2dedd8..a05c10c 100644 --- a/core/mixins.py +++ b/core/mixins.py @@ -56,10 +56,13 @@ class NotificationMixin(object): if resource.exists(): resource = resource[0] + resource.url = resource_link + resource.save() else: resource = Resource(name = resource_name, url= resource_link) resource.save() + action_resource = Action_Resource.objects.filter(action = action, resource = resource) if action_resource.exists(): diff --git a/courses/views.py b/courses/views.py index abd8ef0..0e7019a 100644 --- a/courses/views.py +++ b/courses/views.py @@ -384,8 +384,7 @@ class TopicsView(LoginRequiredMixin, generic.ListView): topic = get_object_or_404(Topic, slug = self.kwargs.get('slug')) subject = topic.subject topics_q = Topic.objects.filter(subject = subject, visible=True) - #if (self.request.user in subject.professors.all() or has_role(self.request.user,'system_admin')): - #context = subject.topics.all() <- Change it By Activities + return topics_q def get_context_data(self, **kwargs): @@ -393,14 +392,13 @@ class TopicsView(LoginRequiredMixin, generic.ListView): context = super(TopicsView, self).get_context_data(**kwargs) activitys = Activity.objects.filter(topic__name = topic.name) students_activit = User.objects.filter(activities__in = Activity.objects.all()) - # page_user = User.objects.get(id= self.kwargs['user_id']) + context['topic'] = topic context['subject'] = topic.subject context['activitys'] = activitys context['students_activit'] = students_activit context['form'] = ActivityForm - # context['user_activity_id'] = Activity.objects.filter(students__id = self.kwargs['students_id']) - # context['page_user'] = page_user + return context @@ -467,7 +465,7 @@ class UpdateTopicView(LoginRequiredMixin, HasRoleMixin, generic.UpdateView): context['subjects'] = topic.subject.course.subjects.all() return context -class CreateSubjectView(LoginRequiredMixin, HasRoleMixin, generic.edit.CreateView): +class CreateSubjectView(LoginRequiredMixin, HasRoleMixin, NotificationMixin, generic.edit.CreateView): allowed_roles = ['professor', 'system_admin'] login_url = reverse_lazy("core:home") @@ -494,6 +492,11 @@ class CreateSubjectView(LoginRequiredMixin, HasRoleMixin, generic.edit.CreateVie self.object.course = course self.object.save() self.object.professors.add(self.request.user) + if self.object.visible: + print(reverse('course:view_subject', args=[self.object.slug])) + super(CreateSubjectView, self).createNotification( " created subject " + self.object.name, + resource_slug = self.object.slug, actor=self.request.user, users= self.object.course.students.all(), + resource_link = reverse('course:view_subject', args=[self.object.slug])) return super(CreateSubjectView, self).form_valid(form) diff --git a/forum/views.py b/forum/views.py index 3683b19..4bef4ef 100644 --- a/forum/views.py +++ b/forum/views.py @@ -163,8 +163,10 @@ 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.subject.students.all()) + + super(CreatePostView, self).createNotification(" posted on " + self.object.forum.name, + resource_slug = self.object.forum.slug, actor=self.request.user, users= self.object.forum.topic.subject.students.all(), + resource_link = reverse('course:forum:view', args=[self.object.forum.slug])) return super(CreatePostView, self).form_valid(form) @@ -266,6 +268,7 @@ class CreatePostAnswerView(LoginRequiredMixin, generic.edit.CreateView): self.object.save() + return super(CreatePostAnswerView, self).form_valid(form) def get_success_url(self): -- libgit2 0.21.2