|
|
|
|
@ -1,9 +1,9 @@ |
|
|
|
|
# -*- coding: utf-8 -*- |
|
|
|
|
from django.views.generic import TemplateView, CreateView, ListView, UpdateView, DetailView, FormView |
|
|
|
|
from django.views.generic import TemplateView, CreateView, ListView, UpdateView, DeleteView, FormView |
|
|
|
|
from django.conf import settings |
|
|
|
|
from django.http import HttpResponseRedirect, HttpResponse |
|
|
|
|
from django.shortcuts import get_object_or_404 |
|
|
|
|
from django.core.urlresolvers import reverse |
|
|
|
|
from django.core.urlresolvers import reverse_lazy |
|
|
|
|
from emencia.django.newsletter.models import Contact, ContactSettings, MailingList, Newsletter |
|
|
|
|
from emencia.django.newsletter.admin_forms import ContactSettingsForm, MailingListForm, NewsletterForm |
|
|
|
|
from ..forms import ContactFilterForm |
|
|
|
|
@ -37,7 +37,7 @@ class ContactList(FormView): |
|
|
|
|
return super(ContactList, self).get(request, *args, **kwargs) |
|
|
|
|
|
|
|
|
|
def form_valid(self, form): |
|
|
|
|
qs = form.filter() |
|
|
|
|
qs, _ = form.filter() |
|
|
|
|
result = paginate_results(qs, page=self.request.GET.get('page')) |
|
|
|
|
context = self.get_context_data(form=form) |
|
|
|
|
context.update({'object_list': result}) |
|
|
|
|
@ -51,6 +51,11 @@ class ContactList(FormView): |
|
|
|
|
return context |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
class DeleteContact(DeleteView): |
|
|
|
|
model = ContactSettings |
|
|
|
|
success_url = reverse_lazy('newsletters_contact_list') |
|
|
|
|
template_name = 'admin/newsletters/confirm_delete.html' |
|
|
|
|
|
|
|
|
|
class UpdateContact(UpdateView): |
|
|
|
|
model = ContactSettings |
|
|
|
|
form_class = ContactSettingsForm |
|
|
|
|
@ -109,8 +114,8 @@ class ExportContacts(FormView): |
|
|
|
|
def get(self, request=None, *args, **kwargs): |
|
|
|
|
form = self.form_class(request.GET) |
|
|
|
|
if form.is_valid(): |
|
|
|
|
qs = form.filter() |
|
|
|
|
qs, title = form.filter() |
|
|
|
|
if qs.count(): |
|
|
|
|
columns = ('first_name', 'email') |
|
|
|
|
return ExcelResponse(qs, 'contact_import', columns,'contacts') |
|
|
|
|
return ExcelResponse(qs, title, columns,'contacts') |
|
|
|
|
return HttpResponseRedirect(self.request.META['HTTP_REFERER']) |
|
|
|
|
|