|
|
|
@ -108,14 +108,15 @@ class ContactFilterForm(forms.Form): |
|
|
|
city = forms.MultipleChoiceField( |
|
|
|
city = forms.MultipleChoiceField( |
|
|
|
label="Город", |
|
|
|
label="Город", |
|
|
|
choices=[(c.id, c.name) for c in list(set(City.objects.language('ru').filter(contactsettings__isnull=False)))], |
|
|
|
choices=[(c.id, c.name) for c in list(set(City.objects.language('ru').filter(contactsettings__isnull=False)))], |
|
|
|
required=False |
|
|
|
required=False, |
|
|
|
|
|
|
|
widget= forms.SelectMultiple(attrs={'id':'cities'}) |
|
|
|
) |
|
|
|
) |
|
|
|
area = forms.MultipleChoiceField( |
|
|
|
area = forms.MultipleChoiceField( |
|
|
|
label="Area", choices=[(c.id, c.name) for c in list(set(Area.objects.language()))], |
|
|
|
label="Area", choices=[(c.id, c.name) for c in list(set(Area.objects.language()))], |
|
|
|
required=False |
|
|
|
required=False |
|
|
|
) |
|
|
|
) |
|
|
|
mailinglist = forms.ChoiceField( |
|
|
|
mailinglist = forms.ChoiceField( |
|
|
|
choices=[(ml.id, ml.name) for ml in MailingList.objects.all()], |
|
|
|
choices=[("", "---")]+[(ml.id, ml.name) for ml in MailingList.objects.all()], |
|
|
|
label="Список рассылки", |
|
|
|
label="Список рассылки", |
|
|
|
required=False |
|
|
|
required=False |
|
|
|
) |
|
|
|
) |
|
|
|
@ -176,7 +177,7 @@ class ContactImportForm(forms.Form): |
|
|
|
sheet = book.sheet_by_index(0) |
|
|
|
sheet = book.sheet_by_index(0) |
|
|
|
row_list = [sheet.row_values(row_number) for row_number in range(1, sheet.nrows)] |
|
|
|
row_list = [sheet.row_values(row_number) for row_number in range(1, sheet.nrows)] |
|
|
|
for row in row_list: |
|
|
|
for row in row_list: |
|
|
|
c = Contact(email = row[0], first_name=row[1].split()[0], last_name=row[1].split()[-1], tester=is_tester, |
|
|
|
c = Contact(email = row[0], first_name=row[1], last_name="", tester=is_tester, |
|
|
|
activated=activated, valid=True, subscriber=True) |
|
|
|
activated=activated, valid=True, subscriber=True) |
|
|
|
try: |
|
|
|
try: |
|
|
|
c.save() |
|
|
|
c.save() |
|
|
|
@ -189,6 +190,7 @@ class ContactImportForm(forms.Form): |
|
|
|
cs.country.add(country) |
|
|
|
cs.country.add(country) |
|
|
|
cs.save() |
|
|
|
cs.save() |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
class AbstractSubscribeForm(forms.ModelForm): |
|
|
|
class AbstractSubscribeForm(forms.ModelForm): |
|
|
|
email = forms.EmailField(widget=forms.TextInput(attrs={'placeholder': 'Email'})) |
|
|
|
email = forms.EmailField(widget=forms.TextInput(attrs={'placeholder': 'Email'})) |
|
|
|
|
|
|
|
|
|
|
|
@ -226,8 +228,7 @@ class AbstractSubscribeForm(forms.ModelForm): |
|
|
|
return Theme.objects.filter(id__in=themes) |
|
|
|
return Theme.objects.filter(id__in=themes) |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
class SubscribeAssideForm(AbstractSubscribeForm): |
|
|
|
class SubsribeAssideForm(AbstractSubscribeForm): |
|
|
|
|
|
|
|
city = forms.CharField( |
|
|
|
city = forms.CharField( |
|
|
|
widget=forms.HiddenInput(attrs={'id': 'id_subscription_city', 'placeholder': _(u'Город')}), |
|
|
|
widget=forms.HiddenInput(attrs={'id': 'id_subscription_city', 'placeholder': _(u'Город')}), |
|
|
|
required=False) |
|
|
|
required=False) |
|
|
|
@ -237,7 +238,7 @@ class SubsribeAssideForm(AbstractSubscribeForm): |
|
|
|
widget=forms.Select(attrs={'placeholder': _(u'Периодичность'), 'id': 'id_subscription_periodic'})) |
|
|
|
widget=forms.Select(attrs={'placeholder': _(u'Периодичность'), 'id': 'id_subscription_periodic'})) |
|
|
|
|
|
|
|
|
|
|
|
def __init__(self, *args, **kwargs): |
|
|
|
def __init__(self, *args, **kwargs): |
|
|
|
super(SubsribeAssideForm, self).__init__(*args, **kwargs) |
|
|
|
super(SubscribeAssideForm, self).__init__(*args, **kwargs) |
|
|
|
lang = translation.get_language() |
|
|
|
lang = translation.get_language() |
|
|
|
self.fields['theme'] = forms.MultipleChoiceField( |
|
|
|
self.fields['theme'] = forms.MultipleChoiceField( |
|
|
|
choices=[(item.pk, get_by_lang(item, 'name', lang)) for item in SearchQuerySet().models(Theme).all()], |
|
|
|
choices=[(item.pk, get_by_lang(item, 'name', lang)) for item in SearchQuerySet().models(Theme).all()], |
|
|
|
|