diff --git a/fet2020/intern/views.py b/fet2020/intern/views.py index 0cc171e9..aadfec52 100644 --- a/fet2020/intern/views.py +++ b/fet2020/intern/views.py @@ -12,6 +12,7 @@ from django.urls import reverse_lazy, reverse from authentications.decorators import authenticated_user from documents.api import get_pad_link from documents.etherpadlib import add_ep_cookie +from fet2020.utils import add_log_action from tasks.forms import InternTaskCreateForm from tasks.models import Task from .forms import ( @@ -154,11 +155,14 @@ class TopicCreateView(LoginRequiredMixin, CreateView): slug = None + def form_valid(self, form): + form.instance.created_by = self.request.user + add_log_action(self.request, form, "intern", "topic", True) + return super().form_valid(form) + def get_context_data(self, **kwargs): context = super().get_context_data(**kwargs) - - topic_group = TopicGroup.objects.filter(slug=self.slug).first() - context["topic_group"] = topic_group + context["topic_group"] = TopicGroup.objects.get(slug=self.slug) return context @@ -173,12 +177,14 @@ class TopicUpdateView(LoginRequiredMixin, UpdateView): slug = None + def form_valid(self, form): + add_log_action(self.request, form, "intern", "topic", False) + return super().form_valid(form) + def get_context_data(self, **kwargs): context = super().get_context_data(**kwargs) context["slug"] = self.slug - - topic = Topic.objects.filter(slug=self.slug).first() - context["topic"] = topic + context["topic"] = Topic.objects.get(slug=self.slug) return context @@ -200,12 +206,15 @@ class AttachmentCreateView(LoginRequiredMixin, CreateView): slug = None + def form_valid(self, form): + form.instance.created_by = self.request.user + add_log_action(self.request, form, "intern", "attachment", True) + return super().form_valid(form) + def get_context_data(self, **kwargs): context = super().get_context_data(**kwargs) context["slug"] = self.slug - - topic = Topic.objects.filter(slug=self.slug).first() - context["topic"] = topic + context["topic"] = Topic.objects.get(slug=self.slug) return context @@ -228,14 +237,18 @@ class AttachmentUpdateView(LoginRequiredMixin, UpdateView): topic_slug = None slug = None + def form_valid(self, form): + add_log_action(self.request, form, "tasks", "attachment", False) + return super().form_valid(form) + def get_context_data(self, **kwargs): context = super().get_context_data(**kwargs) context["topic_slug"] = self.topic_slug context["slug"] = self.slug - attachment = Attachment.objects.filter( + attachment = Attachment.objects.get( Q(slug=self.slug) & Q(topic__slug=self.topic_slug) - ).first() + ) context["attachment"] = attachment return context @@ -260,18 +273,19 @@ class EtherpadCreateView(LoginRequiredMixin, CreateView): topic_slug = None slug = None + def form_valid(self, form): + form.instance.created_by = self.request.user + add_log_action(self.request, form, "intern", "etherpad", True) + return super().form_valid(form) + def get_context_data(self, **kwargs): context = super().get_context_data(**kwargs) - - self.topic_slug = self.kwargs.get("topic_slug") - self.slug = self.kwargs.get("slug") - context["topic_slug"] = self.topic_slug context["slug"] = self.slug - attachment = Attachment.objects.filter( + attachment = Attachment.objects.get( Q(slug=self.slug) & Q(topic__slug=self.topic_slug) - ).first() + ) context["attachment"] = attachment return context @@ -297,15 +311,19 @@ class FileUploadCreateView(LoginRequiredMixin, CreateView): topic_slug = None slug = None + def form_valid(self, form): + form.instance.created_by = self.request.user + add_log_action(self.request, form, "intern", "fileupload", True) + return super().form_valid(form) + def get_context_data(self, **kwargs): context = super().get_context_data(**kwargs) - context["topic_slug"] = self.topic_slug context["slug"] = self.slug - attachment = Attachment.objects.filter( + attachment = Attachment.objects.get( Q(slug=self.slug) & Q(topic__slug=self.topic_slug) - ).first() + ) context["attachment"] = attachment return context @@ -332,14 +350,14 @@ class TaskCreateView(LoginRequiredMixin, CreateView): def form_valid(self, form): form.instance.created_by = self.request.user - # add_log_action(self.request, form, True) + add_log_action(self.request, form, "tasks", "task", True) return super().form_valid(form) def get_context_data(self, **kwargs): context = super().get_context_data(**kwargs) context["slug"] = self.slug - topic = Topic.objects.filter(slug=self.slug).first() + topic = Topic.objects.get(slug=self.slug) context["topic"] = topic context["task_list"] = topic.task_list