remotes/origin/1203
Kotiuk Nazarii 11 years ago
commit d74898d75c
  1. 4
      conference/urls.py
  2. 10
      conference/views.py
  3. 3
      exposition/urls.py
  4. 11
      exposition/views.py
  5. 45
      functions/search_forms.py
  6. 3
      templates/client/index.html
  7. 3
      templates/client/simple_pages/about.html
  8. BIN
      templates/client/static_client/img/partners/IPSA-pict.png
  9. BIN
      templates/client/static_client/img/partners/Rosupack.png
  10. BIN
      templates/client/static_client/img/partners/congress_office.png
  11. BIN
      templates/client/static_client/img/partners/deutsche-messe-2.png
  12. BIN
      templates/client/static_client/img/partners/deutsche-messe.png
  13. BIN
      templates/client/static_client/img/partners/expocentr.png
  14. BIN
      templates/client/static_client/img/partners/expoforum.png
  15. BIN
      templates/client/static_client/img/partners/ite.png
  16. BIN
      templates/client/static_client/img/partners/messe-dusseldorf.png
  17. BIN
      templates/client/static_client/img/partners/messe-frankfurt.png
  18. BIN
      templates/client/static_client/img/partners/nurnberg-messe.png
  19. BIN
      templates/client/static_client/img/partners/reed-exhibitions.png
  20. 34
      theme/manager.py

@ -2,7 +2,7 @@
from django.conf.urls import patterns, include, url
from views import ConferenceDetail, ConferenceList, ConferenceByCity, ConferenceByCountry, ConferenceByTheme,\
ConferenceCountryCatalog, ConferenceCityCatalog, ConferenceTagCatalog, ConferenceThemeCatalog, ConferenceMembers,\
ConferenceVisitors, ConferenceServiceView, ConferenceThankView
ConferenceVisitors, ConferenceServiceView, ConferenceThankView, ConferenceByTag
from exposition.views import ExpositionSearchView
urlpatterns = patterns('',
@ -53,6 +53,7 @@ urlpatterns = patterns('',
url(r'conference/theme/(?P<slug>.*)/(?P<year>\d+)/$', ConferenceThemeCatalog.as_view(), {'meta_id':30}),
url(r'conference/theme/(?P<slug>.*)/$', ConferenceThemeCatalog.as_view(), {'meta_id':29}),
# tag catalog
url(r'conference/tag/$', ConferenceByTag.as_view(), {'meta_id':50}),
url(r'conference/tag/(?P<slug>.*)/(?P<year>\d+)/(?P<month>.*)/page/(?P<page>\d+)/$', ConferenceTagCatalog.as_view(), {'meta_id':34}),
url(r'conference/tag/(?P<slug>.*)/(?P<year>\d+)/page/(?P<page>\d+)/$', ConferenceTagCatalog.as_view(), {'meta_id':33}),
url(r'conference/tag/(?P<slug>.*)/page/(?P<page>\d+)/$', ConferenceTagCatalog.as_view(), {'meta_id':32}),
@ -67,6 +68,7 @@ urlpatterns = patterns('',
url(r'^conference/(?P<slug>.*)/service/thanks/', ConferenceThankView.as_view()),
url(r'conference/(?P<slug>.*)/service/(?P<service_url>.*)/', ConferenceServiceView.as_view()),
# conf list
url(r'conference/(?P<year>\d+)/(?P<month>.*)/page/(?P<page>\d+)/$', ConferenceList.as_view(), {'meta_id':22}),
url(r'conference/(?P<year>\d+)/page/(?P<page>\d+)/$', ConferenceList.as_view(), {'meta_id':21}),

@ -53,6 +53,16 @@ class ConferenceByCountry(ConferenceBy):
# .filter(conference_country__country__isnull=False, translations__language_code=lang)\
# .order_by('translations__name').distinct()
class ConferenceByTag(ConferenceBy):
model = Tag
title1 = _(u'По тегам')
title2 = _(u'Коференции мира по тегам')
catalog = 'tag/'
def get_queryset(self):
return self.model.active.conference_themes_with_count()
class ConferenceByTheme(ConferenceBy):
model = Theme

@ -1,7 +1,7 @@
# -*- coding: utf-8 -*-
from django.conf.urls import patterns, include, url
from views import ExpositionStatistic, ExpositionPrice,\
ExpositionProgramme, ExpositionSearchView, ExpositionByCountry, ExpositionByTheme, ExpositionByCity
ExpositionProgramme, ExpositionSearchView, ExpositionByCountry, ExpositionByTheme, ExpositionByCity, ExpositionByTag
from django.views.decorators.cache import cache_page
@ -79,6 +79,7 @@ urlpatterns = patterns('',
url(r'^expo/(?P<year>\d+)/(?P<month>.*)/$', ExpoList.as_view(), {'meta_id':4}),
url(r'^expo/(?P<year>\d+)/$', ExpoList.as_view(), {'meta_id':3}),
url(r'^expo/page/(?P<page>\d+)/$', ExpoList.as_view(), {'meta_id':2}),
url(r'^expo/tag/$', ExpositionByTag.as_view(), {'meta_id':2}),
# expo page
url(r'^expo/(?P<slug>.*)/$', ExpoDetail.as_view(), {'meta_id':18}),# event
url(r'^expo/$', ExpoList.as_view() , {'meta_id':2}),

@ -71,6 +71,17 @@ class ExpositionByTheme(ExpositionBy):
# .filter(exposition_themes__theme__isnull=False, translations__language_code=lang)\
# .order_by('translations__name').distinct()
class ExpositionByTag(ExpositionBy):
cache_range = settings.CACHE_RANGE
model = Tag
title1 = _(u'По тегам')
title2 = _(u'Выставки мира по тегам')
catalog = 'tag/'
def get_queryset(self):
return self.model.active.expo_themes_with_count()
class ExpositionByCity(ExpositionBy):
cache_range = settings.CACHE_RANGE

@ -179,21 +179,26 @@ class AbstactSearchForm(forms.Form):
co = self.cleaned_data.get('co')
ci = self.cleaned_data.get('ci')
area = self.cleaned_data.get('area')
sqs = SearchQuerySet().models(*self.models).all()
if q:
sqs = sqs.autocomplete(content_auto=q)
if w:
sqs = sqs.filter(where__contains=w)
if fr:
sqs = sqs.filter(data_begin__gte=fr)
if to:
sqs = sqs.filter(data_begin__lte=to)
if th:
sqs = sqs.filter(theme__in=th)
if tg:
sqs = sqs.filter(tag__in=tg)
if th or tg:
if th:
sqs = sqs.filter(theme__in=th)
if tg:
sqs = sqs.filter(tag__in=tg)
else:
if q:
sqs = sqs.autocomplete(content_auto=q)
if w:
sqs = sqs.filter(where__contains=w)
place_filter = None
@ -276,18 +281,19 @@ class ExpositionSearchForm(AbstactSearchForm):
sqs = SearchQuerySet().models(Exposition).all()
if q:
sqs = sqs.autocomplete(content_auto=q)
if w:
sqs = sqs.filter(where__contains=w)
if fr:
sqs = sqs.filter(data_begin__gte=fr)
if to:
sqs = sqs.filter(data_begin__lte=to)
if th:
sqs = sqs.filter(theme__in=th)
if tg:
sqs = sqs.filter(tag__in=tg)
if th or tg:
if th:
sqs = sqs.filter(theme__in=th)
if tg:
sqs = sqs.filter(tag__in=tg)
else:
if q:
sqs = sqs.autocomplete(content_auto=q)
place_filter = None
@ -313,6 +319,9 @@ class ExpositionSearchForm(AbstactSearchForm):
#sqs = sqs.filter(city_id__in=ci)
if place_filter:
sqs = sqs.filter(place_filter)
else:
if w:
sqs = sqs.filter(where__contains=w)
return sqs.order_by('data_begin')

@ -134,7 +134,10 @@
<ul class="mp-partners-list">
<li><img src="{% static 'client/img/partners/deutsche-messe-2.png' %}" /></li>
<li><img src="{% static 'client/img/partners/ite.png' %}" /></li>
<li><img src="{% static 'client/img/partners/congress_office.png' %}" /></li>
{% comment %}
<li><img src="{% static 'client/img/partners/nurnberg-messe.png' %}" /></li>
{% endcomment %}
<li><img src="{% static 'client/img/partners/reed-exhibitions.png' %}" /></li>
<li><img src="{% static 'client/img/partners/messe-dusseldorf.png' %}" /></li>
</ul>

@ -250,7 +250,10 @@
<td class="delimiter">&nbsp;</td>
<td>
<div class='pict-over'>
<img src="{% static 'client/img/partners/congress_office.png' %}" alt="" />
{% comment %}
<img src="{% static 'client/img/partners/new/Lippman Connects.jpg' %}" alt="" />
{% endcomment %}
</div>
</td>
<td class="delimiter">&nbsp;</td>

Binary file not shown.

Before

Width:  |  Height:  |  Size: 113 KiB

After

Width:  |  Height:  |  Size: 28 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 115 KiB

After

Width:  |  Height:  |  Size: 28 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.8 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.2 KiB

After

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.0 KiB

After

Width:  |  Height:  |  Size: 2.6 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.8 KiB

After

Width:  |  Height:  |  Size: 1.6 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.3 KiB

After

Width:  |  Height:  |  Size: 1.9 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.6 KiB

After

Width:  |  Height:  |  Size: 2.0 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.3 KiB

After

Width:  |  Height:  |  Size: 1.9 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.7 KiB

After

Width:  |  Height:  |  Size: 1.4 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.5 KiB

After

Width:  |  Height:  |  Size: 2.2 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.9 KiB

After

Width:  |  Height:  |  Size: 2.6 KiB

@ -136,3 +136,37 @@ class TagActiveManager(TranslationManager):
cache.set(key, tags, self.cache_time)
return tags
def expo_themes_with_count(self):
lang = translation.get_language()
key = 'used_expo_tags_count_%s'%lang
cached_tags = cache.get(key)
if cached_tags:
return cached_tags
else:
from exposition.models import Exposition
now = datetime.datetime.now().date()
# id of unique cities
tags_id = [item['tag'] for item in Exposition.objects.filter(is_published=True, data_end__gte=now).values('tag').distinct()]
#themes = set(list(self.language().filter(id__in=themes_id).extra(select=sql)))
tags = set(list(self.language().filter(id__in=tags_id)))
tags = sorted(tags, key=lambda x: x.name)
cache.set(key, tags, self.cache_time)
return tags
def conference_themes_with_count(self):
lang = translation.get_language()
key = 'used_conference_tags_count_%s'%lang
cached_tags = cache.get(key)
if cached_tags:
return cached_tags
else:
from conference.models import Conference
now = datetime.datetime.now().date()
# id of unique cities
tags_id = [item['tag'] for item in Conference.objects.filter(is_published=True, data_end__gte=now).values('tag').distinct()]
#themes = set(list(self.language().filter(id__in=themes_id).extra(select=sql)))
tags = set(list(self.language().filter(id__in=tags_id)))
tags = sorted(tags, key=lambda x: x.name)
cache.set(key, tags, self.cache_time)
return tags

Loading…
Cancel
Save