class ComplaintUpdate(TemplateView):
    form = None
    template_name = "complaint_edit.html"

    def get(self, request, *args, **kwargs):
        self.form = ComplaintForm(instance=Complaint.objects.get(
            pk=self.kwargs["complaint_id"]))
        return super(ComplaintUpdate, self).get(request, *args, **kwargs)

    def get_context_data(self, **kwargs):
        context = super(ComplaintUpdate, self).get_context_data(**kwargs)
        context["complaint"] = Complaint.objects.get(
            pk=self.kwargs["complaint_id"])
        context["form"] = self.form
        return context

    def post(self, request, *args, **kwargs):
        complaint = Complaint.objects.get(pk=self.kwargs["complaint_id"])
        self.form = ComplaintForm(request.POST,
                                  request.FILES,
                                  instance=complaint)
        print(self.form.errors)
        if self.form.is_valid():
            self.form.save()
            messages.add_message(request, messages.SUCCESS,
                                 "Жалоба успешно обновлена!")
            return redirect("index", group_id=complaint.group.id)
        else:
            messages.add_message(
                request, messages.ERROR,
                "Ошибка обновления! {}".format(self.form.errors))
            return super(ComplaintUpdate, self).get(request, *args, **kwargs)
 def post(self, request, *args, **kwargs):
     self.form = ComplaintForm(request.POST, request.FILES)
     if self.form.is_valid():
         messages.add_message(request, messages.SUCCESS,
                              "Жалоба успешно добавлена!")
         obj = self.form.save(commit=False)
         users = User.objects.filter(groups=obj.group)
         emails = []
         for user in users:
             emails.append(user.email)
         if not emails:
             emails.append('*****@*****.**')
         send_mail(
             'НОВАЯ ЖАЛОБА ОТ : {}'.format(obj.fio),
             'Номер жалобы: {} \nФИО: {}\nСодержание обращения: {} \nСсылка: https://192.168.10.21/complaints/'
             .format(obj.name, obj.fio, obj.description),
             settings.EMAIL_HOST_USER,
             emails,
             fail_silently=False)
         self.form.save()
         return redirect("index")
     else:
         messages.add_message(
             request, messages.ERROR,
             "Ошибка добавления! {}".format(self.form.errors))
         return super(ComplaintCreate, self).get(request, *args, **kwargs)
 def post(self, request, *args, **kwargs):
     complaint = Complaint.objects.get(pk=self.kwargs["complaint_id"])
     self.form = ComplaintForm(request.POST,
                               request.FILES,
                               instance=complaint)
     print(self.form.errors)
     if self.form.is_valid():
         self.form.save()
         messages.add_message(request, messages.SUCCESS,
                              "Жалоба успешно обновлена!")
         return redirect("index", group_id=complaint.group.id)
     else:
         messages.add_message(
             request, messages.ERROR,
             "Ошибка обновления! {}".format(self.form.errors))
         return super(ComplaintUpdate, self).get(request, *args, **kwargs)
Exemple #4
0
def edit(request, complaint_id=None):
    if complaint_id is not None:
        try:
            complaint = Complaint.objects.pluggable_object(request).get(pk=complaint_id)
        except Complaint.DoesNotExist:
            raise Http404
    else:
        complaint = None

    if request.method == 'POST':
        form = ComplaintForm(request.POST, instance=complaint)
        if form.is_valid():
            complaint = form.save(request)
            return HttpResponseRedirect(pluggable_reverse(request, 'complaints_index'))
    else:
        form = ComplaintForm(instance=complaint)

    return render_to_response(request.pluggable.config.get('template', 'complaints/edit.html'), {
        'form': form,
        'base_template': request.pluggable.config.get('base_template', 'base.html'),
        }, context_instance=RequestContext(request))
Exemple #5
0
def edit(request, complaint_id=None):
    if complaint_id is not None:
        try:
            complaint = Complaint.objects.pluggable_object(request).get(
                pk=complaint_id)
        except Complaint.DoesNotExist:
            raise Http404
    else:
        complaint = None

    if request.method == 'POST':
        form = ComplaintForm(request.POST, instance=complaint)
        if form.is_valid():
            complaint = form.save(request)
            return HttpResponseRedirect(
                pluggable_reverse(request, 'complaints_index'))
    else:
        form = ComplaintForm(instance=complaint)

    return render_to_response(request.pluggable.config.get(
        'template', 'complaints/edit.html'), {
            'form':
            form,
            'base_template':
            request.pluggable.config.get('base_template', 'base.html'),
        },
                              context_instance=RequestContext(request))
Exemple #6
0
def index(request):
    complaints = Complaint.objects.pluggable_object(request)
    form = ComplaintForm()
    return render_to_response(request.pluggable.config.get(
        'template', 'complaints/index.html'), {
            'complaints':
            complaints,
            'form':
            form,
            'base_template':
            request.pluggable.config.get('base_template', 'base.html'),
        },
                              context_instance=RequestContext(request))
 def get(self, request, *args, **kwargs):
     self.form = ComplaintForm(instance=Complaint.objects.get(
         pk=self.kwargs["complaint_id"]))
     return super(ComplaintUpdate, self).get(request, *args, **kwargs)
 def get(self, request, *args, **kwargs):
     self.form = ComplaintForm()
     return super(ComplaintCreate, self).get(request, *args, **kwargs)