commit
e1fb6f431d
48 changed files with 265 additions and 1308 deletions
@ -1,9 +1,6 @@ |
|||||||
# -*- coding: utf-8 -*- |
# -*- coding: utf-8 -*- |
||||||
from django.conf.urls import patterns, url |
from django.conf.urls import patterns, url |
||||||
from views import CityView |
|
||||||
|
|
||||||
urlpatterns = patterns('', |
urlpatterns = patterns('', |
||||||
url(r'get-city/', 'city.views.get_city'), |
url(r'get-city/', 'city.views.get_city'), |
||||||
# commented for good times |
|
||||||
#url(r'(?P<slug>.*)', CityView.as_view()), |
|
||||||
) |
) |
||||||
|
|||||||
@ -1,6 +0,0 @@ |
|||||||
# -*- coding: utf-8 -*- |
|
||||||
from django.db.models.signals import post_save |
|
||||||
from models import Company |
|
||||||
from functions.signal_handlers import post_save_handler |
|
||||||
|
|
||||||
#post_save.connect(post_save_handler, sender=Company) |
|
||||||
@ -0,0 +1,80 @@ |
|||||||
|
# -*- coding: utf-8 -*- |
||||||
|
from south.utils import datetime_utils as datetime |
||||||
|
from south.db import db |
||||||
|
from south.v2 import SchemaMigration |
||||||
|
from django.db import models |
||||||
|
|
||||||
|
|
||||||
|
class Migration(SchemaMigration): |
||||||
|
|
||||||
|
def forwards(self, orm): |
||||||
|
# Deleting field 'ThemeTranslation.keywords' |
||||||
|
db.delete_column(u'theme_theme_translation', 'keywords') |
||||||
|
|
||||||
|
# Deleting field 'ThemeTranslation.title' |
||||||
|
db.delete_column(u'theme_theme_translation', 'title') |
||||||
|
|
||||||
|
# Deleting field 'ThemeTranslation.descriptions' |
||||||
|
db.delete_column(u'theme_theme_translation', 'descriptions') |
||||||
|
|
||||||
|
|
||||||
|
def backwards(self, orm): |
||||||
|
# Adding field 'ThemeTranslation.keywords' |
||||||
|
db.add_column(u'theme_theme_translation', 'keywords', |
||||||
|
self.gf('django.db.models.fields.CharField')(default='', max_length=255, blank=True), |
||||||
|
keep_default=False) |
||||||
|
|
||||||
|
# Adding field 'ThemeTranslation.title' |
||||||
|
db.add_column(u'theme_theme_translation', 'title', |
||||||
|
self.gf('django.db.models.fields.CharField')(default='', max_length=255, blank=True), |
||||||
|
keep_default=False) |
||||||
|
|
||||||
|
# Adding field 'ThemeTranslation.descriptions' |
||||||
|
db.add_column(u'theme_theme_translation', 'descriptions', |
||||||
|
self.gf('django.db.models.fields.CharField')(default='', max_length=255, blank=True), |
||||||
|
keep_default=False) |
||||||
|
|
||||||
|
|
||||||
|
models = { |
||||||
|
u'theme.tag': { |
||||||
|
'Meta': {'unique_together': '()', 'object_name': 'Tag', 'index_together': '()'}, |
||||||
|
u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), |
||||||
|
'inflect': ('django.db.models.fields.CharField', [], {'max_length': '255', 'blank': 'True'}), |
||||||
|
'old_url': ('django.db.models.fields.SlugField', [], {'unique': 'True', 'max_length': '255'}), |
||||||
|
'theme': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'tags'", 'on_delete': 'models.PROTECT', 'to': u"orm['theme.Theme']"}), |
||||||
|
'url': ('django.db.models.fields.SlugField', [], {'unique': 'True', 'max_length': '255'}) |
||||||
|
}, |
||||||
|
u'theme.tagtranslation': { |
||||||
|
'Meta': {'unique_together': "[('language_code', 'master')]", 'object_name': 'TagTranslation', 'db_table': "u'theme_tag_translation'", 'index_together': '()'}, |
||||||
|
'description': ('django.db.models.fields.TextField', [], {'blank': 'True'}), |
||||||
|
'descriptions': ('django.db.models.fields.CharField', [], {'max_length': '250', 'blank': 'True'}), |
||||||
|
u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), |
||||||
|
'keywords': ('django.db.models.fields.CharField', [], {'max_length': '250', 'blank': 'True'}), |
||||||
|
'language_code': ('django.db.models.fields.CharField', [], {'max_length': '15', 'db_index': 'True'}), |
||||||
|
'main_title': ('django.db.models.fields.CharField', [], {'max_length': '100'}), |
||||||
|
'master': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'translations'", 'null': 'True', 'to': u"orm['theme.Tag']"}), |
||||||
|
'name': ('django.db.models.fields.CharField', [], {'max_length': '100'}), |
||||||
|
'title': ('django.db.models.fields.CharField', [], {'max_length': '250', 'blank': 'True'}) |
||||||
|
}, |
||||||
|
u'theme.theme': { |
||||||
|
'Meta': {'unique_together': '()', 'object_name': 'Theme', 'index_together': '()'}, |
||||||
|
u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), |
||||||
|
'inflect': ('django.db.models.fields.CharField', [], {'max_length': '255', 'blank': 'True'}), |
||||||
|
'main_page_conf': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0', 'db_index': 'True'}), |
||||||
|
'main_page_expo': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0', 'db_index': 'True'}), |
||||||
|
'old_url': ('django.db.models.fields.SlugField', [], {'unique': 'True', 'max_length': '255'}), |
||||||
|
'types': ('django.db.models.fields.BigIntegerField', [], {'default': 'None'}), |
||||||
|
'url': ('django.db.models.fields.SlugField', [], {'unique': 'True', 'max_length': '255'}) |
||||||
|
}, |
||||||
|
u'theme.themetranslation': { |
||||||
|
'Meta': {'unique_together': "[('language_code', 'master')]", 'object_name': 'ThemeTranslation', 'db_table': "u'theme_theme_translation'", 'index_together': '()'}, |
||||||
|
'description': ('django.db.models.fields.TextField', [], {'blank': 'True'}), |
||||||
|
u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), |
||||||
|
'language_code': ('django.db.models.fields.CharField', [], {'max_length': '15', 'db_index': 'True'}), |
||||||
|
'main_title': ('django.db.models.fields.CharField', [], {'max_length': '255'}), |
||||||
|
'master': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'translations'", 'null': 'True', 'to': u"orm['theme.Theme']"}), |
||||||
|
'name': ('django.db.models.fields.CharField', [], {'max_length': '255'}) |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
complete_apps = ['theme'] |
||||||
@ -1,16 +0,0 @@ |
|||||||
from functools import wraps |
|
||||||
|
|
||||||
from django.template import RequestContext |
|
||||||
from django.shortcuts import render_to_response |
|
||||||
|
|
||||||
|
|
||||||
def render_to(tpl): |
|
||||||
def decorator(func): |
|
||||||
@wraps(func) |
|
||||||
def wrapper(request, *args, **kwargs): |
|
||||||
out = func(request, *args, **kwargs) |
|
||||||
if isinstance(out, dict): |
|
||||||
out = render_to_response(tpl, out, RequestContext(request)) |
|
||||||
return out |
|
||||||
return wrapper |
|
||||||
return decorator |
|
||||||
@ -1,186 +0,0 @@ |
|||||||
{% extends 'base.html' %} |
|
||||||
{% load static %} |
|
||||||
{# Displays article form #} |
|
||||||
|
|
||||||
{% block scripts %} |
|
||||||
|
|
||||||
<script src="{% static 'ckeditor/ckeditor/ckeditor.js' %}"></script> |
|
||||||
{# selects #} |
|
||||||
<link href="{% static 'js/select/select2.css' %}" rel="stylesheet"/> |
|
||||||
<script src="{% static 'js/select/select2.js' %}"></script> |
|
||||||
{# ajax #} |
|
||||||
<script src="{% static 'custom_js/file_post_ajax.js' %}"></script> |
|
||||||
<script src="{% static 'custom_js/select_tag.js' %}"></script> |
|
||||||
|
|
||||||
{% endblock %} |
|
||||||
|
|
||||||
{% block body %} |
|
||||||
|
|
||||||
{# Uses multilang.html template for translated fields #} |
|
||||||
<form method="post" class="form-horizontal" name="form2" id="form2"> {% csrf_token %} |
|
||||||
<fieldset> |
|
||||||
<legend><i class="icon-edit"></i>{% if obj_id %} Изменить {% else %} Добавить {% endif %}статью</legend> |
|
||||||
|
|
||||||
<div class="box span8"> |
|
||||||
<div class="box-header well"> |
|
||||||
<h2><i class="icon-pencil"></i> Основная информация</h2> |
|
||||||
</div> |
|
||||||
<div class="box-content"> |
|
||||||
{# Hidden input uses for comparing with TmpFile objects #} |
|
||||||
{{ form.key }} |
|
||||||
{# Hidden input uses in clean method for checking url #} |
|
||||||
{{ form.article_id }} |
|
||||||
|
|
||||||
{# main_title #} |
|
||||||
|
|
||||||
{% include 'c_admin/forms/multilang.html' with field='main_title' form=form languages=languages %} |
|
||||||
{# theme #} |
|
||||||
<div class="control-group {% if form.theme.errors %}error{% endif %}"> |
|
||||||
<label class="control-label"><b>{{ form.theme.label }}:</b></label> |
|
||||||
<div class="controls"> |
|
||||||
{{ form.theme }} |
|
||||||
<span class="help-inline">{{ form.theme.errors }}</span> |
|
||||||
</div> |
|
||||||
</div> |
|
||||||
{# tag #} |
|
||||||
<div class="control-group {% if form.tag.errors %}error{% endif %}"> |
|
||||||
<label class="control-label">{{ form.tag.label }}:</label> |
|
||||||
<div class="controls"> |
|
||||||
{{ form.tag }} |
|
||||||
<span class="help-inline">{{ form.tag.errors }}</span> |
|
||||||
</div> |
|
||||||
</div> |
|
||||||
{# preview #} |
|
||||||
|
|
||||||
{% include 'c_admin/forms/multilang.html' with field='preview' form=form languages=languages %} |
|
||||||
|
|
||||||
{# author #} |
|
||||||
<div class="control-group {% if form.author.errors %}error{% endif %}"> |
|
||||||
<label class="control-label">{{ form.author.label }}:</label> |
|
||||||
<div class="controls"> |
|
||||||
{{ form.author }} |
|
||||||
<span class="help-inline">{{ form.author.errors }}</span> |
|
||||||
</div> |
|
||||||
</div> |
|
||||||
{# description #} |
|
||||||
{% include 'c_admin/forms/multilang.html' with field='description' form=form languages=languages %} |
|
||||||
{# keywords #} |
|
||||||
|
|
||||||
{% include 'c_admin/forms/multilang.html' with field='keywords' form=form languages=languages %} |
|
||||||
|
|
||||||
{# title #} |
|
||||||
|
|
||||||
{% include 'c_admin/forms/multilang.html' with field='title' form=form languages=languages %} |
|
||||||
|
|
||||||
{# descriptions #} |
|
||||||
|
|
||||||
{% include 'c_admin/forms/multilang.html' with field='descriptions' form=form languages=languages %} |
|
||||||
|
|
||||||
</div> |
|
||||||
|
|
||||||
</div> |
|
||||||
<div class="box span8" id="file"> |
|
||||||
<div class="box-header well"> |
|
||||||
<h2><i class="icon-pencil"></i> Файлы</h2> |
|
||||||
</div> |
|
||||||
<div class="box-content"> |
|
||||||
{# button that shows modal window with file form #} |
|
||||||
<a href="#myModal" id="file_add" role="button" class="btn btn-info" data-toggle="modal">Добавить файл</a> |
|
||||||
{# this div shows list of files and refreshes when new file added #} |
|
||||||
<div id="file_list"> |
|
||||||
<table class="table table-hover"> |
|
||||||
|
|
||||||
<thead> |
|
||||||
<tr> |
|
||||||
<td>id</td> |
|
||||||
<td>Файл</td> |
|
||||||
<td>Имя</td> |
|
||||||
<td>Назначение</td> |
|
||||||
<td></td> |
|
||||||
</tr> |
|
||||||
</thead> |
|
||||||
<tbody> |
|
||||||
{% for file in files %} |
|
||||||
|
|
||||||
<tr> |
|
||||||
<td>{{ file.id }}</td> |
|
||||||
<td><img src="{{ file.file_path.url }}"></td> |
|
||||||
<td>{{ file.file_name }}</td> |
|
||||||
<td>{{ file.purpose }}</td> |
|
||||||
<td> |
|
||||||
<button class="btn btn-danger delete_file" value="{{ file.id }}"> |
|
||||||
<i class="icon-trash icon-white"></i> Удалить |
|
||||||
</button> |
|
||||||
</td> |
|
||||||
</tr> |
|
||||||
|
|
||||||
{% endfor %} |
|
||||||
</tbody> |
|
||||||
</table> |
|
||||||
</div> |
|
||||||
|
|
||||||
</div> |
|
||||||
</div> |
|
||||||
|
|
||||||
<div class="controls"> |
|
||||||
|
|
||||||
<input class="btn btn-large btn-primary" type="submit" value="Добавить"> |
|
||||||
<input class="btn btn-large" type="reset" value="Отмена"> |
|
||||||
</div> |
|
||||||
|
|
||||||
</fieldset> |
|
||||||
</form> |
|
||||||
|
|
||||||
|
|
||||||
{# modal window #} |
|
||||||
<div class="modal hide fade" id="myModal" > |
|
||||||
<div class="modal-header"> |
|
||||||
<button type="button" class="close" data-dismiss="modal" aria-hidden="true" id="close">×</button> |
|
||||||
<h3>Добавить файл</h3> |
|
||||||
</div> |
|
||||||
|
|
||||||
<div id="form_body"> |
|
||||||
<div class="modal-body"> |
|
||||||
<form method="post" class="form-horizontal" enctype="multipart/form-data" name="file_form" id="file_form" > {% csrf_token %} |
|
||||||
|
|
||||||
{# hidden inputs uses for comparing with Article form key#} |
|
||||||
{{ file_form.key }} |
|
||||||
{{ file_form.model }} |
|
||||||
<input type="hidden" id="obj_id" value="{{ obj_id }}"> |
|
||||||
{# file_path #} |
|
||||||
<div class="control-group{% if file_form.file_path.errors %}error{% endif %}"> |
|
||||||
<label class="control-label"><b>{{ file_form.file_path.label }}:</b></label> |
|
||||||
<div class="controls">{{ file_form.file_path }} |
|
||||||
<span class="help-inline">{{ file_form.file_path.errors }}</span> |
|
||||||
</div> |
|
||||||
</div> |
|
||||||
{# file purpose #} |
|
||||||
<div class="control-group{% if file_form.purpose.errors %}error{% endif %}"> |
|
||||||
<label class="control-label"><b>{{ file_form.purpose.label }}:</b></label> |
|
||||||
<div class="controls">{{ file_form.purpose }} |
|
||||||
<span class="help-inline">{{ file_form.purpose.errors }}</span> |
|
||||||
</div> |
|
||||||
</div> |
|
||||||
{# file_name #} |
|
||||||
{% with field='file_name' form=file_form languages=languages %} |
|
||||||
{% include 'c_admin/forms/multilang.html' %} |
|
||||||
{% endwith %} |
|
||||||
{# file_description #} |
|
||||||
{% with field='description' form=file_form languages=languages %} |
|
||||||
{% include 'c_admin/forms/multilang.html' %} |
|
||||||
{% endwith %} |
|
||||||
|
|
||||||
</div> |
|
||||||
|
|
||||||
<div class="modal-footer"> |
|
||||||
<div class="controls"> |
|
||||||
<input class="btn btn-primary" type="submit" value="Добавить"> |
|
||||||
<input type="reset" class="btn" value="Отменить" data-dismiss="modal"> |
|
||||||
</form> |
|
||||||
</div> |
|
||||||
</div> |
|
||||||
</div> |
|
||||||
|
|
||||||
</div> |
|
||||||
|
|
||||||
{% endblock %} |
|
||||||
@ -1,69 +0,0 @@ |
|||||||
{% extends 'base.html' %} |
|
||||||
{% block body %} |
|
||||||
{% comment %} |
|
||||||
Displays lists of all articles in the table |
|
||||||
and creating buttons which can change each article |
|
||||||
{% endcomment %} |
|
||||||
|
|
||||||
<div class="box span8"> |
|
||||||
<div class="box-header well"> |
|
||||||
<h2><i class="icon-arrow-down"></i>Список статей</h2> |
|
||||||
</div> |
|
||||||
<div class="box-content"> |
|
||||||
<form class='form-search'> |
|
||||||
{{ search_form.search_name }} |
|
||||||
<button type="submit" class="btn">Найти</button> |
|
||||||
</form> |
|
||||||
<table class="table table-hover"> |
|
||||||
<thead> |
|
||||||
<tr> |
|
||||||
|
|
||||||
<th>Заголовок</th> |
|
||||||
<th>Автор</th> |
|
||||||
<th> </th> |
|
||||||
</tr> |
|
||||||
</thead> |
|
||||||
<tbody> |
|
||||||
{% for item in objects %} |
|
||||||
<tr> |
|
||||||
|
|
||||||
<td>{{ item.main_title }}</td> |
|
||||||
<td>{% ifnotequal item.user None %}{{ item.user }} {% endifnotequal %}</td> |
|
||||||
<td class="center sorting_1"> |
|
||||||
<a class="btn-small btn-info" href="/admin/article/change/{{ item.url|lower }}"> |
|
||||||
Изменить |
|
||||||
</a> |
|
||||||
</td> |
|
||||||
|
|
||||||
<td class="center sorting_1"> |
|
||||||
<a class="btn-small btn-inverse" href="/admin/article/copy/{{ item.url|lower }}"> |
|
||||||
Копировать |
|
||||||
</a> |
|
||||||
</td> |
|
||||||
|
|
||||||
<td> |
|
||||||
<a class="btn-small btn-danger delete" href="/admin/article/delete/{{ item.url }}/"> |
|
||||||
Удалить |
|
||||||
</a> |
|
||||||
</td> |
|
||||||
</tr> |
|
||||||
{% endfor %} |
|
||||||
</tbody> |
|
||||||
</table> |
|
||||||
<a class="btn btn-success" href="/admin/article/add"><i class="icon-plus-sign icon-white"></i> Добавить статью</a> |
|
||||||
</div> |
|
||||||
|
|
||||||
<div class="pagination pagination-centered"> |
|
||||||
<ul> |
|
||||||
{% if objects.has_previous %} |
|
||||||
<li> <a href="?page={{ objects.previous_page_number }}">←</a></li> |
|
||||||
{% endif %} |
|
||||||
|
|
||||||
{% if objects.has_next %} |
|
||||||
<li><a href="?page={{ objects.next_page_number }}">→</a></li> |
|
||||||
{% endif %} |
|
||||||
</ul> |
|
||||||
</div> |
|
||||||
</div> |
|
||||||
|
|
||||||
{% endblock %} |
|
||||||
@ -1,31 +0,0 @@ |
|||||||
{% extends 'base.html' %} |
|
||||||
{% load static %} |
|
||||||
|
|
||||||
{% block body %} |
|
||||||
|
|
||||||
<form method="post" class="form-horizontal" enctype="multipart/form-data" name="form1" id="form1"> {% csrf_token %} |
|
||||||
<fieldset> |
|
||||||
<legend><i class="icon-edit"></i> Настройки</legend> |
|
||||||
<div class="box span8"> |
|
||||||
<div class="box-header well"> |
|
||||||
<h2><i class="icon-pencil"></i> Основные настройки</h2> |
|
||||||
</div> |
|
||||||
<div class="box-content"> |
|
||||||
{# key #} |
|
||||||
{% with field='hall_capacity_tmpl' form=form languages=languages %} |
|
||||||
{% include 'c_admin/forms/multilang.html' %} |
|
||||||
{% endwith %} |
|
||||||
</div> |
|
||||||
</div> |
|
||||||
|
|
||||||
|
|
||||||
<div class="controls"> |
|
||||||
<input class="btn btn-large btn-primary" type="submit" value="Добавить"> |
|
||||||
<input class="btn btn-large" type="reset" value="Отмена"> |
|
||||||
</div> |
|
||||||
|
|
||||||
</fieldset> |
|
||||||
</form> |
|
||||||
|
|
||||||
|
|
||||||
{% endblock %} |
|
||||||
@ -1,150 +0,0 @@ |
|||||||
{% extends 'base_catalog.html' %} |
|
||||||
{% load static %} |
|
||||||
{% load i18n %} |
|
||||||
|
|
||||||
{% block bread_scrumbs %} |
|
||||||
<div class="bread-crumbs"> |
|
||||||
<a href="/">{% trans 'Главная страница' %}</a> |
|
||||||
<strong>{{ object.name }}</strong> |
|
||||||
</div> |
|
||||||
{% endblock %} |
|
||||||
|
|
||||||
{% block page_title %} |
|
||||||
{% endblock %} |
|
||||||
|
|
||||||
{% if object.get_events %} |
|
||||||
{% block head_scripts %} |
|
||||||
{% include "client/includes/banners/tops_head_js.html" %} |
|
||||||
{% endblock head_scripts %} |
|
||||||
{% endif %} |
|
||||||
|
|
||||||
{% block content_list %} |
|
||||||
<div class="m-article"> |
|
||||||
<div class="item-wrap place clearfix"> |
|
||||||
<aside> |
|
||||||
<div class="i-pict"> |
|
||||||
{% include 'client/includes/show_logo.html' with obj=object %} |
|
||||||
</div> |
|
||||||
</aside> |
|
||||||
|
|
||||||
<div class="i-info"> |
|
||||||
<header> |
|
||||||
<h1 class="i-title">{{ object.name }}</h1> |
|
||||||
</header> |
|
||||||
|
|
||||||
<table class="country_table"> |
|
||||||
<tr> |
|
||||||
<td> |
|
||||||
<ul> |
|
||||||
{% if object.population %} |
|
||||||
<li><strong>{% trans 'Население' %}:</strong><span>{{ object.population }} {% trans 'человек' %}</span></li> |
|
||||||
{% endif %} |
|
||||||
|
|
||||||
{% if object.code_IATA %} |
|
||||||
<li>Код IATA:<span>{{ object.code_IATA.code }}</span></li> |
|
||||||
{% endif %} |
|
||||||
|
|
||||||
{% if object.phone_code %} |
|
||||||
<li>{% trans 'Телефонный код' %}:<span>+{{ object.phone_code }}</span></li> |
|
||||||
{% endif %} |
|
||||||
{% if object.transport %} |
|
||||||
<li><i>{% trans 'Транспорт' %}:</i><span>{{ object.transport }}</span></li> |
|
||||||
{% endif %} |
|
||||||
</ul> |
|
||||||
</td> |
|
||||||
</tr> |
|
||||||
</table> |
|
||||||
|
|
||||||
<div class="i-address map-opened country_map"> |
|
||||||
|
|
||||||
<div class="i-map"> |
|
||||||
<!-- позиция для карты задается в атрибуте data-coords --> |
|
||||||
<div class="map-canvas" id="map-canvas" data-coords="{{ object.latitude|stringformat:'f' }},{{ object.longitude|stringformat:'f' }}" ></div> |
|
||||||
<div class="close-map"><a class="toggle-map" href="#">{% trans 'Скрыть карту' %}</a></div> |
|
||||||
</div> |
|
||||||
<header> |
|
||||||
<div class="show-map show-map_1"><a class="toggle-map" href="#">{% trans 'Раскрыть карту' %}</a></div> |
|
||||||
</header> |
|
||||||
</div> |
|
||||||
|
|
||||||
</div> |
|
||||||
</div> |
|
||||||
<table class="map_info_block"> |
|
||||||
{% if object.famous_places %} |
|
||||||
<tr> |
|
||||||
<th>{% trans 'Должны посетить' %}:</th> |
|
||||||
<td class="width_1"> |
|
||||||
{{ object.famous_places }} |
|
||||||
</td> |
|
||||||
</tr> |
|
||||||
{% endif %} |
|
||||||
{% if object.shoping %} |
|
||||||
<tr> |
|
||||||
<th>{% trans 'Шоппинг' %}:</th> |
|
||||||
<td class="width_1"> |
|
||||||
{{ object.shoping }} |
|
||||||
</td> |
|
||||||
</tr> |
|
||||||
{% endif %} |
|
||||||
</table> |
|
||||||
|
|
||||||
{% if object.description %} |
|
||||||
<hr /> |
|
||||||
<div class="i-services country_content"> |
|
||||||
<h2 class="sect-title">{% trans "Описание" %}</h2> |
|
||||||
<div class="i-descr"> |
|
||||||
{{ object.description }} |
|
||||||
</div> |
|
||||||
</div> |
|
||||||
{% endif %} |
|
||||||
|
|
||||||
{% if object.get_photos %} |
|
||||||
<div class="i-photo-slides i-photo-slides_1"> |
|
||||||
<h2 class="sect-title">{% trans "Фотогалерея" %}</h2> |
|
||||||
<div id="ps-photo-gallery" class="ps-photo-gallery swiper-container"> |
|
||||||
<ul class="swiper-wrapper"> |
|
||||||
|
|
||||||
<li class="swiper-slide"><img src="img/_del-temp/place-photo-1.jpg" alt="" /></li> |
|
||||||
<li class="swiper-slide"><img src="img/_del-temp/event-photo-1.jpg" alt="" /></li> |
|
||||||
|
|
||||||
</ul> |
|
||||||
<div class="re-controls"> |
|
||||||
<a class="prev" href="#"><</a> |
|
||||||
<a class="next" href="#">></a> |
|
||||||
</div> |
|
||||||
</div> |
|
||||||
</div> |
|
||||||
{% endif %} |
|
||||||
</div> |
|
||||||
|
|
||||||
{% if object.get_events %} |
|
||||||
<br> |
|
||||||
<div class="i-events-list"> |
|
||||||
<div class="sect-title blog_link"> |
|
||||||
<a href="#" title="">{% trans 'События в' %} {{ object.name }}</a><a class="button more" href="{{ object.events_catalog }}">{% trans 'Все события' %}</a> |
|
||||||
</div> |
|
||||||
{% include 'includes/exposition/exposition_list.html' with object_list=object.get_events %} |
|
||||||
</div> |
|
||||||
{% endif %} |
|
||||||
|
|
||||||
{% if object.get_places %} |
|
||||||
<br> |
|
||||||
<div class="i-events-list"> |
|
||||||
<div class="sect-title blog_link"> |
|
||||||
<a href="#" title="">{% trans 'Места в' %} {{ object.name }}</a><a class="button more" href="{{ object.places_catalog }}">{% trans 'Все места' %}</a> |
|
||||||
</div> |
|
||||||
{% include 'includes/place/place_list.html' with object_list=object.get_places %} |
|
||||||
</div> |
|
||||||
{% endif %} |
|
||||||
|
|
||||||
{% if object.get_organisers %} |
|
||||||
<br> |
|
||||||
<div class="i-events-list"> |
|
||||||
<div class="sect-title blog_link"> |
|
||||||
<a href="#" title="">{% trans 'Организаторы в' %} {{ object.name }}</a><a class="button more" href="#">{% trans 'Все организаторы' %} </a> |
|
||||||
</div> |
|
||||||
{% include 'includes/organiser/organiser_list.html' with object_list=object.get_organisers %} |
|
||||||
</div> |
|
||||||
{% endif %} |
|
||||||
|
|
||||||
{% endblock %} |
|
||||||
@ -1,61 +1,56 @@ |
|||||||
{% load static %} |
{% load static i18n %} |
||||||
{% load i18n %} |
|
||||||
|
|
||||||
{% with objects=object_list %} |
{% include 'client/includes/banners/tops.html' %} |
||||||
{% include 'client/includes/banners/tops.html' %} |
<ul class="cat-list cl-places"> |
||||||
<ul class="cat-list cl-places"> |
{% for object in object_list %} |
||||||
{% for object in object_list %} |
<li class="cl-item"> |
||||||
<li class="cl-item"> |
<div class="cl-item-wrap clearfix"> |
||||||
<div class="cl-item-wrap clearfix"> |
<a target="_blank" href="{{ object.get_permanent_url }}"> |
||||||
<a target="_blank" href="{{ object.get_permanent_url }}"> |
<div class="cli-pict"> |
||||||
<div class="cli-pict"> |
{% include 'client/includes/show_logo.html' with obj=object %} |
||||||
{% with obj=object %} |
</div> |
||||||
{% include 'client/includes/show_logo.html' %} |
</a> |
||||||
{% endwith %} |
<div class="cli-info"> |
||||||
</div> |
<div class="cli-top clearfix"> |
||||||
</a> |
|
||||||
<div class="cli-info"> |
|
||||||
<div class="cli-top clearfix"> |
|
||||||
|
|
||||||
<header> |
<header> |
||||||
<div class="cli-title"><a target="_blank" href="{{ object.get_permanent_url }}">{{ object.name|safe }}</a></div> |
<div class="cli-title"><a target="_blank" href="{{ object.get_permanent_url }}">{{ object.name|safe }}</a></div> |
||||||
<!--<div class="cli-rate">{{ object.rating }}</div>--> |
{# <div class="cli-rate">{{ object.rating }}</div>#} |
||||||
</header> |
</header> |
||||||
|
|
||||||
<div class="cli-descr">{{ object.get_type }}</div> |
<div class="cli-descr">{{ object.get_type }}</div> |
||||||
</div> |
</div> |
||||||
|
|
||||||
<div class="cli-bot clearfix"> |
<div class="cli-bot clearfix"> |
||||||
{% if object.total_area %} |
{% if object.total_area %} |
||||||
<div class="cli-dim">{{ object.total_area }} м2</div> |
<div class="cli-dim">{{ object.total_area }} м2</div> |
||||||
{% endif %} |
{% endif %} |
||||||
<div class="cli-place"><a href="/places/country/{{ object.country.url }}/">{{ object.country }}</a>, <a href="/places/city/{{ object.city.url }}/">{{ object.city }}</a> |
<div class="cli-place"><a href="/places/country/{{ object.country.url }}/">{{ object.country }}</a>, <a href="/places/city/{{ object.city.url }}/">{{ object.city }}</a> |
||||||
</div> |
|
||||||
</div> |
|
||||||
</div> |
</div> |
||||||
|
</div> |
||||||
|
</div> |
||||||
|
|
||||||
<div class="cli-buttons clearfix"> |
<div class="cli-buttons clearfix"> |
||||||
<div class="cli-m-buttons"> |
<div class="cli-m-buttons"> |
||||||
<a class="button icon-info" href="{{ object.get_permanent_url }}">{% trans 'описание' %}</a> |
<a class="button icon-info" href="{{ object.get_permanent_url }}">{% trans 'описание' %}</a> |
||||||
{% if object.get_events_number %} |
{% if object.get_events_number %} |
||||||
<a class="button green icon-list" href="#">{% trans 'события' %} ({{ object.get_events_number }})</a> |
<a class="button green icon-list" href="{% url 'place_exposition_list' object.url %}">{% trans 'события' %} ({{ object.get_events_number }})</a> |
||||||
{% endif %} |
{% endif %} |
||||||
{% if object.photogallery %} |
{% if object.photogallery %} |
||||||
<a class="button blue icon-photo" href="{{ object.get_permanent_url }}photo/">{% trans 'фото' %}</a> |
<a class="button blue icon-photo" href="{{ object.get_permanent_url }}photo/">{% trans 'фото' %}</a> |
||||||
{% endif %} |
{% endif %} |
||||||
</div> |
</div> |
||||||
<div class="cli-s-buttons"> |
<div class="cli-s-buttons"> |
||||||
<a class="button blue2 lc" target="_blank" href="http://www.booking.com/searchresults.html?aid={{ book_aid }}&city={{ object.city.id }}">{% trans 'Найти отели поблизости' %}</a> |
<a class="button blue2 lc" target="_blank" href="http://www.booking.com/searchresults.html?aid={{ book_aid }}&city={{ object.city.id }}">{% trans 'Найти отели поблизости' %}</a> |
||||||
</div> |
|
||||||
</div> |
</div> |
||||||
</li> |
</div> |
||||||
{% if forloop.counter == 5 or objects|length < 5 %} |
</li> |
||||||
{% include 'client/includes/banners/catalog_inner_2.html' %} |
{% if forloop.counter == 5 or object_list|length < 5 %} |
||||||
{% endif %} |
{% include 'client/includes/banners/catalog_inner_2.html' %} |
||||||
|
{% endif %} |
||||||
|
|
||||||
{% if forloop.counter == 10 %} |
{% if forloop.counter == 10 %} |
||||||
{% include 'client/includes/banners/catalog_inner.html' %} |
{% include 'client/includes/banners/catalog_inner.html' %} |
||||||
{%endif %} |
{%endif %} |
||||||
{% endfor %} |
{% endfor %} |
||||||
</ul> |
</ul> |
||||||
{% endwith %} |
|
||||||
|
|||||||
Loading…
Reference in new issue