Linked services fixing

remotes/origin/1203
Nazar Kotjuk 10 years ago
parent e70f80d80a
commit db7a8f2715
  1. 7
      exposition/models.py
  2. 10
      service/admin_urls.py
  3. 9
      service/models.py
  4. 12
      templates/admin/service/linked_service_list.html
  5. 17
      templates/client/includes/exposition/exposition_services.html

@ -178,6 +178,13 @@ class Exposition(TranslatableModel, EventMixin, ExpoMixin):
return list(qs) return list(qs)
def get_services_detail(self):
excluded = ['visit', 'tickets']
country_ids = [item for item, bool in self.country.services if bool==True]
ids = [item for item, bool in self.services if bool==True]
qs = Service.objects.language().exclude(url__in=excluded).filter(Q(Q(url__in=country_ids) & Q(type=Service.type.expo)) | Q(url__in=ids))
return qs
def get_parent(self): def get_parent(self):
return {} return {}
def get_absolute_url(self): def get_absolute_url(self):

@ -5,8 +5,8 @@ from views import CallBackListView, VisitListView, TranslationListView, Advertis
from service.admin import ServiceControlList, ServiceControl, LinkedServiceList, LinkedServiceUpdateView, LinkedServiceDeleteView from service.admin import ServiceControlList, ServiceControl, LinkedServiceList, LinkedServiceUpdateView, LinkedServiceDeleteView
urlpatterns = patterns('service.admin', urlpatterns = patterns('service.admin',
url(r'^control/list/$', ServiceControlList.as_view()), #url(r'^control/list/$', ServiceControlList.as_view()),
url(r'^control/(?P<pk>.*)/$', ServiceControl.as_view()), #url(r'^control/(?P<pk>.*)/$', ServiceControl.as_view()),
url(r'^add.*/$', 'service_add'), url(r'^add.*/$', 'service_add'),
url(r'^delete/(?P<url>.*)/$', 'service_delete'), url(r'^delete/(?P<url>.*)/$', 'service_delete'),
url(r'^change/(?P<url>.*)/$', 'service_change'), url(r'^change/(?P<url>.*)/$', 'service_change'),
@ -18,9 +18,9 @@ urlpatterns = patterns('service.admin',
url(r'order/participation/$', ParticipationListView.as_view()), url(r'order/participation/$', ParticipationListView.as_view()),
url(r'order/remote/$', RemoteListView.as_view()), url(r'order/remote/$', RemoteListView.as_view()),
url(r'order/tickets/$', TicketsListView.as_view()), url(r'order/tickets/$', TicketsListView.as_view()),
url('^test/delete/(?P<url>[a-z]*)/', LinkedServiceDeleteView.as_view(), name='linked_service_delete'), url(r'^control/delete/(?P<url>[a-z]*)/', LinkedServiceDeleteView.as_view(), name='linked_service_delete'),
url('^test/all/', LinkedServiceList.as_view(), name = 'linked_service_all'), url(r'^control/all/', LinkedServiceList.as_view(), name = 'linked_service_all'),
url('^test/(?P<url>[a-z]*)/', LinkedServiceUpdateView.as_view(), name= 'linked_service_update'), url(r'^control/(?P<url>[a-z]*)/', LinkedServiceUpdateView.as_view(), name= 'linked_service_update'),
#ajax #ajax
url(r'^get_city/$', 'get_city'), url(r'^get_city/$', 'get_city'),

@ -238,5 +238,14 @@ class LinkedService(models.Model):
self.update_expositions_flag() self.update_expositions_flag()
self.update_conferences_flag() self.update_conferences_flag()
def countries_count(self):
if not self.exclude_countries:
return self.countries.all().count()
else:
from country.models import Country
all = Country.objects.filter().count()
excluded = self.countries.all().count()
return all - excluded
def __unicode__(self): def __unicode__(self):
return u'Linked service for %s'%self.service.url return u'Linked service for %s'%self.service.url

@ -2,7 +2,7 @@
{% block body %} {% block body %}
<div class="box span8"> <div class="box span10">
<div class="box-header well"> <div class="box-header well">
<h2><i class="icon-arrow-down"></i>Настройки услуг</h2> <h2><i class="icon-arrow-down"></i>Настройки услуг</h2>
</div> </div>
@ -25,17 +25,15 @@
<tr> <tr>
<td>{{ item.id }}</td> <td>{{ item.id }}</td>
<td>{{ item.service.name }}</td> <td>{{ item.service.name }}</td>
<td>{% if item.service.type.mask == 1 %} expo {% elif item.service.type.mask == 2%} conf {% elif item.service.type.mask == 3 %} expo, conf{% endif %}</td> <td>{% if item.service.type.mask == 1 %} выставки {% elif item.service.type.mask == 2%} конференции {% elif item.service.type.mask == 3 %} выставки и конференции{% endif %}</td>
<td>{{ item.countries.count }}</td> <td>{{ item.countries_count }}</td>
<td>{{ item.expositions.count }}</td> <td>{{ item.expositions.count }}</td>
<td>{{ item.conferences.count }}</td> <td>{{ item.conferences.count }}</td>
<td class="center sorting_1"> <td class="center sorting_1">
<a class="btn btn-info" href="{% url 'linked_service_update' item.service.url %}"> <a class="btn btn-info" href="{% url 'linked_service_update' item.service.url %}">
<i class="icon-edit icon-white"></i> Изменить <i class="icon-edit icon-white"></i> Управление
</a>
<a class="btn btn-danger" href="{% url 'linked_service_delete' item.service.url %}">
<i class="icon-trash icon-white"></i> Удалить
</a> </a>
</td> </td>
</tr> </tr>
{% endfor %} {% endfor %}

@ -2,15 +2,12 @@
<div class="i-sub-articles"> <div class="i-sub-articles">
<ul> <ul>
<li> {% with services=object.get_services_detail %}
<a href="{{ exposition.get_permanent_url }}service/participation/">{% trans 'Участие со стендом' %}</a> {% for service in services %}
</li> <li>
<li> <a href="{{ exposition.get_permanent_url }}service/{{ service.url }}/">{{ service.name }}</a>
<a href="{{ exposition.get_permanent_url }}service/translator/">{% trans 'Устный переводчик' %}</a> </li>
</li> {% endfor %}
{% endwith %}
<li>
<a href="{{ exposition.get_permanent_url }}service/remote/">{% trans 'Заочное посещение' %}</a>
</li>
</ul> </ul>
</div> </div>
Loading…
Cancel
Save