From 38d0d27e5aed910b65b02061f8ebb8228f2ad352 Mon Sep 17 00:00:00 2001 From: Alexander Burdeinyi Date: Mon, 5 Dec 2016 07:48:09 +0200 Subject: [PATCH] m --- conference/admin.py | 8 ++++--- conference/forms.py | 20 ++++++++-------- functions/model_mixin.py | 2 +- settings/admin.py | 13 +++++++++++ static/client/js/rejs/tops.js | 6 +++-- templates/c_admin/conference/conference.html | 18 +++++++-------- .../includes/conference/conference_list.html | 2 +- .../conference/conference_partner.html | 23 ++++++++----------- .../client/includes/exposition/expo_top.html | 2 +- .../includes/exposition/exposition_list.html | 2 +- 10 files changed, 55 insertions(+), 41 deletions(-) diff --git a/conference/admin.py b/conference/admin.py index 9f020215..5656617c 100644 --- a/conference/admin.py +++ b/conference/admin.py @@ -215,7 +215,8 @@ def conference_change(request, url): 'link':conference.link, 'conference_id':conference.id, 'expohit': conference.expohit, 'discount': conference.discount,'canceled': conference.canceled, 'moved': conference.moved, 'visitors': conference.visitors, 'members': conference.members, - 'quality_label': [item for item, bool in conference.quality_label if bool==True]} + # 'quality_label': [item for item, bool in conference.quality_label if bool==True] + } if conference.country: data['country'] = conference.country.id @@ -290,7 +291,8 @@ class ConferenceView(AdminView): 'discount': obj.discount,'canceled': obj.canceled, 'moved': obj.moved, 'visitors': obj.visitors, 'members': obj.members, 'logo': obj.logo, 'audience': obj.audience.all().values_list('pk', flat=True), - 'quality_label': [item for item, bool in obj.quality_label if bool==True]} + # 'quality_label': [item for item, bool in obj.quality_label if bool==True], + } if obj.place: data['place'] = obj.place.id @@ -309,7 +311,7 @@ class ConferenceView(AdminView): data['description_%s' % code] = trans_obj.description data['main_title_%s' % code] = trans_obj.main_title data['time_%s' % code] = trans_obj.time - data['main_themes_%s' % code] = trans_obj.main_themes + # data['main_themes_%s' % code] = trans_obj.main_themes data['discount_description_%s' % code] = trans_obj.discount_description data['title_%s' % code] = trans_obj.title data['keywords_%s' % code] = trans_obj.keywords diff --git a/conference/forms.py b/conference/forms.py index 267fa2c0..d025f436 100644 --- a/conference/forms.py +++ b/conference/forms.py @@ -75,7 +75,7 @@ class ConferenceCreateForm(forms.Form): foundation_year = forms.CharField(label=_(u'Год основания'), required=False) members = forms.CharField(label=_(u'Участники'), required=False) members_fc = forms.IntegerField(label=_(u'Ожидаемое количество участников'), required=False) - visitors = forms.CharField(label=_(u'Посетители'), required=False) + # visitors = forms.CharField(label=_(u'Посетители'), required=False) discount = forms.CharField(label=_(u'Cкидка(%)'), required=False) # currency = forms.ChoiceField(label=_(u'Валюта'), choices=currencies, required=False) @@ -85,9 +85,9 @@ class ConferenceCreateForm(forms.Form): expohit = forms.BooleanField(label=_(u'Expohit'), required=False) canceled = forms.BooleanField(label=_(u'Отменена'), required=False) moved = forms.BooleanField(label=_(u'Перенесена'), required=False) - quality_label = forms.MultipleChoiceField(label=_(u'Тип'), required=False, - choices=[('ufi', 'UFI'), ('rsva', 'РСВЯ'), ('exporating', 'ExpoRating')], - widget=forms.CheckboxSelectMultiple()) + # quality_label = forms.MultipleChoiceField(label=_(u'Тип'), required=False, + # choices=[('ufi', 'UFI'), ('rsva', 'РСВЯ'), ('exporating', 'ExpoRating')], + # widget=forms.CheckboxSelectMultiple()) speakers = forms.ModelMultipleChoiceField(label=_(u'Спикеры'), queryset=Speaker.objects.all(), required=False) @@ -113,8 +113,8 @@ class ConferenceCreateForm(forms.Form): required=False, widget=CKEditorWidget) self.fields['time_%s' % code] = forms.CharField(label=_(u'Время работы'), required=False, widget=CKEditorWidget) - self.fields['main_themes_%s' % code] = forms.CharField(label=_(u'Основные темы'), - required=False, widget=CKEditorWidget) + # self.fields['main_themes_%s' % code] = forms.CharField(label=_(u'Основные темы'), + # required=False, widget=CKEditorWidget) self.fields['discount_description_%s' % code] = forms.CharField(label=_(u'Описание скидки'), required=False, widget=CKEditorWidget) #meta data @@ -160,7 +160,7 @@ class ConferenceCreateForm(forms.Form): conference.programm_link = data['programm_link'] conference.members = data['members'] conference.members_fc = data['members_fc'] - conference.visitors = data['visitors'] + # conference.visitors = data['visitors'] # conference.currency = data['currency'] conference.tax = data['tax'] @@ -175,10 +175,10 @@ class ConferenceCreateForm(forms.Form): conference.place_alt = data['place_alt'] # generates bitfield flag = 0 - if data['quality_label']: - flag = reduce(lambda x,y: x|y, (getattr(Conference.quality_label, item) for item in data['quality_label'])) + # if data['quality_label']: + # flag = reduce(lambda x,y: x|y, (getattr(Conference.quality_label, item) for item in data['quality_label'])) - conference.quality_label = flag + # conference.quality_label = flag conference.audience = data['audience'] diff --git a/functions/model_mixin.py b/functions/model_mixin.py index f603deac..6ccb97ac 100644 --- a/functions/model_mixin.py +++ b/functions/model_mixin.py @@ -131,7 +131,7 @@ class EventMixin(object): events.extend(qs.filter(data_begin__gte=now).exclude(pk__in=exclude_pks)[:3]) exclude_pks.update([x.pk for x in events]) return (list( - sorted((chain(zip(*[x for x in [events_m2, events_m, events] if x]))[:3]), key=lambda x: x.data_begin)), + sorted(list(chain(*zip(*[x for x in [events_m2, events_m, events] if x])))[:3], key=lambda x: x.data_begin)), exclude_pks) def get_nearest_events(self): diff --git a/settings/admin.py b/settings/admin.py index 87f9b39e..20d176eb 100644 --- a/settings/admin.py +++ b/settings/admin.py @@ -7,6 +7,7 @@ from django.http import HttpResponseRedirect from django.core.urlresolvers import reverse, reverse_lazy from django.core.context_processors import csrf from django.conf import settings +from django.core.cache import cache from functions.custom_views import ContextMixin from .forms import MainPageArticle @@ -84,6 +85,18 @@ class EventSectionSettings(ContextMixin, FormView): def form_valid(self, form): form.save() + keys = [ + 'expo_city_catalog_ru', + 'expo_city_catalog_en', + 'expo_country_catalog_en', + 'expo_country_catalog_ru', + 'conf_country_catalog_ru', + 'conf_country_catalog_en', + 'conf_city_catalog_en', + 'conf_city_catalog_ru', + ] + for key in keys: + cache.delete(key) return super(EventSectionSettings, self).form_valid(form) diff --git a/static/client/js/rejs/tops.js b/static/client/js/rejs/tops.js index 9c7e89ba..2d3d43d2 100644 --- a/static/client/js/rejs/tops.js +++ b/static/client/js/rejs/tops.js @@ -70,7 +70,7 @@ var removeDublicates = function () { $('div#' + PARENT_ID + ' ul li.cl-item').each(function(index, el) { - $('div.page-body ul.cat-list li.cl-item a[href=\'' + $(el).data('url') + '\']').parents('li.cl-item').remove(); + $('div.page-body ul.cat-list li.cl-item[data-slug=\'' + $(el).data('slug') + '\']').not(el).remove(); }); } @@ -79,7 +79,9 @@ if (parent) { parent.innerHTML = text; - removeDublicates(); + $(document).ready(function () { + removeDublicates(); + }); } }; diff --git a/templates/c_admin/conference/conference.html b/templates/c_admin/conference/conference.html index 0bdc1591..87b4db81 100644 --- a/templates/c_admin/conference/conference.html +++ b/templates/c_admin/conference/conference.html @@ -283,9 +283,9 @@ {# main_themes #} - {% with field='main_themes' form=form languages=languages %} - {% include 'c_admin/forms/multilang.html' %} - {% endwith %} +{# {% with field='main_themes' form=form languages=languages %}#} +{# {% include 'c_admin/forms/multilang.html' %}#} +{# {% endwith %}#} {# time #} {% with field='time' form=form languages=languages %} {% include 'c_admin/forms/multilang.html' %} @@ -298,12 +298,12 @@ {# quality_label #} -
- -
{{ form.quality_label }} - {{ form.quality_label.errors }} -
-
+{#
#} +{# #} +{#
{{ form.quality_label }}#} +{# {{ form.quality_label.errors }}#} +{#
#} +{#
#} {# canceled #}
diff --git a/templates/client/includes/conference/conference_list.html b/templates/client/includes/conference/conference_list.html index c2d95e94..54f734bb 100644 --- a/templates/client/includes/conference/conference_list.html +++ b/templates/client/includes/conference/conference_list.html @@ -7,7 +7,7 @@
- + {% if object.place or object.place_alt %}
{% if object.place %}
@@ -373,24 +377,17 @@
{% thumbnail object.place.get_logo "349x401" as im %} -{# {% epmty %}#} {% endthumbnail %} - {# #}
{% else %}

{% trans 'Место проведения' %}

{{ object.place_alt }}

{{ event.country.name }}, {{ event.city.name }}{% if event.place_alt %} , {{ event.place_alt }}{% endif %}
-{#
Экспозиционная площадь павильона №8 – 14 842 кв.м
#} -{#

Главное событие отрасли высоких технологий — 9-й Russian Interactive Week (RIW) — это место встреч, коммуникаций, обмена опытом и демонстрации достижений российской отрасли высоких технологий и инноваций. RIW — ежегодное осеннее выставочно- конференционное событие сразу четырех отраслей: Интернет, Телеком, Медиа, Софт. А с 2016 года в RIW активно

#} -{# {% trans 'подробнее' %}#}
-{#
#} -{# #} -{#
#} {% endif %}
+ {% endif %} {% comment %} {% if event.members or event.visitors or event.foundation_year %} @@ -447,7 +444,7 @@ {% else %} -

{% trans 'Для отправки комментариев авторизуйтесь.' %}

+

{% trans 'Если вы хотите оставить отзыв или комментарий' %}, {% trans 'авторизуйтесь' %}.

{% endif %} diff --git a/templates/client/includes/exposition/expo_top.html b/templates/client/includes/exposition/expo_top.html index 986ef910..3e14cc7f 100644 --- a/templates/client/includes/exposition/expo_top.html +++ b/templates/client/includes/exposition/expo_top.html @@ -5,7 +5,7 @@