|
|
|
@ -119,7 +119,7 @@ class ML_ModelMultipleChoiceField(forms.ModelMultipleChoiceField): |
|
|
|
class MailingSettingsForm(forms.ModelForm): |
|
|
|
class MailingSettingsForm(forms.ModelForm): |
|
|
|
r_cities = ML_ModelMultipleChoiceField( |
|
|
|
r_cities = ML_ModelMultipleChoiceField( |
|
|
|
label=_(u'Города России'), required=False, |
|
|
|
label=_(u'Города России'), required=False, |
|
|
|
queryset=City.objects.all().distinct()) |
|
|
|
queryset=City.objects.all()) |
|
|
|
f_countries = ML_ModelMultipleChoiceField( |
|
|
|
f_countries = ML_ModelMultipleChoiceField( |
|
|
|
label=_(u'Зарубежные страны'), required=False, |
|
|
|
label=_(u'Зарубежные страны'), required=False, |
|
|
|
queryset=Country.objects.all()) |
|
|
|
queryset=Country.objects.all()) |
|
|
|
@ -153,22 +153,21 @@ class MailingSettingsForm(forms.ModelForm): |
|
|
|
|
|
|
|
|
|
|
|
def __init__(self, *args, **kwargs): |
|
|
|
def __init__(self, *args, **kwargs): |
|
|
|
super(MailingSettingsForm, self).__init__(*args, **kwargs) |
|
|
|
super(MailingSettingsForm, self).__init__(*args, **kwargs) |
|
|
|
# self.fields['f_countries'].queryset = Country.objects.none() |
|
|
|
for field in ['f_countries', 'r_cities', 'tg', 'th']: |
|
|
|
# self.fields['r_cities'].queryset = City.objects.none() |
|
|
|
self.fields[field].widget.attrs.update({'style': 'display: none;'}) |
|
|
|
# self.fields['tg'].queryset = Tag.objects.none() |
|
|
|
|
|
|
|
# self.fields['th'].queryset = Theme.objects.none() |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
if self.instance and self.instance.pk: |
|
|
|
if self.instance and self.instance.pk: |
|
|
|
if self.instance.f_countries: |
|
|
|
if self.instance.f_countries: |
|
|
|
self.fields['f_countries'].c_queryset = self.instance.f_countries.distinct() |
|
|
|
self.fields['f_countries'].c_queryset = self.instance.f_countries.distinct() |
|
|
|
|
|
|
|
self.fields['f_countries'].widget.choices = self.fields['f_countries'].choices |
|
|
|
if self.instance.r_cities: |
|
|
|
if self.instance.r_cities: |
|
|
|
self.fields['r_cities'].c_queryset = self.instance.r_cities.distinct() |
|
|
|
self.fields['r_cities'].c_queryset = self.instance.r_cities.distinct() |
|
|
|
|
|
|
|
self.fields['r_cities'].widget.choices = self.fields['r_cities'].choices |
|
|
|
if self.instance.tags: |
|
|
|
if self.instance.tags: |
|
|
|
self.fields['tg'].c_queryset = self.instance.tags.distinct() |
|
|
|
self.fields['tg'].c_queryset = self.instance.tags.distinct() |
|
|
|
|
|
|
|
self.fields['tg'].widget.choices = self.fields['tg'].choices |
|
|
|
if self.instance.themes: |
|
|
|
if self.instance.themes: |
|
|
|
self.fields['th'].c_queryset = self.instance.themes.distinct() |
|
|
|
self.fields['th'].c_queryset = self.instance.themes.distinct() |
|
|
|
# import pdb; |
|
|
|
self.fields['th'].widget.choices = self.fields['th'].choices |
|
|
|
# pdb.set_trace(); |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
def save(self): |
|
|
|
def save(self): |
|
|
|
obj = super(MailingSettingsForm, self).save(commit=False) |
|
|
|
obj = super(MailingSettingsForm, self).save(commit=False) |
|
|
|
|