From b737ff626eaef160e6bad3574a5648de485ae4c6 Mon Sep 17 00:00:00 2001 From: Felipe Henrique de Almeida Bormann Date: Wed, 1 Feb 2017 15:38:22 -0300 Subject: [PATCH] remove website link is working --- links/templates/links/delete.html | 22 ++++++++++++++++++++++ links/views.py | 33 +++++++++++++++++++++++++++++++++ 2 files changed, 55 insertions(+), 0 deletions(-) diff --git a/links/templates/links/delete.html b/links/templates/links/delete.html index e69de29..519412c 100644 --- a/links/templates/links/delete.html +++ b/links/templates/links/delete.html @@ -0,0 +1,22 @@ +{% load i18n %} + + \ No newline at end of file diff --git a/links/views.py b/links/views.py index ffcf75d..f8270d7 100644 --- a/links/views.py +++ b/links/views.py @@ -141,11 +141,44 @@ class CreateLinkView(LoginRequiredMixin, LogMixin, generic.edit.CreateView): class DeleteLinkView(LoginRequiredMixin, LogMixin, generic.edit.DeleteView): + + log_component = 'resources' + log_action = 'delete' + log_resource = 'link' + log_context = {} login_url = reverse_lazy("users:login") redirect_field_name = 'next' model = Link template_name = 'links/delete.html' + def dispatch(self, request, *args, **kwargs): + slug = self.kwargs.get('slug', '') + link = get_object_or_404(Link, slug = slug) + + if not has_subject_permissions(request.user, link.topic.subject): + return redirect(reverse_lazy('subjects:home')) + return super(DeleteLinkView, self).dispatch(request, *args, **kwargs) + + def get_success_url(self): + messages.success(self.request, _('The Website Link "%s" was removed successfully from virtual environment "%s"!')%(self.object.name, self.object.topic.subject.name)) + + self.log_context['category_id'] = self.object.topic.subject.category.id + self.log_context['category_name'] = self.object.topic.subject.category.name + self.log_context['category_slug'] = self.object.topic.subject.category.slug + self.log_context['subject_id'] = self.object.topic.subject.id + self.log_context['subject_name'] = self.object.topic.subject.name + self.log_context['subject_slug'] = self.object.topic.subject.slug + self.log_context['topic_id'] = self.object.topic.id + self.log_context['topic_name'] = self.object.topic.name + self.log_context['topic_slug'] = self.object.topic.slug + self.log_context['link_id'] = self.object.id + self.log_context['link_name'] = self.object.name + self.log_context['link_slug'] = self.object.slug + + super(DeleteLinkView, self).createLog(self.request.user, self.log_component, self.log_action, self.log_resource, self.log_context) + + return reverse_lazy('subjects:view', kwargs = {'slug': self.object.topic.subject.slug}) + class DetailLinkView(LoginRequiredMixin, LogMixin, generic.detail.DetailView): -- libgit2 0.21.2