diff --git a/emencia/django/newsletter/forms.py b/emencia/django/newsletter/forms.py index 7bf64bef..85dada87 100644 --- a/emencia/django/newsletter/forms.py +++ b/emencia/django/newsletter/forms.py @@ -129,7 +129,7 @@ class MailingSettingsForm(forms.ModelForm): th = ML_ModelMultipleChoiceField( label=_(u'Тематики'), required=False, queryset=Theme.objects.all()) - area = ML_ModelMultipleChoiceField( + area = forms.ModelMultipleChoiceField( label=_(u'Регион'), required=False, queryset=Area.objects.all()) @@ -153,21 +153,29 @@ class MailingSettingsForm(forms.ModelForm): def __init__(self, *args, **kwargs): super(MailingSettingsForm, self).__init__(*args, **kwargs) - for field in ['f_countries', 'r_cities', 'tg', 'th']: + for field in ['f_countries', 'r_cities', 'tg', 'th', 'area']: self.fields[field].widget.attrs.update({'style': 'display: none;'}) if self.instance and self.instance.pk: - if self.instance.f_countries: - 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: - 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: - self.fields['tg'].c_queryset = self.instance.tags.distinct() - self.fields['tg'].widget.choices = self.fields['tg'].choices - if self.instance.themes: - self.fields['th'].c_queryset = self.instance.themes.distinct() - self.fields['th'].widget.choices = self.fields['th'].choices + # area + self.initial['area'] = set(self.instance.f_countries.values_list('area_id', flat=True)) + + # foreign countries + self.fields['f_countries'].c_queryset = self.instance.f_countries.distinct() + self.fields['f_countries'].widget.choices = self.fields['f_countries'].choices + + # russia cities + self.fields['r_cities'].c_queryset = self.instance.r_cities.distinct() + self.fields['r_cities'].widget.choices = self.fields['r_cities'].choices + + # tag + self.initial['tg'] = set(self.instance.tags.values_list('pk', flat=True)) + self.fields['tg'].c_queryset = self.instance.tags.distinct() + self.fields['tg'].widget.choices = self.fields['tg'].choices + + # theme + self.initial['th'] = set(self.instance.themes.values_list('pk', flat=True)) + self.fields['th'].c_queryset = self.instance.themes.distinct() + self.fields['th'].widget.choices = self.fields['th'].choices def save(self): obj = super(MailingSettingsForm, self).save(commit=False) @@ -194,7 +202,8 @@ class MailingSettingsForm(forms.ModelForm): countries_add.update(c) if countries_add: obj.f_countries.add(*countries_add) - # + + obj.r_cities = self.cleaned_data['r_cities'] or [] obj.tags = self.cleaned_data.get('tg') or [] obj.themes = self.cleaned_data.get('th') or [] obj.save() diff --git a/emencia/django/newsletter/templates/newsletter/recommend/create.html b/emencia/django/newsletter/templates/newsletter/recommend/create.html index 4d594db6..754a11ba 100644 --- a/emencia/django/newsletter/templates/newsletter/recommend/create.html +++ b/emencia/django/newsletter/templates/newsletter/recommend/create.html @@ -51,6 +51,38 @@ $(function(){ } }); + $('#id_conference').select2({ + placeholder: 'Найти', + width: 'element', + ajax: { + url: '/admin/conference/search/', + dataType: "json", + quietMillis: 200, + multiple: true, + + data: function(term, page){ + return {term: term, + page: page}; + }, + + results: function (data) { + var results = []; + $.each(data, function(index, item){ + results.push({ + id: item.id, + text: item.label + }); + }); + return {results: results}; + } + }, + initSelection : function(element, callback) { + var id= $(element).val(); + var text = $(element).attr('data-init-text'); + callback({id: id, text:text}); + + } + }); }); {% endblock %} diff --git a/emencia/django/newsletter/templates/newsletter/recommend/list.html b/emencia/django/newsletter/templates/newsletter/recommend/list.html index e061a02c..17761851 100644 --- a/emencia/django/newsletter/templates/newsletter/recommend/list.html +++ b/emencia/django/newsletter/templates/newsletter/recommend/list.html @@ -10,15 +10,12 @@
| {{ item.theme }} | #}{{ item.event }} | -{% trans "Изменить" %} | -{% trans "Удалить" %} | ++ {% trans "Изменить" %} + {% trans "Удалить" %} + | + {#{% trans "Удалить" %} | #} {% endfor %} diff --git a/templates/c_admin/expobanner/paid_create.html b/templates/c_admin/expobanner/paid_create.html index 36c9ac85..1ce5bab7 100644 --- a/templates/c_admin/expobanner/paid_create.html +++ b/templates/c_admin/expobanner/paid_create.html @@ -71,7 +71,7 @@ callback({id: id, text:text}); } - }); + }); }); {% endblock %} diff --git a/templates/client/accounts/mailing_settings.html b/templates/client/accounts/mailing_settings.html index 68be3828..991178ef 100644 --- a/templates/client/accounts/mailing_settings.html +++ b/templates/client/accounts/mailing_settings.html @@ -72,7 +72,6 @@