add contacts to mailing lists

remotes/origin/1203
Nazar Kotjuk 10 years ago
parent c5724b8139
commit c1e790861f
  1. 22
      emencia/django/newsletter/models.py
  2. 7
      emencia/django/newsletter/views/expo_views.py

@ -252,6 +252,28 @@ class ContactSettings(models.Model):
country = models.ManyToManyField('country.Country', blank=True, null=True, verbose_name=_(u'Страны'))
city = models.ManyToManyField('city.City', blank=True, null=True, verbose_name=_(u'Города'))
def save_mailing_lists(self):
practicum_exponent = MailingList.objects.get(id=2)
practicum_organiser = MailingList.objects.get(id=3)
contact = self.contact
if self.exponent_practicum:
practicum_exponent.subscribers.add(contact)
else:
practicum_exponent.subscribers.remove(contact)
if self.organiser_practicum:
practicum_organiser.subscribers.add(contact)
else:
practicum_organiser.subscribers.remove(contact)
def save(self, *args, **kwargs):
super(ContactSettings, self).save(*args, **kwargs)
try:
self.save_mailing_lists()
except:
pass
class MailingList(models.Model):
"""Mailing list"""

@ -4,10 +4,10 @@ from django.views.generic import TemplateView, FormView
from django.http import HttpResponseRedirect, HttpResponse
from django.shortcuts import redirect
from emencia.django.newsletter.forms import ContactForm, ContactSettingsForm
from emencia.django.newsletter.models import Contact, ContactSettings
from emencia.django.newsletter.models import Contact, ContactSettings, MailingList
from emencia.django.newsletter.forms import SubscribeAssideForm
from accounts.models import User
from country.models import Country
class SubscribeView(FormView):
form_class = ContactForm
@ -88,6 +88,9 @@ class ActivationView(TemplateView):
def get(self, request, *args, **kwargs):
activated_contact = self.activate(request, *args, **kwargs)
# add to announce list
m = MailingList.objects.get(id=1)
m.subscribers.add(activated_contact)
if activated_contact:
success_url = self.get_success_url(request, activated_contact)
try:

Loading…
Cancel
Save