remotes/origin/mitri4
spacenergy 10 years ago
parent c6b55e032e
commit 6db7bc8531
  1. 3
      accounts/admin.py
  2. 8
      accounts/forms.py
  3. 4
      accounts/models.py
  4. 2
      accounts/urls.py
  5. 13
      accounts/utils.py
  6. 17
      accounts/views.py
  7. 23
      api/views.py
  8. 6
      batiskaf/jinja2_ext/html_filters.py
  9. 6
      batiskaf/settings.py
  10. 13
      batiskaf/templates/jinja2/accounts/index.jinja
  11. 14
      batiskaf/templates/jinja2/accounts/login.jinja
  12. 13
      batiskaf/templates/jinja2/accounts/login_sms.jinja
  13. 6
      batiskaf/templates/jinja2/accounts/order_detail.jinja
  14. 31
      batiskaf/templates/jinja2/advantages.jinja
  15. 650
      batiskaf/templates/jinja2/base.jinja
  16. 136
      batiskaf/templates/jinja2/bootstrapform/field.jinja
  17. 6
      batiskaf/templates/jinja2/bootstrapform/form.jinja
  18. 15
      batiskaf/templates/jinja2/bootstrapform/formset.jinja
  19. 45
      batiskaf/templates/jinja2/cart_detail.jinja
  20. 81
      batiskaf/templates/jinja2/category.jinja
  21. 67
      batiskaf/templates/jinja2/contacts.jinja
  22. 11
      batiskaf/templates/jinja2/delivery.jinja
  23. 15
      batiskaf/templates/jinja2/faq.jinja
  24. 89
      batiskaf/templates/jinja2/feedback.jinja
  25. 7
      batiskaf/templates/jinja2/includes/category_category_thumb.jinja
  26. 29
      batiskaf/templates/jinja2/includes/category_filter.jinja
  27. 7
      batiskaf/templates/jinja2/includes/category_product_thumb.jinja
  28. 169
      batiskaf/templates/jinja2/index.jinja
  29. 10
      batiskaf/templates/jinja2/kkb.jinja
  30. 62
      batiskaf/templates/jinja2/news/detail.jinja
  31. 5
      batiskaf/templates/jinja2/news/list.jinja
  32. 120
      batiskaf/templates/jinja2/order_ok.jinja
  33. 8
      batiskaf/templates/jinja2/order_print.jinja
  34. 41
      batiskaf/templates/jinja2/payment.jinja
  35. 243
      batiskaf/templates/jinja2/product.jinja
  36. 51
      batiskaf/templates/jinja2/promo/detail.jinja
  37. 102
      batiskaf/templates/jinja2/promo/list.jinja
  38. 198
      batiskaf/templates/jinja2/size/aqua_discovery.jinja
  39. 944
      batiskaf/templates/jinja2/size/aqualung.jinja
  40. 1145
      batiskaf/templates/jinja2/size/aquatics.jinja
  41. 634
      batiskaf/templates/jinja2/size/beuchat.jinja
  42. 580
      batiskaf/templates/jinja2/size/cressi.jinja
  43. 50
      batiskaf/templates/jinja2/size/index.jinja
  44. 385
      batiskaf/templates/jinja2/size/omer_sporasub.jinja
  45. 281
      batiskaf/templates/jinja2/size/sargan.jinja
  46. 686
      batiskaf/templates/jinja2/size/scorpena.jinja
  47. 101
      batiskaf/urls.py
  48. 0
      kazpost.py
  49. 9
      kkb/kkb_sign.py
  50. 3
      main/admin.py
  51. 2
      main/forms.py
  52. 7
      main/models.py
  53. 10
      main/views.py
  54. 1
      news/admin.py
  55. 1
      news/forms.py
  56. 16
      news/views.py
  57. 2
      promo/admin.py
  58. 1
      promo/models.py
  59. 3
      promo/views.py
  60. 7
      store/admin.py
  61. 92
      store/alemtat.py
  62. 4
      store/cart.py
  63. 1
      store/forms.py
  64. 102
      store/models.py
  65. 11
      store/urls.py
  66. 52
      store/views.py
  67. 11
      tmp/eml/20150630-224849-4631101848.eml
  68. 11
      tmp/eml/20150630-224931-4454810064.eml
  69. 11
      tmp/eml/20150630-234252-4487710928.eml
  70. 13
      tmp/eml/20150701-125903-4543369056.eml
  71. 13
      tmp/eml/20150701-125916-4544252560.eml
  72. 11
      tmp/eml/20150727-192204-4444393088.eml
  73. 28
      tmp/eml/20150727-192204-4444440896.eml
  74. 37
      tmp/eml/20150728-003520-4463280256.eml
  75. 37
      tmp/eml/20150728-010913-4461213232.eml
  76. 37
      tmp/eml/20150728-010925-4463159840.eml
  77. 37
      tmp/eml/20150728-011421-4462853816.eml
  78. 26
      tmp/eml/20150728-222412-4460787808.eml
  79. 11
      tmp/eml/20150728-222412-4460820968.eml
  80. 26
      tmp/eml/20150728-224018-4465087488.eml
  81. 11
      tmp/eml/20150728-224018-4465536528.eml
  82. 26
      tmp/eml/20150728-224147-4462188696.eml
  83. 11
      tmp/eml/20150728-224147-4462410160.eml
  84. 11
      tmp/eml/20150728-224504-4460315928.eml
  85. 26
      tmp/eml/20150728-224504-4460735232.eml
  86. 26
      tmp/eml/20150728-225843-4463828832.eml
  87. 11
      tmp/eml/20150728-225844-4463827040.eml

@ -59,11 +59,12 @@ class ProfileAdmin(UserAdmin):
(None, { (None, {
'classes': ('wide',), 'classes': ('wide',),
'fields': ('phone', 'email', 'first_name', 'last_name', 'password1', 'password2', 'temp_password')} 'fields': ('phone', 'email', 'first_name', 'last_name', 'password1', 'password2', 'temp_password')}
), ),
) )
search_fields = ('phone', 'email',) search_fields = ('phone', 'email',)
ordering = ('phone', 'email',) ordering = ('phone', 'email',)
filter_horizontal = () filter_horizontal = ()
admin.site.register(Profile, ProfileAdmin) admin.site.register(Profile, ProfileAdmin)
admin.site.unregister(Group) admin.site.unregister(Group)

@ -19,7 +19,6 @@ class LoginForm(forms.Form):
return data return data
class LoginSmsForm(forms.Form): class LoginSmsForm(forms.Form):
sms = forms.IntegerField(label='Одноразовый пароль', required=True) sms = forms.IntegerField(label='Одноразовый пароль', required=True)
@ -29,10 +28,9 @@ class LoginSmsForm(forms.Form):
try: try:
profile = Profile.objects.get(phone=phone, temp_password=data) profile = Profile.objects.get(phone=phone, temp_password=data)
self.profile = profile self.profile = profile
#profile.temp_password = randint(1000000, 9999999) # profile.temp_password = randint(1000000, 9999999)
#self.temp_password = profile.temp_password # self.temp_password = profile.temp_password
#profile.save() # profile.save()
except Profile.DoesNotExist: except Profile.DoesNotExist:
raise forms.ValidationError("Неверный одноразовый пароль") raise forms.ValidationError("Неверный одноразовый пароль")
return data return data

@ -3,6 +3,7 @@ from django.core.mail import send_mail
from django.db import models from django.db import models
from datetime import datetime from datetime import datetime
class ProfileManager(BaseUserManager): class ProfileManager(BaseUserManager):
def _create_user(self, phone, email, password, def _create_user(self, phone, email, password,
is_superuser, **extra_fields): is_superuser, **extra_fields):
@ -37,7 +38,6 @@ class Profile(AbstractBaseUser):
is_active = models.BooleanField('Активный', default=True, db_index=True) is_active = models.BooleanField('Активный', default=True, db_index=True)
temp_password = models.IntegerField('Одноразовый пароль', default=None, blank=True, null=True) temp_password = models.IntegerField('Одноразовый пароль', default=None, blank=True, null=True)
USERNAME_FIELD = 'phone' USERNAME_FIELD = 'phone'
REQUIRED_FIELDS = ['email'] REQUIRED_FIELDS = ['email']
@ -67,4 +67,4 @@ class Profile(AbstractBaseUser):
return self.is_superuser return self.is_superuser
def email_user(self, subject, message, from_email=None, **kwargs): def email_user(self, subject, message, from_email=None, **kwargs):
send_mail(subject, message, from_email, [self.email], **kwargs) send_mail(subject, message, from_email, [self.email], **kwargs)

@ -12,4 +12,4 @@ urlpatterns = patterns('',
url(r'^logout/$', account_logout, url(r'^logout/$', account_logout,
name='accounts_logout'), name='accounts_logout'),
) )

@ -7,15 +7,16 @@ from django.template.loader import render_to_string
def normalize_phone(phone): def normalize_phone(phone):
retval = re.sub("\D", "", phone) retval = re.sub("\D", "", phone)
if len(retval) > 10: if len(retval) > 10:
retval = retval[len(retval)-10:] retval = retval[len(retval) - 10:]
return retval return retval
def send_email(profile, subject='Робот Batiskaf-kz.kz', template='mail/base.jinja', context={}): def send_email(profile, subject='Робот Batiskaf-kz.kz', template='mail/base.jinja', context={}):
context['user'] = profile context['user'] = profile
message = render_to_string(template, context) message = render_to_string(template, context)
send_mail( send_mail(
subject, subject,
message, message,
recipient_list=[profile.email, ], recipient_list=[profile.email, ],
from_email=settings.DEFAULT_FROM_EMAIL from_email=settings.DEFAULT_FROM_EMAIL
) )

@ -9,25 +9,28 @@ from random import randint
import requests import requests
from django.conf import settings from django.conf import settings
class LoginView(FormView): class LoginView(FormView):
form_class = LoginForm form_class = LoginForm
template_name = 'accounts/login.jinja' template_name = 'accounts/login.jinja'
def login_view(request): def login_view(request):
form = LoginForm(request.POST or None) form = LoginForm(request.POST or None)
if form.is_valid(): if form.is_valid():
phone = form.cleaned_data['phone'] phone = form.cleaned_data['phone']
params = dict( params = dict(
login='Jango.kz', login='Jango.kz',
psw='AcEMXtLGz042Fc1ZJUSl', psw='AcEMXtLGz042Fc1ZJUSl',
phones='7{}'.format(phone), phones='7{}'.format(phone),
mes='Batiskaf.kz odnorazoviy parol: {}'.format(form.temp_password) mes='Batiskaf.kz odnorazoviy parol: {}'.format(form.temp_password)
) )
requests.get('http://smsc.ru/sys/send.php', params=params) requests.get('http://smsc.ru/sys/send.php', params=params)
return redirect('/account/login/sms/?phone='+phone) return redirect('/account/login/sms/?phone=' + phone)
c = dict(form=form) c = dict(form=form)
return render(request, 'accounts/login.jinja', c) return render(request, 'accounts/login.jinja', c)
def login_sms_view(request): def login_sms_view(request):
form = LoginSmsForm(request.POST or None) form = LoginSmsForm(request.POST or None)
phone = request.GET.get('phone', None) phone = request.GET.get('phone', None)
@ -44,18 +47,20 @@ def login_sms_view(request):
c = dict(form=form) c = dict(form=form)
return render(request, 'accounts/login_sms.jinja', c) return render(request, 'accounts/login_sms.jinja', c)
@login_required @login_required
def account_index(request): def account_index(request):
return render(request, 'accounts/index.jinja') return render(request, 'accounts/index.jinja')
@login_required @login_required
def account_logout(request): def account_logout(request):
logout(request) logout(request)
return redirect('/') return redirect('/')
@login_required @login_required
def order_detail(request, pk): def order_detail(request, pk):
order = get_object_or_404(OrderData, pk=pk, profile=request.user) order = get_object_or_404(OrderData, pk=pk, profile=request.user)
c = dict(order=order) c = dict(order=order)
return render(request, 'accounts/order_detail.jinja', c) return render(request, 'accounts/order_detail.jinja', c)

@ -15,14 +15,15 @@ def call_order(request):
Телефон: {} Телефон: {}
Время: {} Время: {}
'''.format( '''.format(
request.POST['name'], request.POST['name'],
request.POST['phone'], request.POST['phone'],
request.POST['time'], request.POST['time'],
)) ))
except Exception as e: except Exception as e:
retval = dict(error=True) retval = dict(error=True)
return JsonResponse(retval) return JsonResponse(retval)
@csrf_exempt @csrf_exempt
def order_order(request): def order_order(request):
retval = dict(error=False) retval = dict(error=False)
@ -36,14 +37,12 @@ def order_order(request):
Email: {} Email: {}
Комментарий: {} Комментарий: {}
'''.format( '''.format(
item.title, item.title,
request.POST['name'], request.POST['name'],
request.POST['phone'], request.POST['phone'],
request.POST['email'], request.POST['email'],
request.POST['comment'], request.POST['comment'],
)) ))
except Exception as e: except Exception as e:
retval = dict(error=True) retval = dict(error=True)
return JsonResponse(retval) return JsonResponse(retval)

@ -15,9 +15,11 @@ def escape(text):
use conditional_escape() instead. use conditional_escape() instead.
""" """
return mark_safe(force_text(text).replace( return mark_safe(force_text(text).replace(
'&', '&amp;').replace('<', '&lt;') '&', '&amp;').replace('<', '&lt;')
.replace('>', '&gt;').replace( .replace('>', '&gt;').replace(
'"', '&quot;').replace("'", '&#39;')) '"', '&quot;').replace("'", '&#39;'))
escape = allow_lazy(escape, six.text_type, SafeText) escape = allow_lazy(escape, six.text_type, SafeText)

@ -88,7 +88,6 @@ ROOT_URLCONF = 'batiskaf.urls'
WSGI_APPLICATION = 'batiskaf.wsgi.application' WSGI_APPLICATION = 'batiskaf.wsgi.application'
# Database # Database
# https://docs.djangoproject.com/en/1.7/ref/settings/#databases # https://docs.djangoproject.com/en/1.7/ref/settings/#databases
if DEBUG: if DEBUG:
@ -138,7 +137,6 @@ USE_L10N = False
USE_TZ = False USE_TZ = False
# Static files (CSS, JavaScript, Images) # Static files (CSS, JavaScript, Images)
# https://docs.djangoproject.com/en/1.7/howto/static-files/ # https://docs.djangoproject.com/en/1.7/howto/static-files/
@ -268,11 +266,11 @@ PROFILE_TEMP_PASSWORD = 'dE6Hyo9heWck5yiM2dIs'
MERCHANT_CERTIFICATE_ID = "c183d5b8" # ; Серийный номер сертификата Cert Serial Number MERCHANT_CERTIFICATE_ID = "c183d5b8" # ; Серийный номер сертификата Cert Serial Number
MERCHANT_NAME = "BATISKAF-KZ.KZ" # ; Название магазина (продавца) Shop/merchant Name MERCHANT_NAME = "BATISKAF-KZ.KZ" # ; Название магазина (продавца) Shop/merchant Name
PRIVATE_KEY_FN = os.path.join(BASE_DIR, 'kkb_keys', 'cert.prv') # "../paysys/cert.prv" # ; Путь к закрытому ключу Private cert path PRIVATE_KEY_FN = os.path.join(BASE_DIR, 'kkb_keys',
'cert.prv') # "../paysys/cert.prv" # ; Путь к закрытому ключу Private cert path
PRIVATE_KEY_PASS = "1q2w3e4r" # ; Пароль к закрытому ключу Private cert password PRIVATE_KEY_PASS = "1q2w3e4r" # ; Пароль к закрытому ключу Private cert password
# XML_TEMPLATE_FN = "../paysys/template.xml" # ; Путь к XML шаблону XML template path # XML_TEMPLATE_FN = "../paysys/template.xml" # ; Путь к XML шаблону XML template path
# XML_COMMAND_TEMPLATE_FN = "../paysys/command_template.xml" # ; Путь к XML шаблону для команд (возврат/подтверждение) # XML_COMMAND_TEMPLATE_FN = "../paysys/command_template.xml" # ; Путь к XML шаблону для команд (возврат/подтверждение)
PUBLIC_KEY_FN = os.path.join(BASE_DIR, 'kkb_keys', PUBLIC_KEY_FN = os.path.join(BASE_DIR, 'kkb_keys',
'cert.pub') # "../paysys/kkbca.pem" # ; Путь к открытому ключу Public cert path 'cert.pub') # "../paysys/kkbca.pem" # ; Путь к открытому ключу Public cert path
MERCHANT_ID = "92210431" # ; Терминал ИД в банковской Системе MERCHANT_ID = "92210431" # ; Терминал ИД в банковской Системе

@ -2,18 +2,14 @@
{% block title %} {% block title %}
Личный кабинет Личный кабинет
{% endblock %} {% endblock %}
{% block content %} {% block content %}
<div class=" breadcrumbs"> <div class=" breadcrumbs">
<ol class="breadcrumb breadcrumb-arrow"> <ol class="breadcrumb breadcrumb-arrow">
<li><a href="/">Главная</a></li> <li><a href="/">Главная</a></li>
<li class="active"><span>Личный кабинет</span></li> <li class="active"><span>Личный кабинет</span></li>
</ol> </ol>
</div> </div>
<h2>Ваши заказы, {{ request.user.first_name }}:</h2> <h2>Ваши заказы, {{ request.user.first_name }}:</h2>
<br/> <br/>
<div class="row"> <div class="row">
<div class="col-xs-12"> <div class="col-xs-12">
@ -31,13 +27,13 @@
</thead> </thead>
<tbody> <tbody>
{% for order in request.user.orders.all() %} {% for order in request.user.orders.all() %}
<tr> <tr>
<td>{{ order.pk }}</td> <td>{{ order.pk }}</td>
<td>{{ order.created.strftime('%d.%m.%Y') }}</td> <td>{{ order.created.strftime('%d.%m.%Y') }}</td>
<td><a href="/account/order/{{ order.pk }}/"><b>{{ order.first_name }} {{ order.last_name }}</b><br/> <td>
г. {{ order.get_city_display() }}<br/> <a href="/account/order/{{ order.pk }}/"><b>{{ order.first_name }} {{ order.last_name }}</b><br/>
{{ order.address }}</a></td> г. {{ order.get_city_display() }}<br/>
{{ order.address }}</a></td>
<td>{{ order.get_deliv_type_display() }}</td> <td>{{ order.get_deliv_type_display() }}</td>
<td>{{ order.amount }}</td> <td>{{ order.amount }}</td>
<td>{{ order.get_status_display() }}</td> <td>{{ order.get_status_display() }}</td>
@ -49,4 +45,3 @@
</div> </div>
</div> </div>
{% endblock %} {% endblock %}

@ -6,20 +6,16 @@
<div class=" breadcrumbs"> <div class=" breadcrumbs">
<ol class="breadcrumb breadcrumb-arrow"> <ol class="breadcrumb breadcrumb-arrow">
<li><a href="/">Главная</a></li> <li><a href="/">Главная</a></li>
<li class="active"><span>Вход в личный кабинет</span></li> <li class="active"><span>Вход в личный кабинет</span></li>
</ol> </ol>
</div> </div>
<h2>Вход в личный кабинет</h2><br/> <h2>Вход в личный кабинет</h2><br/>
<div class="well well-large"> <div class="well well-large">
<div class="alert alert-info alert-dismissable"> <div class="alert alert-info alert-dismissable">
<h4>Введите номер телефона</h4> <h4>Введите номер телефона</h4>
<p>Если вы уже совершали покупки в нашем интернет-магазине, на ваш номер телефона будет отправлено
<p>Если вы уже совершали покупки в нашем интернет-магазине, на ваш номер телефона будет отправлено SMS-сообщение с одноразовым паролем для входа.</p> SMS-сообщение с одноразовым паролем для входа.</p>
</div>
</div>
<div class="row"> <div class="row">
<div class="login-form col-xs-6 col-xs-offset-3"> <div class="login-form col-xs-6 col-xs-offset-3">
<form action="" class="form" method="post"><input type="hidden" name="csrfmiddlewaretoken" <form action="" class="form" method="post"><input type="hidden" name="csrfmiddlewaretoken"

@ -6,21 +6,16 @@
<div class=" breadcrumbs"> <div class=" breadcrumbs">
<ol class="breadcrumb breadcrumb-arrow"> <ol class="breadcrumb breadcrumb-arrow">
<li><a href="/">Главная</a></li> <li><a href="/">Главная</a></li>
<li><a href="/account/login/">Вход в личный кабинет</a></li> <li><a href="/account/login/">Вход в личный кабинет</a></li>
<li class="active"><span>Ввод одноразового пароля</span></li> <li class="active"><span>Ввод одноразового пароля</span></li>
</ol> </ol>
</div> </div>
<h2>Ввод одноразового пароля</h2><br/> <h2>Ввод одноразового пароля</h2><br/>
<div class="well well-large"> <div class="well well-large">
<div class="alert alert-info alert-dismissable"> <div class="alert alert-info alert-dismissable">
<h4>Проверьте телефон</h4> <h4>Проверьте телефон</h4>
<p>На Ваш номер было отправлено SMS-сообщение с одноразовым паролем для входа. Введите его в поле ниже.</p>
<p>На Ваш номер было отправлено SMS-сообщение с одноразовым паролем для входа. Введите его в поле ниже.</p> </div>
</div>
<div class="row"> <div class="row">
<div class="sms-form col-xs-6 col-xs-offset-3"> <div class="sms-form col-xs-6 col-xs-offset-3">
<form action="" class="form" method="post"><input type="hidden" name="csrfmiddlewaretoken" <form action="" class="form" method="post"><input type="hidden" name="csrfmiddlewaretoken"

@ -6,14 +6,11 @@
<div class=" breadcrumbs"> <div class=" breadcrumbs">
<ol class="breadcrumb breadcrumb-arrow"> <ol class="breadcrumb breadcrumb-arrow">
<li><a href="/">Главная</a></li> <li><a href="/">Главная</a></li>
<li><a href="/account/">Личный кабинет</a></li> <li><a href="/account/">Личный кабинет</a></li>
<li class="active"><span>Заказ номер {{ order.pk }}</span></li> <li class="active"><span>Заказ номер {{ order.pk }}</span></li>
</ol> </ol>
</div> </div>
<h2>Заказ №{{ order.pk }}</h2> <h2>Заказ №{{ order.pk }}</h2>
<br/> <br/>
<div class="row"> <div class="row">
<div class="panel "> <div class="panel ">
@ -42,14 +39,11 @@
</td> </td>
<td class="text-right info">{{ item.get_price() }} ₸</td> <td class="text-right info">{{ item.get_price() }} ₸</td>
<td class="text-right">{{ count }} шт. <td class="text-right">{{ count }} шт.
</td> </td>
</tr> </tr>
{% endfor %} {% endfor %}
</tbody> </tbody>
</table> </table>
</div> </div>
</div> </div>
{% endblock %} {% endblock %}

@ -1,12 +1,15 @@
{% extends 'base.jinja' %} {% extends 'base.jinja' %}
{% block meta_description %} {% block meta_description %}
10 причин, по которым стоит обратить внимание на интернет-магазин снаряжения для дайвинга и подводной охоты Батискаф-Казахстан. 10 причин, по которым стоит обратить внимание на интернет-магазин снаряжения для дайвинга и подводной охоты
Батискаф-Казахстан.
{% endblock %} {% endblock %}
{% block meta_keywords %} {% block meta_keywords %}
Преимущества, Ассортимент, доступные цены, товар, дилер, торговые марки, Beuchat, Scorpena, Доставка, Сервис, АлемТат, Оплата, Заказ, Visa, Master Card, Подводная охота, Дайвинг, Интернет-Магазин, Снаряжение, Оборудование, Батискаф-Казахстан Преимущества, Ассортимент, доступные цены, товар, дилер, торговые марки, Beuchat, Scorpena, Доставка, Сервис,
АлемТат, Оплата, Заказ, Visa, Master Card, Подводная охота, Дайвинг, Интернет-Магазин, Снаряжение, Оборудование,
Батискаф-Казахстан
{% endblock %} {% endblock %}
{% block title %} {% block title %}
Преимущества Преимущества
{% endblock %} {% endblock %}
{% block content %} {% block content %}
<h3>10 причин, по которым стоит обратить внимание на наш интернет-магазин "Батискаф - Казахстан"</h3> <h3>10 причин, по которым стоит обратить внимание на наш интернет-магазин "Батискаф - Казахстан"</h3>
@ -46,7 +49,6 @@
<a href="/">Батискаф Казахстан</a> является <a <a href="/">Батискаф Казахстан</a> является <a
href="http://www.ruf.ru/instruktoryi-po-podvodnoy-ohote.html">действующий инструктор по подводной href="http://www.ruf.ru/instruktoryi-po-podvodnoy-ohote.html">действующий инструктор по подводной
охоте, Федерации Подводного Спорта России Полинкин Матвей Владимирович</a>. охоте, Федерации Подводного Спорта России Полинкин Матвей Владимирович</a>.
</li> </li>
<li> <li>
Если же вы посетили наш сайт в нерабочие часы, вы просто оставляете заявку на звонок с указанием Если же вы посетили наш сайт в нерабочие часы, вы просто оставляете заявку на звонок с указанием
@ -63,22 +65,23 @@
</li> </li>
<li> <li>
Наш магазин работает в тесном взаимодействии с самым продвинутым Казахстанским Клубом подводной охоты и Наш магазин работает в тесном взаимодействии с самым продвинутым Казахстанским Клубом подводной охоты и
дайвинга "<a href="http://garpun.kz">Гарпун</a>", который постоянно проводит тесты снаряжения и оборудования для подводной охоты и дайвинга "<a href="http://garpun.kz">Гарпун</a>", который постоянно проводит тесты снаряжения и
оборудования для подводной охоты и
дайвинга, а также является организатором и вдохновителем проектов по продвижению Подводной Охоты на дайвинга, а также является организатором и вдохновителем проектов по продвижению Подводной Охоты на
территории РК,таких как фестиваль <a href="http://beuchat.kz/beuchat-fest-2014/registration/">Beuchat Fest Казахстан (2014 год)</a>, получивший статус ежегодного, также территории РК,таких как фестиваль <a href="http://beuchat.kz/beuchat-fest-2014/registration/">Beuchat
Fest Казахстан (2014 год)</a>, получивший статус ежегодного, также
отмеченный неоднократными статьями в самом популярном журнале подводных охотников "<a отмеченный неоднократными статьями в самом популярном журнале подводных охотников "<a
href="http://podvoh.ru">Мир Подводной Охоты</a>". href="http://podvoh.ru">Мир Подводной Охоты</a>".
</li> </li>
</ol> </ol>
<hr/> <hr/>
<div class="row"> <div class="row">
<div class="col-xs-6"> <div class="col-xs-6">
<img src="/static/img/cert_beuchat.jpg" alt="" class="img-responsive img-thumbnail"/> <img src="/static/img/cert_beuchat.jpg" alt="" class="img-responsive img-thumbnail"/>
</div>
<div class="col-xs-6">
<img src="/static/img/cert_scorpena.jpg" alt="" class="img-responsive img-thumbnail"/>
</div>
</div> </div>
<div class="col-xs-6">
<img src="/static/img/cert_scorpena.jpg" alt="" class="img-responsive img-thumbnail"/>
</div>
</div>
</div> </div>
{% endblock %} {% endblock %}

@ -6,308 +6,267 @@
<!-- The above 3 meta tags *must* come first in the head; any other head content must come *after* these tags --> <!-- The above 3 meta tags *must* come first in the head; any other head content must come *after* these tags -->
<title>{% block title %}Интернет-Магазин снаряжения для дайвинга и подводной охоты Батискаф-Казахстан{% endblock %} <title>{% block title %}Интернет-Магазин снаряжения для дайвинга и подводной охоты Батискаф-Казахстан{% endblock %}
| Batiskaf-KZ.kz</title> | Batiskaf-KZ.kz</title>
<meta name="yandex" content="all"/> <meta name="yandex" content="all"/>
<meta name="Description" <meta name="Description"
content="{% block meta_description %}Онлайн-магазин снаряжения для дайвинга и подводной охоты с доставкой по Казахстану{% endblock %}"> content="{% block meta_description %}Онлайн-магазин снаряжения для дайвинга и подводной охоты с доставкой по Казахстану{% endblock %}">
<meta name="Keywords" <meta name="Keywords"
content="{% block meta_keywords %}Снаряжение для подводной охоты в Казахстане, снаряжение для дайвинга в Казахстане, магазин подводной охоты, магазин дайвинга{% endblock %}"/> content="{% block meta_keywords %}Снаряжение для подводной охоты в Казахстане, снаряжение для дайвинга в Казахстане, магазин подводной охоты, магазин дайвинга{% endblock %}"/>
<meta name="author" content="Sitio.kz"> <meta name="author" content="Sitio.kz">
<meta name='wmail-verification' content='9f76895b5c61bf07549fac4c6cfaed30'/> <meta name='wmail-verification' content='9f76895b5c61bf07549fac4c6cfaed30'/>
<meta name="google-site-verification" content="5r-tJIBvrAgxrChs6U83OM9wSoUjp_lgTsZm4RiLeqE"/> <meta name="google-site-verification" content="5r-tJIBvrAgxrChs6U83OM9wSoUjp_lgTsZm4RiLeqE"/>
<link href='/static/favicon.ico?v=1' type='image/x-icon' rel='shortcut icon'/> <link href='/static/favicon.ico?v=1' type='image/x-icon' rel='shortcut icon'/>
<link href="/static/bower_components/Bootflat/css/bootstrap.min.css" rel="stylesheet">
<link href="/static/bower_components/Bootflat/bootflat/css/bootflat.min.css" rel="stylesheet">
<link href="/static/bower_components/Bootflat/css/bootstrap.min.css" rel="stylesheet"> <link href="/static/less/_.css?v=14" rel="stylesheet">
<link href="/static/bower_components/Bootflat/bootflat/css/bootflat.min.css" rel="stylesheet"> <link href="/static/css/select2.min.css" rel="stylesheet">
<link rel="stylesheet" type="text/css" href="/static/bower_components/sweetalert/lib/sweet-alert.css">
<link href="/static/less/_.css?v=14" rel="stylesheet"> <link rel="stylesheet" href="/static/js/mp/dist/magnific-popup.css">
<link href="/static/css/select2.min.css" rel="stylesheet"> <link rel="stylesheet" href="/static/star-rating/jquery.rating.css">
<link rel="stylesheet" type="text/css" href="/static/bower_components/sweetalert/lib/sweet-alert.css"> <link href="/static/js/formstone/css/dropdown.css" rel="stylesheet">
<link rel="stylesheet" href="/static/js/mp/dist/magnific-popup.css"> {% block stylesheet %}{% endblock stylesheet %}
<link rel="stylesheet" href="/static/star-rating/jquery.rating.css"> <!-- HTML5 shim and Respond.js for IE8 support of HTML5 elements and media queries -->
<link href="/static/js/formstone/css/dropdown.css" rel="stylesheet"> <!-- WARNING: Respond.js doesn't work if you view the page via file:// -->
{% block stylesheet %}{% endblock stylesheet %}
<!-- HTML5 shim and Respond.js for IE8 support of HTML5 elements and media queries -->
<!-- WARNING: Respond.js doesn't work if you view the page via file:// -->
<!--[if lt IE 9]> <!--[if lt IE 9]>
<script src="https://oss.maxcdn.com/html5shiv/3.7.2/html5shiv.min.js"></script> <script src="https://oss.maxcdn.com/html5shiv/3.7.2/html5shiv.min.js"></script>
<script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script> <script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script>
<![endif]--> <![endif]-->
</head> </head>
<body> <body>
<div class="container-fluid header-top">
<div class="container">
<div class="container-fluid header-top"> <div class="top-left-links"><a href="/news/">Новости</a> | <a href="/payment/">Оплата</a> | <a
<div class="container">
<div class="top-left-links"><a href="/news/">Новости</a> | <a href="/payment/">Оплата</a> | <a
href="/delivery/">Доставка</a> | <a href="/delivery/">Доставка</a> | <a
href="/advantages/">Преимущества</a> | <a href="/advantages/">Преимущества</a> | <a
href="/contacts/">Контакты</a></div> href="/contacts/">Контакты</a></div>
<div class="top-right-links"> <div class="top-right-links">
<span class="yellow">+7 (777) 163-14-34</span> |
<span class="yellow">+7 (777) 163-14-34</span> | <span class="yellow">+7 (775) 859-12-17</span> |
<span class="yellow">+7 (775) 859-12-17</span> | <span class="yellow"><a href="#call-form" id="order-call-link"><span
<span class="yellow"><a href="#call-form" id="order-call-link"><span class="glyphicon glyphicon-phone-alt" class="glyphicon glyphicon-phone-alt"
aria-hidden="true"></span> Заказать aria-hidden="true"></span> Заказать
звонок</a></span> | звонок</a></span> |
<a href="mailto:admin@batiskaf-kz.kz"><span class="glyphicon glyphicon-envelope" <a href="mailto:admin@batiskaf-kz.kz"><span class="glyphicon glyphicon-envelope"
aria-hidden="true"></span> Написать нам</a> | <a aria-hidden="true"></span> Написать нам</a> | <a
href="skype:batiskaf_kz?chat"><img href="skype:batiskaf_kz?chat"><img
src="/static/img/skype.png" alt="Написать в Skype" title="Написать в Skype" width="20" height="20"/></a> src="/static/img/skype.png" alt="Написать в Skype" title="Написать в Skype" width="20" height="20"/></a>
</div>
</div> </div>
</div> </div>
</div> <div class="container-fluid header-middle">
<div class="container-fluid header-middle"> <div class="container">
<div class="container"> <div class="logo-container">
<div class="logo-container"> <a href="/"><img src="/static/img/logo.png" alt="Батискаф-Казахстан" title="Батискаф-Казахстан" width="457"
<a href="/"><img src="/static/img/logo.png" alt="Батискаф-Казахстан" title="Батискаф-Казахстан" width="457" height="104"/></a>
height="104"/></a> </div>
</div> <div class="quick-access-container">
<div class="quick-access-container"> <form action="/store/search/" method="get">
<input type="text" placeholder="Что ищем?" name="q" value="{{ request.GET['q']|default('') }}"/>
<form action="/store/search/" method="get"> <button type="submit"><span class="glyphicon glyphicon-search" aria-hidden="true"></span></button>
<input type="text" placeholder="Что ищем?" name="q" value="{{ request.GET['q']|default('') }}"/> </form>
<button type="submit"><span class="glyphicon glyphicon-search" aria-hidden="true"></span></button> <p class="small-welcome">Добро пожаловать в интернет-магазин Батискаф!</p>
</form> <p class="quick-links"><a href="/feedback/"><strong class="text-info">Отзывы о магазине</strong></a> | <a
<p class="small-welcome">Добро пожаловать в интернет-магазин Батискаф!</p> href="/account/">Мой аккаунт</a> | <a
href="/store/cart/">Моя
<p class="quick-links"><a href="/feedback/"><strong class="text-info">Отзывы о магазине</strong></a> | <a корзина {% if (request|cart).items|length > 0 %}
href="/account/">Мой аккаунт</a> | <a <span class="label label-success">{{ (request|cart).items|length }}</span>{% endif %}</a>
href="/store/cart/">Моя {% if request.user.is_authenticated() %}
корзина {% if (request|cart).items|length > 0 %} | <a href="/account/logout/">Выйти</a>
<span class="label label-success">{{ (request|cart).items|length }}</span>{% endif %}</a> {% else %}
| <a href="/account/login/">Войти</a>
{% if request.user.is_authenticated() %} {% endif %}
</p>
</div>
| <a href="/account/logout/">Выйти</a> </div>
{% else %} </div>
| <a href="/account/login/">Войти</a> <div class="container-fluid navbar-container" id="shop-categories" data-spy="affix" data-offset-top="170">
{% endif %} <div class="navbar navbar-inverse yamm navbar-static-top">
</p> <div class="container">
</div> <div class="navbar-header">
</div> <a href="/" class="navbar-brand"><span class="glyphicon glyphicon-home" aria-hidden="true"></span></a>
</div> </div>
<div>
<div class="container-fluid navbar-container" id="shop-categories" data-spy="affix" data-offset-top="170"> <ul class="nav navbar-nav">
<div class="navbar navbar-inverse yamm navbar-static-top"> {% for category in main_categories %}
<div class="container"> <li class="dropdown yamm-fw"><a href="#" data-toggle="dropdown"
<div class="navbar-header"> class="dropdown-toggle "><span
<a href="/" class="navbar-brand"><span class="glyphicon glyphicon-home" aria-hidden="true"></span></a> class="lead">{{ category.title }}</span></a>
</div> <ul class="dropdown-menu">
<div> <li>
<ul class="nav navbar-nav"> <div class="yamm-content">
{% for category in main_categories %} <div class="row">
<li class="dropdown yamm-fw"><a href="#" data-toggle="dropdown" {% for child in category.get_childs_ordered_by_count()|batch(2) %}
class="dropdown-toggle "><span <div class="col-xs-3 col-sm-3 col-md-3 col-lg-3">
class="lead">{{ category.title }}</span></a> {% for col in child %}
<ul class="dropdown-menu">
<li>
<div class="yamm-content">
<div class="row">
{% for child in category.get_childs_ordered_by_count()|batch(2) %}
<div class="col-xs-3 col-sm-3 col-md-3 col-lg-3">
{% for col in child %}
<ul> <ul>
<li><a class="title" <li><a class="title"
href="{{ col.get_absolute_url() }}">{{ col.title }}</a> href="{{ col.get_absolute_url() }}">{{ col.title }}</a>
</li> </li>
{% for child2 in col.childs.order_by('priority') %} {% for child2 in col.childs.order_by('priority') %}
<li> <li>
<a href="{{ child2.get_absolute_url() }}">{{ child2.title }}</a> <a href="{{ child2.get_absolute_url() }}">{{ child2.title }}</a>
</li> </li>
{% endfor %} {% endfor %}
</ul>
</ul>
{% endfor %} {% endfor %}
</div> </div>
{% endfor %} {% endfor %}
</div>
</div> </div>
</li> </div>
</ul> </li>
</li> </ul>
{% endfor %} </li>
<li><a href="/store/sale/"><span class="lead">Распродажа!</span></a> {% endfor %}
<li><a href="/store/sale/"><span class="lead">Распродажа!</span></a>
</li> </li>
<!-- <li><a href="/store/leaders/"><span class="lead">Лидеры продаж</span></a> <!-- <li><a href="/store/leaders/"><span class="lead">Лидеры продаж</span></a>
</li> -->
</li> --> <li class="dropdown yamm-fw"><a href="#" data-toggle="dropdown"
<li class="dropdown yamm-fw"><a href="#" data-toggle="dropdown" class="dropdown-toggle "><span
class="dropdown-toggle "><span class="lead">Все бренды</span></a>
class="lead">Все бренды</span></a> <ul class="dropdown-menu">
<ul class="dropdown-menu"> <li>
<li> <div class="yamm-content">
<div class="yamm-content"> <div class="row">
<div class="row"> {% for brand in all_brands %}
<div class="col-xs-3 col-sm-3 col-md-3 col-lg-3">
{% for brand in all_brands %} <ul>
<div class="col-xs-3 col-sm-3 col-md-3 col-lg-3"> <li><a class="title"
<ul> href="/store/search/?q=&brand[]={{ brand.pk }}">{{ brand.title }}</a>
<li><a class="title" </li>
href="/store/search/?q=&brand[]={{ brand.pk }}">{{ brand.title }}</a> </ul>
</li>
</ul>
</div>
{% endfor %}
</div> </div>
</div> {% endfor %}
</li> </div>
</ul> </div>
</li> </li>
<li style="background: hsl(36, 100%, 50%)"><a href="/promo/"><span class="lead">Акции</span></a></li>
</ul> </ul>
</div> </li>
</div> <li style="background: hsl(36, 100%, 50%)"><a href="/promo/"><span class="lead">Акции</span></a>
</li>
</ul>
</div> </div>
</div> </div>
<div class="container main-container"> </div>
{% block content %} </div>
<div class="container main-container">
{% endblock %} {% block content %}
</div> {% endblock %}
<footer class="footer"> </div>
<div class="container-fluid footer-top"> <footer class="footer">
</div> <div class="container-fluid footer-top">
<div class="container-fluid footer-bottom"> </div>
<div class="container"> <div class="container-fluid footer-bottom">
<div class="container">
<div class="row">
<div class="footer-col col-xs-4">
<span class="title">О НАС</span><br/><br/>
<div class="row"> <div class="row">
<div class="footer-col col-xs-4"> <div class="col-xs-6">
<span class="title">О НАС</span><br/><br/> <a href="/news/">Новости</a><br/>
<a
<div class="row">
<div class="col-xs-6">
<a href="/news/">Новости</a><br/>
<a
href="/faq/">FAQ</a><br/> href="/faq/">FAQ</a><br/>
<a href="/contacts/">Контакты</a><br/> <a href="/contacts/">Контакты</a><br/>
</div>
<div class="col-xs-6">
</div>
</div>
</div> </div>
<div class="footer-col col-xs-4"> <div class="col-xs-6">
<span class="title">ОБСЛУЖИВАНИЕ КЛИЕНТОВ</span><br/><br/>
<div class="row">
<div class="col-xs-6">
<a href="/delivery/">Доставка</a><br/>
<a href="/payment/">Оплата</a><br/>
<a href="/advantages/">Преимущества</a><br/>
</div>
<div class="col-xs-6">
<a href="/size/">Размерные сетки</a><br/>
<a href="/promo/">Промо-акции</a><br/>
</div>
</div>
</div>
<div class="footer-col col-xs-4 text-center col-last">
<span class="title">МЫ В ИНТЕРНЕТЕ</span><br/><br/>
<div class="row">
<div class="col-xs-12 text-center">
<a href="https://www.facebook.com/groups/383011475222787/" target="_blank">
<img src="/static/img/icon-fb.png" style="display: inline" width="32" height="32"
alt="Группа Facebook" title="Группа Facebook"/>
</a>
<a href="http://vk.com/batiskaf_kz" target="_blank">
<img src="/static/img/icon-vk.png" style="display: inline" width="32" height="32"
alt="Группа ВКонтакте" title="Группа ВКонтакте"/>
</a>
<a href="http://ok.ru/group/54597434081295" target="_blank">
<img src="/static/img/icon-ok.png" style="display: inline" width="32" height="32"
alt="Группа Одноклассники" title="Группа Одноклассники"/>
</a>
<a href="https://www.youtube.com/user/batiskafspb" target="_blank">
<img src="/static/img/icon-yt.png" style="display: inline" width="32" height="32"
alt="Канал на YouTube" title="Канал на YouTube"/>
</a>
</div>
</div>
</div> </div>
</div> </div>
<br/><br/><br/><br/> </div>
<div class="footer-col col-xs-4">
<p> <span class="title">ОБСЛУЖИВАНИЕ КЛИЕНТОВ</span><br/><br/>
<a href="/sitemap.xml">Карта сайта</a> &nbsp;|&nbsp; <a
href="/store/search/?q=">Поиск</a> &nbsp;|&nbsp; <a href="/contacts/">Контакты</a> &nbsp;
</p><br/>
<br/>
<div class="row"> <div class="row">
<div class="col-xs-6"> <div class="col-xs-6">
<p class="lead"> <a href="/delivery/">Доставка</a><br/>
Все права защищены 2015 © компанией Батискаф-Казахстан <br/> <a href="/payment/">Оплата</a><br/>
<small>Сделано в <a href="http://sitio.kz">SitIO</a></small> <a href="/advantages/">Преимущества</a><br/>
</p>
</div> </div>
<div class="col-xs-6 text-right"> <div class="col-xs-6">
<!-- Yandex.Metrika informer --> <a href="/size/">Размерные сетки</a><br/>
<a href="https://metrika.yandex.ru/stat/?id=30685703&amp;from=informer" <a href="/promo/">Промо-акции</a><br/>
target="_blank" rel="nofollow"><img </div>
</div>
</div>
<div class="footer-col col-xs-4 text-center col-last">
<span class="title">МЫ В ИНТЕРНЕТЕ</span><br/><br/>
<div class="row">
<div class="col-xs-12 text-center">
<a href="https://www.facebook.com/groups/383011475222787/" target="_blank">
<img src="/static/img/icon-fb.png" style="display: inline" width="32" height="32"
alt="Группа Facebook" title="Группа Facebook"/>
</a>
<a href="http://vk.com/batiskaf_kz" target="_blank">
<img src="/static/img/icon-vk.png" style="display: inline" width="32" height="32"
alt="Группа ВКонтакте" title="Группа ВКонтакте"/>
</a>
<a href="http://ok.ru/group/54597434081295" target="_blank">
<img src="/static/img/icon-ok.png" style="display: inline" width="32" height="32"
alt="Группа Одноклассники" title="Группа Одноклассники"/>
</a>
<a href="https://www.youtube.com/user/batiskafspb" target="_blank">
<img src="/static/img/icon-yt.png" style="display: inline" width="32" height="32"
alt="Канал на YouTube" title="Канал на YouTube"/>
</a>
</div>
</div>
</div>
</div>
<br/><br/><br/><br/>
<p>
<a href="/sitemap.xml">Карта сайта</a> &nbsp;|&nbsp; <a
href="/store/search/?q=">Поиск</a> &nbsp;|&nbsp; <a href="/contacts/">Контакты</a> &nbsp;
</p><br/>
<br/>
<div class="row">
<div class="col-xs-6">
<p class="lead">
Все права защищены 2015 © компанией Батискаф-Казахстан <br/>
<small>Сделано в <a href="http://sitio.kz">SitIO</a></small>
</p>
</div>
<div class="col-xs-6 text-right">
<!-- Yandex.Metrika informer -->
<a href="https://metrika.yandex.ru/stat/?id=30685703&amp;from=informer"
target="_blank" rel="nofollow"><img
src="//bs.yandex.ru/informer/30685703/3_0_FED000FF_FED000FF_0_pageviews" src="//bs.yandex.ru/informer/30685703/3_0_FED000FF_FED000FF_0_pageviews"
style="width:88px; height:31px; border:0;" alt="Яндекс.Метрика" style="width:88px; height:31px; border:0;" alt="Яндекс.Метрика"
title="Яндекс.Метрика: данные за сегодня (просмотры, визиты и уникальные посетители)" title="Яндекс.Метрика: данные за сегодня (просмотры, визиты и уникальные посетители)"
onclick="try{Ya.Metrika.informer({i:this,id:30685703,lang:'ru'});return false}catch(e){}"/></a> onclick="try{Ya.Metrika.informer({i:this,id:30685703,lang:'ru'});return false}catch(e){}"/></a>
<!-- /Yandex.Metrika informer --> <!-- /Yandex.Metrika informer -->
<!-- Yandex.Metrika counter -->
<!-- Yandex.Metrika counter --> <script type="text/javascript">
<script type="text/javascript"> (function (d, w, c) {
(function (d, w, c) { (w[c] = w[c] || []).push(function () {
(w[c] = w[c] || []).push(function () { try {
try { w.yaCounter30685703 = new Ya.Metrika({
w.yaCounter30685703 = new Ya.Metrika({ id: 30685703,
id: 30685703, webvisor: true,
webvisor: true, clickmap: true,
clickmap: true, trackLinks: true,
trackLinks: true, accurateTrackBounce: true
accurateTrackBounce: true
});
} catch (e) {
}
}); });
} catch (e) {
var n = d.getElementsByTagName("script")[0], }
});
var n = d.getElementsByTagName("script")[0],
s = d.createElement("script"), s = d.createElement("script"),
f = function () { f = function () {
n.parentNode.insertBefore(s, n); n.parentNode.insertBefore(s, n);
}; };
s.type = "text/javascript"; s.type = "text/javascript";
s.async = true; s.async = true;
s.src = (d.location.protocol == "https:" ? "https:" : "http:") + "//mc.yandex.ru/metrika/watch.js"; s.src = (d.location.protocol == "https:" ? "https:" : "http:") + "//mc.yandex.ru/metrika/watch.js";
if (w.opera == "[object Opera]") {
if (w.opera == "[object Opera]") { d.addEventListener("DOMContentLoaded", f, false);
d.addEventListener("DOMContentLoaded", f, false); } else {
} else { f();
f(); }
} })(document, window, "yandex_metrika_callbacks");
})(document, window, "yandex_metrika_callbacks"); </script>
</script> <noscript>
<noscript> <div><img src="//mc.yandex.ru/watch/30685703" style="position:absolute; left:-9999px;" alt=""/>
<div><img src="//mc.yandex.ru/watch/30685703" style="position:absolute; left:-9999px;" alt=""/> </div>
</div> </noscript>
</noscript> <!-- /Yandex.Metrika counter -->
<!-- /Yandex.Metrika counter --> <!-- ZERO.kz -->
<!-- ZERO.kz -->
<span id="_zero_64378"> <span id="_zero_64378">
<noscript> <noscript>
<a href="http://zero.kz/?s=64378" target="_blank"> <a href="http://zero.kz/?s=64378" target="_blank">
@ -315,150 +274,145 @@
</a> </a>
</noscript> </noscript>
</span> </span>
<script type="text/javascript"><!--
<script type="text/javascript"><!-- var _zero_kz_ = _zero_kz_ || [];
var _zero_kz_ = _zero_kz_ || []; _zero_kz_.push(["id", 64378]);
_zero_kz_.push(["id", 64378]); _zero_kz_.push(["type", 1]);
_zero_kz_.push(["type", 1]); (function () {
var a = document.getElementsByTagName("script")[0],
(function () { s = document.createElement("script");
var a = document.getElementsByTagName("script")[0], s.type = "text/javascript";
s = document.createElement("script"); s.async = true;
s.type = "text/javascript"; s.src = (document.location.protocol == "https:" ? "https:" : "http:")
s.async = true; + "//c.zero.kz/z.js";
s.src = (document.location.protocol == "https:" ? "https:" : "http:") a.parentNode.insertBefore(s, a);
+ "//c.zero.kz/z.js";
a.parentNode.insertBefore(s, a);
})(); //--> })(); //-->
</script> </script>
<!-- End ZERO.kz --> <!-- End ZERO.kz -->
<!--DIVEtop COUNTER--> <!--DIVEtop COUNTER-->
<a target=_blank href= <a target=_blank href=
http://divetop.ru?SID=1642><img src= http://divetop.ru?SID=1642><img src=
http://divetop.ru/baner.php?SID=1642&t=1&c=1 http://divetop.ru/baner.php?SID=1642&t=1&c=1
border=0 height=31 width=88 border=0 height=31 width=88
alt='Дайвинг - рейтинг DIVEtop'></a> alt='Дайвинг - рейтинг DIVEtop'></a>
<!--/COUNTER--> <!--/COUNTER-->
<!--LiveInternet counter--><script type="text/javascript"><!-- <!--LiveInternet counter-->
document.write("<a href='//www.liveinternet.ru/click' "+ <script type="text/javascript"><!--
"target=_blank><img src='//counter.yadro.ru/hit?t16.6;r"+ document.write("<a href='//www.liveinternet.ru/click' " +
escape(document.referrer)+((typeof(screen)=="undefined")?"": "target=_blank><img src='//counter.yadro.ru/hit?t16.6;r" +
";s"+screen.width+"*"+screen.height+"*"+(screen.colorDepth? escape(document.referrer) + ((typeof(screen) == "undefined") ? "" :
screen.colorDepth:screen.pixelDepth))+";u"+escape(document.URL)+ ";s" + screen.width + "*" + screen.height + "*" + (screen.colorDepth ?
";"+Math.random()+ screen.colorDepth : screen.pixelDepth)) + ";u" + escape(document.URL) +
"' alt='' title='LiveInternet: показано число просмотров за 24"+ ";" + Math.random() +
" часа, посетителей за 24 часа и за сегодня' "+ "' alt='' title='LiveInternet: показано число просмотров за 24" +
"border='0' width='88' height='31'><\/a>") " часа, посетителей за 24 часа и за сегодня' " +
"border='0' width='88' height='31'><\/a>")
//--></script><!--/LiveInternet--> //--></script><!--/LiveInternet-->
</div> </div>
</div> </div>
</div> </div>
</div> </div>
</footer> </footer>
{% if request._messages %} {% if request._messages %}
<ul class="messages"> <ul class="messages">
{% for message in request._messages %} {% for message in request._messages %}
<li{% if message.tags %} data-type="{{ message.tags }}"{% endif %}>{{ message|safe }}</li> <li{% if message.tags %} data-type="{{ message.tags }}"{% endif %}>{{ message|safe }}</li>
{% endfor %} {% endfor %}
</ul> </ul>
{% endif %} {% endif %}
<form action="/" id="call-form" class="form mfp-hide call-form" method="post"> <form action="/" id="call-form" class="form mfp-hide call-form" method="post">
<h3>Заказать бесплатный звонок</h3> <h3>Заказать бесплатный звонок</h3>
<div class="form-group"> <div class="form-group">
<label class="control-label" for="id_name">Ваше имя</label> <label class="control-label" for="id_name">Ваше имя</label>
<div class=" "> <div class=" ">
<input class=" form-control" id="id_name" maxlength="45" name="name" type="text"> <input class=" form-control" id="id_name" maxlength="45" name="name" type="text">
</div> </div>
</div> </div>
<div class="form-group"> <div class="form-group">
<label class="control-label" for="id_phone">Номер телефона</label> <label class="control-label" for="id_phone">Номер телефона</label>
<div class=" "> <div class=" ">
<input class=" form-control" id="id_phone" maxlength="254" name="phone" type="phone"> <input class=" form-control" id="id_phone" maxlength="254" name="phone" type="phone">
</div> </div>
</div> </div>
<div class="form-group"> <div class="form-group">
<label class="control-label" for="id_time">Удобное время (желательно с 10:00 до 19:00)</label> <label class="control-label" for="id_time">Удобное время (желательно с 10:00 до 19:00)</label>
<div class=" "> <div class=" ">
<input class=" form-control" id="id_time" maxlength="254" name="time" type="time"> <input class=" form-control" id="id_time" maxlength="254" name="time" type="time">
</div> </div>
</div> </div>
<div class="form-group text-left"> <div class="form-group text-left">
<button type="submit" name="call-order" class="btn btn-primary"><span class="glyphicon glyphicon-phone-alt" <button type="submit" name="call-order" class="btn btn-primary"><span class="glyphicon glyphicon-phone-alt"
aria-hidden="true"></span> Заказать звонок aria-hidden="true"></span> Заказать звонок
</button> </button>
</div> </div>
</form> </form>
<form action="/" id="order-form" class="form mfp-hide order-form" method="post"> <form action="/" id="order-form" class="form mfp-hide order-form" method="post">
<h3>Запрос наличия и цены</h3> <h3>Запрос наличия и цены</h3>
<input id="id_item" name="item" type="hidden"> <input id="id_item" name="item" type="hidden">
<div class="form-group"> <div class="form-group">
<label class="control-label" for="id_name">Ваше имя</label> <label class="control-label" for="id_name">Ваше имя</label>
<div class=" "> <div class=" ">
<input class=" form-control" id="id_name" maxlength="45" name="name" type="text"> <input class=" form-control" id="id_name" maxlength="45" name="name" type="text">
</div> </div>
</div> </div>
<div class="form-group"> <div class="form-group">
<label class="control-label" for="id_phone">Номер телефона</label> <label class="control-label" for="id_phone">Номер телефона</label>
<div class=" "> <div class=" ">
<input class=" form-control" id="id_phone" maxlength="254" name="phone" type="text"> <input class=" form-control" id="id_phone" maxlength="254" name="phone" type="text">
</div> </div>
</div> </div>
<div class="form-group"> <div class="form-group">
<label class="control-label" for="id_email">Email (если есть)</label> <label class="control-label" for="id_email">Email (если есть)</label>
<div class=" "> <div class=" ">
<input class=" form-control" id="id_email" maxlength="254" name="email" type="email"> <input class=" form-control" id="id_email" maxlength="254" name="email" type="email">
</div> </div>
</div> </div>
<div class="form-group"> <div class="form-group">
<label class="control-label" for="id_comment">Комментарий (необязательно)</label> <label class="control-label" for="id_comment">Комментарий (необязательно)</label>
<div class=" "> <div class=" ">
<input class=" form-control" id="id_comment" maxlength="254" name="comment" type="text"> <input class=" form-control" id="id_comment" maxlength="254" name="comment" type="text">
</div> </div>
</div> </div>
<div class="form-group text-left"> <div class="form-group text-left">
<button type="submit" name="call-order" class="btn btn-primary"><span class="glyphicon glyphicon-phone-alt" <button type="submit" name="call-order" class="btn btn-primary"><span class="glyphicon glyphicon-phone-alt"
aria-hidden="true"></span> Сделать запрос aria-hidden="true"></span> Сделать запрос
</button> </button>
</div> </div>
</form> </form>
{% block footer_scripts %} {% block footer_scripts %}
<script src="/static/bower_components/jquery/dist/jquery.min.js"></script> <script src="/static/bower_components/jquery/dist/jquery.min.js"></script>
<script src="/static/bower_components/bootstrap/dist/js/bootstrap.min.js"></script> <script src="/static/bower_components/bootstrap/dist/js/bootstrap.min.js"></script>
<script src="/static/bower_components/Bootflat/bootflat/js/jquery.fs.stepper.min.js"></script> <script src="/static/bower_components/Bootflat/bootflat/js/jquery.fs.stepper.min.js"></script>
<script src="/static/bower_components/sweetalert/lib/sweet-alert.min.js"></script> <script src="/static/bower_components/sweetalert/lib/sweet-alert.min.js"></script>
<script src="/static/js/jquery.ba-bbq.min.js"></script> <script src="/static/js/jquery.ba-bbq.min.js"></script>
<script src="/static/js/jquery.elevateZoom-3.0.8.min.js"></script> <script src="/static/js/jquery.elevateZoom-3.0.8.min.js"></script>
<script src="/static/js/select2.min.js"></script> <script src="/static/js/select2.min.js"></script>
<script src="/static/js/mp/dist/jquery.magnific-popup.min.js"></script> <script src="/static/js/mp/dist/jquery.magnific-popup.min.js"></script>
<script src="/static/js/formstone/js/core.js"></script> <script src="/static/js/formstone/js/core.js"></script>
<script src="/static/js/formstone/js/touch.js"></script> <script src="/static/js/formstone/js/touch.js"></script>
<script src="/static/js/formstone/js/dropdown.js"></script> <script src="/static/js/formstone/js/dropdown.js"></script>
<script src="/static/star-rating/jquery.rating.pack.js"></script> <script src="/static/star-rating/jquery.rating.pack.js"></script>
<script src="/static/js/_.js?v=10"></script> <script src="/static/js/_.js?v=10"></script>
{% endblock footer_scripts %} {% endblock footer_scripts %}
{% block jss %}{% endblock jss %} {% block jss %}{% endblock jss %}
{% if messages %} {% if messages %}
<script> <script>
{% for message in messages %} {% for message in messages %}
swal("", "{{ message }}", "{{ message.tags|default('success') }}"); swal("", "{{ message }}", "{{ message.tags|default('success') }}");
{% endfor %} {% endfor %}
</script> </script>
{% endif %} {% endif %}
<!-- BEGIN JIVOSITE CODE {literal} --> <!-- BEGIN JIVOSITE CODE {literal} -->
<script type='text/javascript'> <script type='text/javascript'>
(function(){ var widget_id = 'rfHEsPEnQy'; (function () {
var s = document.createElement('script'); s.type = 'text/javascript'; s.async = true; s.src = '//code.jivosite.com/script/widget/'+widget_id; var ss = document.getElementsByTagName('script')[0]; ss.parentNode.insertBefore(s, ss);})();</script> var widget_id = 'rfHEsPEnQy';
<!-- {/literal} END JIVOSITE CODE --> var s = document.createElement('script');
</body> s.type = 'text/javascript';
</html> s.async = true;
s.src = '//code.jivosite.com/script/widget/' + widget_id;
var ss = document.getElementsByTagName('script')[0];
ss.parentNode.insertBefore(s, ss);
})();</script>
<!-- {/literal} END JIVOSITE CODE -->
</body>
</html>

@ -1,82 +1,70 @@
{% macro render_field_checkbox(form, field, classes) -%} {% macro render_field_checkbox(form, field, classes) -%}
<div class="{{ classes.single_value }}"> <div class="{{ classes.single_value }}">
<div class="checkbox"> <div class="checkbox">
{% if field.auto_id %} {% if field.auto_id %}
<label {% if field.field.required and form.required_css_class %}class="{{ form.required_css_class }}"{% endif %}> <label {% if field.field.required and form.required_css_class %}class="{{ form.required_css_class }}"{% endif %}>
{{ field|safe }} <span>{{ field.label }}</span> {{ field|safe }} <span>{{ field.label }}</span>
</label> </label>
{% endif %} {% endif %}
{% for error in field.errors %} {% for error in field.errors %}
<span class="help-block {{ form.error_css_class }}">{{ error }}</span> <span class="help-block {{ form.error_css_class }}">{{ error }}</span>
{% endfor %} {% endfor %}
{% if field.help_text %}
{% if field.help_text %} <p class="help-block">
<p class="help-block"> {{ field.help_text|safe }}
{{ field.help_text|safe }} </p>
</p> {% endif %}
{% endif %} </div>
</div> </div>
</div>
{%- endmacro %} {%- endmacro %}
{% macro render_field_radio(form, field, classes) -%} {% macro render_field_radio(form, field, classes) -%}
{% if field.auto_id %} {% if field.auto_id %}
<label class="control-label {{ classes.label }} {% if field.field.required %}{{ form.required_css_class }}{% endif %}">{{ field.label }}</label> <label class="control-label {{ classes.label }}
{% endif %} {% if field.field.required %}{{ form.required_css_class }}{% endif %}">{{ field.label }}</label>
<div class="{{ classes.value }}"> {% endif %}
{% for choice in field %} <div class="{{ classes.value }}">
<div class="radio"> {% for choice in field %}
<label> <div class="radio">
{{ choice.tag()|safe }} <label>
{{ choice.choice_label }} {{ choice.tag()|safe }}
</label> {{ choice.choice_label }}
</div> </label>
{% endfor %} </div>
{% endfor %}
{% for error in field.errors %} {% for error in field.errors %}
<span class="help-block {{ form.error_css_class }}">{{ error }}</span> <span class="help-block {{ form.error_css_class }}">{{ error }}</span>
{% endfor %} {% endfor %}
{% if field.help_text %}
{% if field.help_text %} <p class="help-block">
<p class="help-block"> {{ field.help_text|safe }}
{{ field.help_text|safe }} </p>
</p> {% endif %}
{% endif %} </div>
</div>
{%- endmacro %} {%- endmacro %}
{% macro render_field_standard(form, field, classes) -%} {% macro render_field_standard(form, field, classes) -%}
{% if field.auto_id %} {% if field.auto_id %}
<label class="control-label {{ classes.label }} {% if field.field.required %}{{ form.required_css_class }}{% endif %}" for="{{ field.auto_id }}">{{ field.label }}</label> <label class="control-label {{ classes.label }}
{% endif %} {% if field.field.required %}{{ form.required_css_class }}{% endif %}"
for="{{ field.auto_id }}">{{ field.label }}</label>
<div class="{{ classes.value }} {% if field|is_multiple_checkbox %}multiple-checkbox{% endif %}"> {% endif %}
{{ field|safe }} <div class="{{ classes.value }} {% if field|is_multiple_checkbox %}multiple-checkbox{% endif %}">
{{ field|safe }}
{% for error in field.errors %} {% for error in field.errors %}
<span class="help-block {{ form.error_css_class }}">{{ error }}</span> <span class="help-block {{ form.error_css_class }}">{{ error }}</span>
{% endfor %} {% endfor %}
{% if field.help_text %}
{% if field.help_text %} <p class="help-block">
<p class="help-block"> {{ field.help_text|safe }}
{{ field.help_text|safe }} </p>
</p> {% endif %}
{% endif %} </div>
</div>
{%- endmacro %} {%- endmacro %}
<div class="form-group{% if field.errors %} has-error{% endif %}"> <div class="form-group{% if field.errors %} has-error{% endif %}">
{% if field|is_checkbox %} {% if field|is_checkbox %}
{{ render_field_checkbox(form, field, classes) }}
{{ render_field_checkbox(form, field, classes) }} {% elif field|is_radio %}
{{ render_field_radio(form, field, classes) }}
{% elif field|is_radio %} {% else %}
{{ render_field_standard(form, field, classes) }}
{{ render_field_radio(form, field, classes) }} {% endif %}
{% else %}
{{ render_field_standard(form, field, classes) }}
{% endif %}
</div> </div>

@ -2,15 +2,13 @@
<div class="alert alert-danger"> <div class="alert alert-danger">
<a class="close" data-dismiss="alert">&times;</a> <a class="close" data-dismiss="alert">&times;</a>
{% for non_field_error in form.non_field_errors() %} {% for non_field_error in form.non_field_errors() %}
{{ non_field_error }} {{ non_field_error }}
{% endfor %} {% endfor %}
</div> </div>
{% endif %} {% endif %}
{% for field in form.hidden_fields() %} {% for field in form.hidden_fields() %}
{{ field|safe }} {{ field|safe }}
{% endfor %} {% endfor %}
{% for field in form.visible_fields() %} {% for field in form.visible_fields() %}
{% include 'bootstrapform/field.jinja' %} {% include 'bootstrapform/field.jinja' %}
{% endfor %} {% endfor %}

@ -1,13 +1,10 @@
{{ formset.management_form }} {{ formset.management_form }}
{% for form in formset %} {% for form in formset %}
{% if classes.label == 'sr-only' %}
{% if classes.label == 'sr-only' %} <div class="form-inline">
<div class="form-inline"> {% endif %}
{% endif %} {% include 'bootstrapform/form.jinja' %}
{% include 'bootstrapform/form.jinja' %} {% if classes.label == 'sr-only' %}
{% if classes.label == 'sr-only' %}
</div> </div>
{% endif %} {% endif %}
{% endfor %} {% endfor %}

@ -3,25 +3,21 @@
Корзина товаров Корзина товаров
{% endblock %} {% endblock %}
{% block meta_description %} {% block meta_description %}
Корзина товаров Батискаф-Казахстан. Корзина товаров Батискаф-Казахстан.
{% endblock %} {% endblock %}
{% block meta_keywords %} {% block meta_keywords %}
Корзина товаров, Корзина, Товары, Покупки, Батискаф-Казахстан Корзина товаров, Корзина, Товары, Покупки, Батискаф-Казахстан
{% endblock %} {% endblock %}
{% block content %} {% block content %}
<div class=" breadcrumbs"> <div class=" breadcrumbs">
<ol class="breadcrumb breadcrumb-arrow"> <ol class="breadcrumb breadcrumb-arrow">
<li><a href="/">Главная</a></li> <li><a href="/">Главная</a></li>
<li class="active"><span>Корзина</span></li> <li class="active"><span>Корзина</span></li>
</ol> </ol>
</div> </div>
<div class="row"> <div class="row">
<h3>Корзина товаров</h3><br/> <h3>Корзина товаров</h3><br/>
{% if cart.items %} {% if cart.items %}
<div class="panel panel-default"> <div class="panel panel-default">
<form action="" method="post"><input type="hidden" name="csrfmiddlewaretoken" value="{{ csrf_token }}"> <form action="" method="post"><input type="hidden" name="csrfmiddlewaretoken" value="{{ csrf_token }}">
<table class="table table-hover table-cart "> <table class="table table-hover table-cart ">
@ -52,7 +48,6 @@
<td class="text-right info">{{ item.item.get_price() }} ₸</td> <td class="text-right info">{{ item.item.get_price() }} ₸</td>
<td class="text-right"><input type="number" value="{{ item.count }}" <td class="text-right"><input type="number" value="{{ item.count }}"
name="{{ item.id }}" class="form-control col-xs-1"/> name="{{ item.id }}" class="form-control col-xs-1"/>
</td> </td>
<td class="text-right success">{{ item.subtotal }} ₸</td> <td class="text-right success">{{ item.subtotal }} ₸</td>
<td class="text-center"> <td class="text-center">
@ -61,7 +56,6 @@
</td> </td>
</tr> </tr>
{% endfor %} {% endfor %}
</tbody> </tbody>
<tfoot> <tfoot>
<tr> <tr>
@ -71,7 +65,6 @@
<br/> <br/>
Итого к оплате: <span id="order-itogo-amount-up">{{ cart.total }}</span> ₸ Итого к оплате: <span id="order-itogo-amount-up">{{ cart.total }}</span> ₸
</p> </p>
<p> <p>
<a href="javascript:history.back()" class=""> <a href="javascript:history.back()" class="">
&larr; Продолжить покупки</a> &larr; Продолжить покупки</a>
@ -81,18 +74,15 @@
<button type="submit" class="btn btn-primary"><span <button type="submit" class="btn btn-primary"><span
class="glyphicon glyphicon-repeat"></span> Пересчитать class="glyphicon glyphicon-repeat"></span> Пересчитать
</button> </button>
</th> </th>
</tr> </tr>
</tfoot> </tfoot>
</table> </table>
</form> </form>
</div> </div>
<div class="order-data"> <div class="order-data">
<div class="row"> <div class="row">
<h3 class="">Расчет доставки</h3><br/> <h3 class="">Расчет доставки</h3><br/>
<div class="col-xs-6 col-xs-offset-3"> <div class="col-xs-6 col-xs-offset-3">
<div class="panel panel-default"> <div class="panel panel-default">
<div class="panel-body"> <div class="panel-body">
@ -100,7 +90,6 @@
value="{{ csrf_token }}"> value="{{ csrf_token }}">
{{ form|bootstrap }} {{ form|bootstrap }}
<br/> <br/>
<div class="order-itogo text-right"> <div class="order-itogo text-right">
Стоимость доставки: <span id="order-itogo-delivery">0</span> ₸ Стоимость доставки: <span id="order-itogo-delivery">0</span> ₸
<br/> <br/>
@ -108,19 +97,19 @@
</div> </div>
<br/> <br/>
<div class="radio"> <div class="radio">
<label> <label>
<input type="radio" name="payment_type" id="optionsRadios1" value="card" checked> <input type="radio" name="payment_type" id="optionsRadios1" value="card"
Оплата пластиковой картой <br><img src="/static/img/cards.png" alt=""> checked>
</label> Оплата пластиковой картой <br><img src="/static/img/cards.png" alt="">
</div> </label>
<div class="radio"> </div>
<label> <div class="radio">
<input type="radio" name="payment_type" id="optionsRadios2" value="bank"> <label>
Прямой банковский платеж <br><img src="/static/img/bank.png" alt=""> <input type="radio" name="payment_type" id="optionsRadios2" value="bank">
</label> Прямой банковский платеж <br><img src="/static/img/bank.png" alt="">
</div> </label>
</div>
<br> <br>
<div class="form-group text-center"> <div class="form-group text-center">
<button type="submit" name="order_next" class="btn btn-success">Продолжить <button type="submit" name="order_next" class="btn btn-success">Продолжить
</button> </button>
@ -128,9 +117,7 @@
</form> </form>
</div> </div>
</div> </div>
</div> </div>
{# <div class="col-xs-6">#} {# <div class="col-xs-6">#}
{# <div class="panel panel-default">#} {# <div class="panel panel-default">#}
{# <div class="panel-heading">#} {# <div class="panel-heading">#}
@ -155,17 +142,13 @@
{# </div>#} {# </div>#}
{# </div>#} {# </div>#}
</div> </div>
{% else %} {% else %}
<div class="alert alert-warning alert-dismissable"> <div class="alert alert-warning alert-dismissable">
<h4>Ваша корзина пуста</h4> <h4>Ваша корзина пуста</h4>
<p>Вы еще ничего не добавляли в корзину. Выберите товары и добавьте их в корзину для дальнейшего <p>Вы еще ничего не добавляли в корзину. Выберите товары и добавьте их в корзину для дальнейшего
оформления покупки.</p> оформления покупки.</p>
<p><a class="btn btn-warning" href="/">Перейти на главную страницу</a></p> <p><a class="btn btn-warning" href="/">Перейти на главную страницу</a></p>
</div> </div>
{% endif %} {% endif %}
</div> </div>
{% endblock %} {% endblock %}

@ -1,23 +1,22 @@
{% extends 'base.jinja' %} {% extends 'base.jinja' %}
{% block meta_description %} {% block meta_description %}
{% if category.meta_desc %} {% if category.meta_desc %}
{{category.meta_desc}} {{ category.meta_desc }}
{% else %} {% else %}
{% if category %}{{ category.title }}{% elif 'sale' in request.path %}Скидки{% else %}Поиск по запросу {% if category %}{{ category.title }}{% elif 'sale' in request.path %}Скидки{% else %}Поиск по запросу
{{ request.GET['q'] }}{% endif %} в интернет-магазине снаряжения для дайвинга и подводной охоты {{ request.GET['q'] }}{% endif %} в интернет-магазине снаряжения для дайвинга и подводной охоты
Батискаф-Казахстан. Батискаф-Казахстан.
{% endif %} {% endif %}
{% endblock %} {% endblock %}
{% block meta_keywords %} {% block meta_keywords %}
{% if category.meta_keyw %} {% if category.meta_keyw %}
{{category.meta_keyw}} {{ category.meta_keyw }}
{% else %} {% else %}
{% if products %}{% for product in products %}{{ product.title }}, {% endfor %}{% endif %}{% if category %} {% if products %}{% for product in products %}{{ product.title }}, {% endfor %}{% endif %}{% if category %}
{{ category.title }}, {% for parent in category.get_parents() %}, {{ category.title }}, {% for parent in category.get_parents() %},
{{ parent.title }}{% endfor %}{% elif 'sale' in request.path %}Скидки{% else %}Поиск, {{ parent.title }}{% endfor %}{% elif 'sale' in request.path %}Скидки{% else %}Поиск,
{{ request.GET['q'] }}{% endif %}, Товар, Цена, Купить, Фото, Интернет-Магазин, Батискаф-Казахстан {{ request.GET['q'] }}{% endif %}, Товар, Цена, Купить, Фото, Интернет-Магазин, Батискаф-Казахстан
{% endif %} {% endif %}
{% endblock %} {% endblock %}
{% block title %} {% block title %}
{% if category %} {% if category %}
@ -44,42 +43,35 @@
{% elif 'leaders' in request.path %} {% elif 'leaders' in request.path %}
<li class="active"><span>Лидеры продаж</span></li> <li class="active"><span>Лидеры продаж</span></li>
{% endif %} {% endif %}
</ol> </ol>
</div> </div>
{% if category%} {% if category %}
<div class="row"> <div class="row">
<div class="col-xs-12 col-sm-12 col-md-12 col-lg-12"> <div class="col-xs-12 col-sm-12 col-md-12 col-lg-12">
<h1 class="text-left" style="margin: 0 0 20px; font-size: 19px;">{% if category.h1 %}{{category.h1}}{%else%}{{category.title}}{%endif%}</h1> <h1 class="text-left" style="margin: 0 0 20px; font-size: 19px;">
{% if category.h1 %}{{ category.h1 }}{% else %}{{ category.title }}{% endif %}</h1>
</div> </div>
</div> </div>
{%endif%} {% endif %}
<div class="row"> <div class="row">
<div class="col-xs-3 col-sm-3 col-md-3 col-lg-3"> <div class="col-xs-3 col-sm-3 col-md-3 col-lg-3">
<div class="panel panel-default panel-filter"> <div class="panel panel-default panel-filter">
<div class="panel-heading"> <div class="panel-heading">
<h3 class="panel-title">Фильтрация товаров</h3> <h3 class="panel-title">Фильтрация товаров</h3>
</div> </div>
<div class="panel-body"> <div class="panel-body">
{% include 'includes/category_filter.jinja' with context %} {% include 'includes/category_filter.jinja' with context %}
</div> </div>
</div> </div>
</div> </div>
<div class="col-xs-9 col-sm-9 col-md-9 col-lg-9 index-goods category-items"> <div class="col-xs-9 col-sm-9 col-md-9 col-lg-9 index-goods category-items">
{% if category.hide_products %} {% if category.hide_products %}
{% for child in category.childs.order_by('priority') %} {% for child in category.childs.order_by('priority') %}
{% include 'includes/category_category_thumb.jinja' with context %} {% include 'includes/category_category_thumb.jinja' with context %}
{# <li>#}
{# <li>#} {# <a href="{{ child.get_absolute_url() }}">{{ child.title }}</a>#}
{# <a href="{{ child.get_absolute_url() }}">{{ child.title }}</a>#} {# </li>#}
{# </li>#}
{% endfor %} {% endfor %}
{% elif products %} {% elif products %}
<div class="category-paginator"> <div class="category-paginator">
<div class="category-paginator-top"> <div class="category-paginator-top">
@ -94,9 +86,7 @@
{% else %} {% else %}
<a href="?page={{ page }}">{{ page }}</a> <a href="?page={{ page }}">{{ page }}</a>
{% endif %} {% endif %}
{% endfor %} {% endfor %}
{% if products.has_next() %} {% if products.has_next() %}
<a href="?page={{ products.next_page_number() }}">&rarr;</a> <a href="?page={{ products.next_page_number() }}">&rarr;</a>
{% endif %}</div> {% endif %}</div>
@ -126,25 +116,21 @@
</div> </div>
</div> </div>
</div> </div>
{% else %} {% else %}
<div class="alert alert-warning alert-dismissable"> <div class="alert alert-warning alert-dismissable">
<h4>Список товаров пуст</h4> <h4>Список товаров пуст</h4>
<p>Товары в данной категории или с выбранными параметрами отсутствуют. Выберите другую
<p>Товары в данной категории или с выбранными параметрами отсутствуют. Выберите другую категорию, либо сбросьте фильтр параметров.</p>
категорию, либо сбросьте фильтр параметров.</p> <p><a class="btn btn-warning" href="/">Перейти на главную страницу</a>
{% if category %}
<p><a class="btn btn-warning" href="/">Перейти на главную страницу</a> <a class="btn btn-link"
{% if category %} href="{{ category.get_absolute_url() }}">или
<a class="btn btn-link" отменить фильтрацию</a>
href="{{ category.get_absolute_url() }}">или {% endif %} </p>
отменить фильтрацию</a> </div>
{% endif %} </p>
</div>
{% endif %} {% endif %}
<div class="row"> <div class="row">
{% if products %} {% if products %}
{% for product in products %} {% for product in products %}
{% if product.in_stock() %} {% if product.in_stock() %}
{% include 'includes/category_product_thumb.jinja' with context %} {% include 'includes/category_product_thumb.jinja' with context %}
@ -155,15 +141,9 @@
{% include 'includes/category_product_thumb.jinja' with context %} {% include 'includes/category_product_thumb.jinja' with context %}
{% endif %} {% endif %}
{% endfor %} {% endfor %}
{% endif %} {% endif %}
</div> </div>
{% if products %} {% if products %}
<div class="category-paginator"> <div class="category-paginator">
<div class="category-paginator-top"> <div class="category-paginator-top">
<div class="row"> <div class="row">
@ -177,9 +157,7 @@
{% else %} {% else %}
<a href="?page={{ page }}">{{ page }}</a> <a href="?page={{ page }}">{{ page }}</a>
{% endif %} {% endif %}
{% endfor %} {% endfor %}
{% if products.has_next() %} {% if products.has_next() %}
<a href="?page={{ products.next_page_number() }}">&rarr;</a> <a href="?page={{ products.next_page_number() }}">&rarr;</a>
{% endif %}</div> {% endif %}</div>
@ -210,10 +188,9 @@
</div> </div>
</div> </div>
{% endif %} {% endif %}
{%if category.meta_text%}<div class="panel" style="padding: 15px 20px; text-align: justify;">{{category.meta_text|safe}}</div>{%endif%} {% if category.meta_text %}
<div class="panel"
style="padding: 15px 20px; text-align: justify;">{{ category.meta_text|safe }}</div>{% endif %}
</div> </div>
</div> </div>
{% endblock %} {% endblock %}

@ -1,54 +1,45 @@
{% extends 'base.jinja' %} {% extends 'base.jinja' %}
{% block meta_description %} {% block meta_description %}
Контактные данные магазина снаряжения для дайвинга и подводной охоты Батискаф-Казахстан. Контактные данные магазина снаряжения для дайвинга и подводной охоты Батискаф-Казахстан.
{% endblock %} {% endblock %}
{% block meta_keywords %} {% block meta_keywords %}
Контакты, Схема проезда, Магазин, Батискаф-Казахстан Контакты, Схема проезда, Магазин, Батискаф-Казахстан
{% endblock %} {% endblock %}
{% block title %} {% block title %}
Контакты Контакты
{% endblock %} {% endblock %}
{% block content %} {% block content %}
<h3>Контакты</h3>
<h3>Контакты</h3> <br/>
<br/> <div class="well well-large">
<div class="well well-large"> <h4 class="text-left">
<h4 class="text-left"> С вами работают:
С вами работают: </h4>
</h4> <div class="row">
<div class="col-xs-3">
<div class="row"> <img src="/static/img/contacts1.jpg" alt="" width="200" style=""/>
<div class="col-xs-3"> </div>
<img src="/static/img/contacts1.jpg" alt="" width="200" style=""/> <div class="col-xs-9">
<p>
Региональный менеджер Горбунов Евгений <br/>
Телефоны: +7 (777) 163-14-34, +7 (775) 859-12-17 <br/>
E-mail: sales@batiskaf-kz.kz
</p>
</div>
</div> </div>
<div class="col-xs-9"> <br/><br/>
<p> <p>
Региональный менеджер Горбунов Евгений <br/>
Телефоны: +7 (777) 163-14-34, +7 (775) 859-12-17 <br/>
E-mail: sales@batiskaf-kz.kz
</p>
</div>
</div>
<br/><br/>
<p>
<h5 class="text-left">Режим работы магазина Батискаф Казахстан: </h5> <h5 class="text-left">Режим работы магазина Батискаф Казахстан: </h5>
Понедельник – Суббота: 10:00 – 19:00. Понедельник – Суббота: 10:00 – 19:00.
<h5 class="text-left">После 19:00 и в Воскресение:</h5> <h5 class="text-left">После 19:00 и в Воскресение:</h5>
Воспользуйтесь формой обратной связи: <a href="mailto:admin@batiskaf-kz.kz"><span Воспользуйтесь формой обратной связи: <a href="mailto:admin@batiskaf-kz.kz"><span
class="glyphicon glyphicon-envelope" aria-hidden="true"></span> Написать нам</a> <br/> class="glyphicon glyphicon-envelope" aria-hidden="true"></span> Написать нам</a> <br/>
Или закажите звонок: <a href="#call-form" id="order-call-link2" class="button"><span Или закажите звонок: <a href="#call-form" id="order-call-link2" class="button"><span
class="glyphicon glyphicon-phone-alt" aria-hidden="true"></span> Заказать class="glyphicon glyphicon-phone-alt" aria-hidden="true"></span> Заказать
звонок</a> звонок</a>
</p><br/>
</p><br/> <h4>Схема проезда</h4><br/>
<h4>Схема проезда</h4><br/> <script type="text/javascript" charset="utf-8"
<script type="text/javascript" charset="utf-8" src="https://api-maps.yandex.ru/services/constructor/1.0/js/?sid=tU66ZrqhbOCUVwExWQBv70GItG_4O7WX&width=100%&height=500"></script> src="https://api-maps.yandex.ru/services/constructor/1.0/js/?sid=tU66ZrqhbOCUVwExWQBv70GItG_4O7WX&width=100%&height=500"></script>
</div> </div>
{% endblock %} {% endblock %}

@ -1,20 +1,18 @@
{% extends 'base.jinja' %} {% extends 'base.jinja' %}
{% block meta_description %} {% block meta_description %}
Способы доставки из магазина снаряжения для дайвинга и подводной охоты Батискаф-Казахстан. Способы доставки из магазина снаряжения для дайвинга и подводной охоты Батискаф-Казахстан.
{% endblock %} {% endblock %}
{% block meta_keywords %} {% block meta_keywords %}
Доставка, Отправления, Посылка, Батискаф-Казахстан Доставка, Отправления, Посылка, Батискаф-Казахстан
{% endblock %} {% endblock %}
{% block title %} {% block title %}
Способы доставки Способы доставки
{% endblock %} {% endblock %}
{% block content %} {% block content %}
<h3>Способы Доставки</h3> <h3>Способы Доставки</h3>
<br/> <br/>
<div class="well well-large"> <div class="well well-large">
<ol> <ol>
<li><strong>Экспресс-отправления</strong> - 1-7 дней.</li> <li><strong>Экспресс-отправления</strong> - 1-7 дней.</li>
<li><strong>Доставка отправлений не срочного характера</strong> - 6-17 дней.</li> <li><strong>Доставка отправлений не срочного характера</strong> - 6-17 дней.</li>
<li><strong>Доставка по городу</strong>.</li> <li><strong>Доставка по городу</strong>.</li>
@ -27,7 +25,4 @@
<a href="http://www.alemtat.kz">Алем-Тат</a>. <a href="http://www.alemtat.kz">Алем-Тат</a>.
</p> </p>
</div> </div>
{% endblock %} {% endblock %}

@ -1,23 +1,16 @@
{% extends 'base.jinja' %} {% extends 'base.jinja' %}
{% block meta_description %} {% block meta_description %}
Часто задаваемые вопросы о снаряжении для дайвинга и подводной охоты, а также о магазине Батискаф-Казахстан. Часто задаваемые вопросы о снаряжении для дайвинга и подводной охоты, а также о магазине Батискаф-Казахстан.
{% endblock %} {% endblock %}
{% block meta_keywords %} {% block meta_keywords %}
Часто задаваемые вопросы, FAQ, снаряжение для подводной охоты и дайвинга, Батискаф-Казахстан Часто задаваемые вопросы, FAQ, снаряжение для подводной охоты и дайвинга, Батискаф-Казахстан
{% endblock %} {% endblock %}
{% block title %} {% block title %}
FAQ FAQ
{% endblock %} {% endblock %}
{% block content %} {% block content %}
<h3>Часто задаваемые вопросы</h3>
<h3>Часто задаваемые вопросы</h3>
<br/> <br/>
<div class="well well-large"> <div class="well well-large">
</div> </div>
{% endblock %} {% endblock %}

@ -1,52 +1,43 @@
{% extends 'base.jinja' %} {% extends 'base.jinja' %}
{% block title %} {% block title %}
Отзывы о магазине Батискаф-Казахстан Отзывы о магазине Батискаф-Казахстан
{% endblock %} {% endblock %}
{% block meta_description %} {% block meta_description %}
Отзывы о магазине Батискаф-Казахстан Отзывы о магазине Батискаф-Казахстан
{% endblock %} {% endblock %}
{% block meta_keywords %} {% block meta_keywords %}
Отзывы, Читать, Оставить отзыв, Магазин, Интернет-Магазин, Батискаф-Казахстан Отзывы, Читать, Оставить отзыв, Магазин, Интернет-Магазин, Батискаф-Казахстан
{% endblock %} {% endblock %}
{% block content %} {% block content %}
<div class=" breadcrumbs"> <div class=" breadcrumbs">
<ol class="breadcrumb breadcrumb-arrow"> <ol class="breadcrumb breadcrumb-arrow">
<li><a href="/">Главная</a></li> <li><a href="/">Главная</a></li>
<li class="active"><span>Отзывы о магазине Батискаф-Казахстан</span></li> <li class="active"><span>Отзывы о магазине Батискаф-Казахстан</span></li>
</ol> </ol>
</div><h2 class=""> </div><h2 class="">
Отзывы о магазине Батискаф-Казахстан Отзывы о магазине Батискаф-Казахстан
</h2><br/> </h2><br/>
<div class="well well-lg news-container"> <div class="well well-lg news-container">
<ul class="media-list">
{% if object_list %}
<ul class="media-list">
{% if object_list %}
{% for comment in object_list %} {% for comment in object_list %}
<li class="media"> <li class="media">
<a name="comment{{ comment.pk }}"></a> <a name="comment{{ comment.pk }}"></a>
<div class="media-body"> <div class="media-body">
<h4 class="media-heading text-left"> <h4 class="media-heading text-left">
{% for i in range(1,6) %} {% for i in range(1,6) %}
<input name="star{{ comment.pk }}" type="radio" class="star" disabled="disabled" {% if i == comment.stars %}checked="checked"{% endif %}/> <input name="star{{ comment.pk }}" type="radio" class="star" disabled="disabled"
{% endfor %} {% if i == comment.stars %}checked="checked"{% endif %}/>
{% endfor %}
{{ comment.name }} пишет:
{{ comment.name }} пишет: <small><a <small><a
href="{{ request.get_full_path() }}#comment{{ comment.pk }}">#</a></small></h4> href="{{ request.get_full_path() }}#comment{{ comment.pk }}">#</a></small>
<p>{{ comment.created.strftime('%d.%m.%Y %H:%M') }}</p> </h4>
<p>{{ comment.text|striptags }}</p> <p>{{ comment.created.strftime('%d.%m.%Y %H:%M') }}</p>
<!-- Nested media object --> <p>{{ comment.text|striptags }}</p>
<!-- Nested media object -->
</div> </div>
</li> </li>
{% endfor %} {% endfor %}
</ul> </ul>
{% else %} {% else %}
@ -54,28 +45,22 @@
<strong>Пока нет ни одного отзыва!</strong> Вы можете <a href="#comment">стать первым</a>! <strong>Пока нет ни одного отзыва!</strong> Вы можете <a href="#comment">стать первым</a>!
</div> </div>
{% endif %} {% endif %}
</div>
</div> <div class="comment">
<div class="comment"> <a name="comment"></a>
<a name="comment"></a> <h4 class="text-center">
<h4 class="text-center"> Оставить отзыв:</h4>
Оставить отзыв:</h4> <div class="comment-form col-xs-6 col-xs-offset-3">
<form action="" class="form" method="post"><input type="hidden" name="csrfmiddlewaretoken"
<div class="comment-form col-xs-6 col-xs-offset-3"> value="{{ csrf_token }}">
<form action="" class="form" method="post"><input type="hidden" name="csrfmiddlewaretoken" {{ form|bootstrap }}
value="{{ csrf_token }}"> <div class="form-group text-left">
{{ form|bootstrap }} <button type="submit" name="comment-send" class="btn btn-primary"><span
<div class="form-group text-left"> class="glyphicon glyphicon-comment" aria-hidden="true"></span> Отправить
<button type="submit" name="comment-send" class="btn btn-primary"><span </button>
class="glyphicon glyphicon-comment" aria-hidden="true"></span> Отправить </div>
</button> </form>
</div>
</form>
</div>
</div> </div>
</div> </div>
</div>
{% endblock %} {% endblock %}

@ -2,22 +2,15 @@
<div class="thumbnail"> <div class="thumbnail">
{% set im = child.image|thumbnail("420x420") %} {% set im = child.image|thumbnail("420x420") %}
<a href="{{ child.get_absolute_url() }}"> <a href="{{ child.get_absolute_url() }}">
<img src="/static/{{ im.url }}" <img src="/static/{{ im.url }}"
class="img-responsive" alt="Купить {{ child.title }}" class="img-responsive" alt="Купить {{ child.title }}"
title="Купить {{ child.title }}" width="210" height="210"></a> title="Купить {{ child.title }}" width="210" height="210"></a>
<div class="caption"><br> <div class="caption"><br>
<div class="title text-center"> <div class="title text-center">
<a href="{{ child.get_absolute_url() }}"> <a href="{{ child.get_absolute_url() }}">
{{ child.title }} {{ child.title }}
</a> </a>
</div> </div>
</div> </div>
</div> </div>
</div> </div>

@ -1,6 +1,4 @@
{% if category %} {% if category %}
{% if not category.hide_products and category.childs.all() %} {% if not category.hide_products and category.childs.all() %}
<div class="category-filter-title">&rarr;&nbsp;&nbsp;&nbsp;Категории</div> <div class="category-filter-title">&rarr;&nbsp;&nbsp;&nbsp;Категории</div>
<ul class="attr-filter"> <ul class="attr-filter">
@ -12,7 +10,6 @@
</ul> </ul>
<hr class="dashed"/> <hr class="dashed"/>
{% endif %} {% endif %}
<div class="category-filter-title">&rarr;&nbsp;&nbsp;&nbsp;Производитель</div> <div class="category-filter-title">&rarr;&nbsp;&nbsp;&nbsp;Производитель</div>
<ul class="attr-filter"> <ul class="attr-filter">
{% for choise in category.brands().order_by('title') %} {% for choise in category.brands().order_by('title') %}
@ -21,19 +18,16 @@
{% if choise.pk.__str__() in request.GET.getlist('brand[]') %} {% if choise.pk.__str__() in request.GET.getlist('brand[]') %}
checked="checked" checked="checked"
{% endif %} {% endif %}
/> {% if choise.image %} /> {% if choise.image %}
<img src="/static/{{ choise.image }}" alt="{{ choise.title }}" height="25" style="cursor: pointer"> <img src="/static/{{ choise.image }}" alt="{{ choise.title }}" height="25" style="cursor: pointer">
{% else %} {% else %}
{{ choise.title }} {{ choise.title }}
{% endif %} </label> {% endif %} </label>
</li> </li>
{% endfor %} {% endfor %}
</ul> </ul>
{% for attr in category.attr_cat.all() %} {% for attr in category.attr_cat.all() %}
<hr class="dashed"/> <hr class="dashed"/>
<div class="category-filter-title">&rarr;&nbsp;&nbsp;&nbsp;{{ attr.attribute.title }}</div> <div class="category-filter-title">&rarr;&nbsp;&nbsp;&nbsp;{{ attr.attribute.title }}</div>
{% if attr.field_type == 'select' %} {% if attr.field_type == 'select' %}
<ul class="attr-filter"> <ul class="attr-filter">
@ -47,7 +41,6 @@
</li> </li>
{% endfor %} {% endfor %}
</ul> </ul>
{% else %} {% else %}
<ul class="attr-filter"> <ul class="attr-filter">
{% for value in attr.get_posible_values() %} {% for value in attr.get_posible_values() %}
@ -58,9 +51,7 @@
{#TODO: Сделать разбор по фильтрам для стринга #} {#TODO: Сделать разбор по фильтрам для стринга #}
{% endfor %} {% endfor %}
</ul> </ul>
{% endif %} {% endif %}
{% endfor %} {% endfor %}
{% else %} {% else %}
<div class="category-filter-title">&rarr;&nbsp;&nbsp;&nbsp;Производитель</div> <div class="category-filter-title">&rarr;&nbsp;&nbsp;&nbsp;Производитель</div>
@ -71,11 +62,11 @@
{% if choise.pk.__str__() in request.GET.getlist('brand[]') %} {% if choise.pk.__str__() in request.GET.getlist('brand[]') %}
checked="checked" checked="checked"
{% endif %} {% endif %}
/> {% if choise.image %} /> {% if choise.image %}
<img src="/static/{{ choise.image }}" alt="{{ choise.title }}" height="25" style="cursor: pointer"> <img src="/static/{{ choise.image }}" alt="{{ choise.title }}" height="25" style="cursor: pointer">
{% else %} {% else %}
{{ choise.title }} {{ choise.title }}
{% endif %}</label> {% endif %}</label>
</li> </li>
{% endfor %} {% endfor %}
</ul> </ul>

@ -7,11 +7,9 @@
{% endif %} {% endif %}
{% set im = product.main_image()|thumbnail("420x420") %} {% set im = product.main_image()|thumbnail("420x420") %}
<a href="{{ product.get_absolute_url() }}"> <a href="{{ product.get_absolute_url() }}">
<img src="/static/{{ im.url }}" <img src="/static/{{ im.url }}"
class="img-responsive" alt="Купить {{ product.title }}" class="img-responsive" alt="Купить {{ product.title }}"
title="Купить {{ product.title }}" width="210" height="210"></a> title="Купить {{ product.title }}" width="210" height="210"></a>
<div class="caption"> <div class="caption">
<div class="title"> <div class="title">
<a href="{{ product.get_absolute_url() }}"> <a href="{{ product.get_absolute_url() }}">
@ -24,11 +22,8 @@
₸</s></small> ₸</s></small>
{% endif %} {% endif %}
{{ product.min_price() }} ₸ {{ product.min_price() }} ₸
</div> </div>
{% if product.in_stock() %} {% if product.in_stock() %}
<div class="state-yes"> <div class="state-yes">
<span class="glyphicon glyphicon-ok-sign" aria-hidden="true"></span> Товар <span class="glyphicon glyphicon-ok-sign" aria-hidden="true"></span> Товар
есть в наличии есть в наличии
@ -52,7 +47,5 @@
{% endif %} {% endif %}
</div> </div>
</div> </div>
</div> </div>
</div> </div>

@ -1,103 +1,96 @@
{% extends 'base.jinja' %} {% extends 'base.jinja' %}
{% block content %} {% block content %}
{% if banners %}
{% if banners %} <div id="carousel-example-generic" class="carousel slide" data-ride="carousel">
<!-- Indicators -->
<div id="carousel-example-generic" class="carousel slide" data-ride="carousel"> <ol class="carousel-indicators">
<!-- Indicators --> {% for c in range(banners.count()) %}
<ol class="carousel-indicators"> <li data-target="#carousel-example-generic" data-slide-to="{{ c }}"
class="{% if loop.first %}active{% endif %}"></li>
{% for c in range(banners.count()) %} {% endfor %}
<li data-target="#carousel-example-generic" data-slide-to="{{ c }}" class="{% if loop.first %}active{% endif %}"></li> </ol>
{% endfor %} <!-- Wrapper for slides -->
<div class="carousel-inner" role="listbox">
</ol> {% for b in banners %}
<!-- Wrapper for slides --> <div class="item {% if loop.first %}active{% endif %}">
<div class="carousel-inner" role="listbox"> <a href="{{ b.link }}">
{% for b in banners %} <img src="/static/{{ b.image }}" alt="{{ b.title }}" title="{{ b.title }}">
<div class="item {% if loop.first %}active{% endif %}"> </a>
<a href="{{ b.link }}"> </div>
<img src="/static/{{ b.image }}" alt="{{ b.title }}" title="{{ b.title }}"> {% endfor %}
</div>
<!-- Controls -->
<a class="left carousel-control" href="#carousel-example-generic" role="button" data-slide="prev">
<span class="glyphicon glyphicon-chevron-left" aria-hidden="true"></span>
<span class="sr-only">Назад</span>
</a>
<a class="right carousel-control" href="#carousel-example-generic" role="button" data-slide="next">
<span class="glyphicon glyphicon-chevron-right" aria-hidden="true"></span>
<span class="sr-only">Вперед</span>
</a> </a>
</div> </div>
{% endif %}
<div class="index-goods">
{% endfor %} <div class="row">
</div> {% for product in products %}
<div class="col-md-3 col-xs-3 col-sm-3 col-lg-3">
<!-- Controls --> <div class="thumbnail">
<a class="left carousel-control" href="#carousel-example-generic" role="button" data-slide="prev"> {% set im = product.main_image()|thumbnail("420x420") %}
<span class="glyphicon glyphicon-chevron-left" aria-hidden="true"></span> <a href="{{ product.get_absolute_url() }}"><img src="/static/{{ im.url }}"
<span class="sr-only">Назад</span> class="img-responsive"
</a> alt="Купить {{ product.title }}"
<a class="right carousel-control" href="#carousel-example-generic" role="button" data-slide="next"> title="Купить {{ product.title }}"></a>
<span class="glyphicon glyphicon-chevron-right" aria-hidden="true"></span> <div class="caption">
<span class="sr-only">Вперед</span> <div class="title">
</a> <a href="{{ product.get_absolute_url() }}">
</div> {{ product.title }}
{% endif %} </a>
</div>
<div class="index-goods"> <div class="price">
<div class="row"> {{ product.min_price() }} ₸
{% for product in products %} </div>
<div class="col-md-3 col-xs-3 col-sm-3 col-lg-3">
<div class="thumbnail">
{% set im = product.main_image()|thumbnail("420x420") %}
<a href="{{ product.get_absolute_url() }}"><img src="/static/{{ im.url }}"
class="img-responsive"
alt="Купить {{ product.title }}"
title="Купить {{ product.title }}"></a>
<div class="caption">
<div class="title">
<a href="{{ product.get_absolute_url() }}">
{{ product.title }}
</a>
</div>
<div class="price">
{{ product.min_price() }} ₸
</div>
{% if product.in_stock() %}
<div class="state-yes">
<span class="glyphicon glyphicon-ok-sign" aria-hidden="true"></span> Товар
есть в наличии
</div>
{% else %}
<div class="state-no">
<span class="glyphicon glyphicon-ok-sign" aria-hidden="true"></span> Товара
нет в наличии
</div>
{% endif %}
<div class="in-cart">
{% if product.in_stock() %} {% if product.in_stock() %}
<a class="btn btn-warning btn-block" <div class="state-yes">
href="/store/cart/add/?pk={{ product.variations.filter(in_stock__gt=0).order_by('price').first().pk }}&count=1&next={{ request.get_full_path()|urlencode }}"><span><span <span class="glyphicon glyphicon-ok-sign" aria-hidden="true"></span> Товар
class="glyphicon glyphicon-shopping-cart" aria-hidden="true"></span> Добавить в корзину</span></a> есть в наличии
</div>
{% else %} {% else %}
<a class=" btn btn-danger btn-block order-order-link" href="#order-form" <div class="state-no">
data-itemid="{{ product.pk }}"><span><span <span class="glyphicon glyphicon-ok-sign" aria-hidden="true"></span> Товара
class="glyphicon glyphicon-import" нет в наличии
aria-hidden="true"></span> Заказать</span></a> </div>
{% endif %} {% endif %}
<div class="in-cart">
{% if product.in_stock() %}
<a class="btn btn-warning btn-block"
href="/store/cart/add/?pk={{ product.variations.filter(in_stock__gt=0).order_by('price').first().pk }}&count=1&next={{ request.get_full_path()|urlencode }}"><span><span
class="glyphicon glyphicon-shopping-cart" aria-hidden="true"></span> Добавить в корзину</span></a>
{% else %}
<a class=" btn btn-danger btn-block order-order-link" href="#order-form"
data-itemid="{{ product.pk }}"><span><span
class="glyphicon glyphicon-import"
aria-hidden="true"></span> Заказать</span></a>
{% endif %}
</div>
</div> </div>
</div> </div>
</div> </div>
</div>
{% endfor %} {% endfor %}
</div> </div>
</div> </div>
<div class="panel" style="padding: 15px 20px; text-align: justify;"> <div class="panel" style="padding: 15px 20px; text-align: justify;">
<h1 style="font-size: 19px; margin-top: 10px;" class="text-left">Интернет-магазин снаряжения для подводной охоты и дайвинга</h1> <h1 style="font-size: 19px; margin-top: 10px;" class="text-left">Интернет-магазин снаряжения для подводной
Решили заняться подводной охотой или дайвингом? Наш магазин готов помочь вам обзавестись необходимым снаряжением, которое обеспечит комфорт и безопасность вашего нового экстремального увлечения. Не имеет значения новичок вы или профессионал – разнообразие ассортимента и ценовая политика интернет-магазина Батискаф-Казахстан порадуют любого клиента.<p>Правильно подобранное снаряжение для подводной охоты – залог приятного и безрискового времяпрепровождения под водой. Только использование качественных материалов при изготовлении экипировки способно обеспечить удобство и уверенность в прочности костюма. Мы следим за качеством наших товаров, а вам остается только подобрать для себя необходимые аксессуары и экипировку.<p>Наш магазин подводной охоты имеет в своем арсенале все необходимые сертифицированные атрибуты для подводной охоты, выполненные из качественных материалов, использование которых не только доставит удовольствие, но и сведет риски нахождения в воде к минимуму. У нас вы можете приобрести все и сразу по адекватным ценам. А если вы еще не определились с выбором, мы будем рады вам помочь. охоты и дайвинга</h1>
Решили заняться подводной охотой или дайвингом? Наш магазин готов помочь вам обзавестись необходимым
снаряжением, которое обеспечит комфорт и безопасность вашего нового экстремального увлечения. Не имеет значения
новичок вы или профессионал – разнообразие ассортимента и ценовая политика интернет-магазина Батискаф-Казахстан
порадуют любого клиента.<p>Правильно подобранное снаряжение для подводной охоты – залог приятного и безрискового
времяпрепровождения под водой. Только использование качественных материалов при изготовлении экипировки способно
обеспечить удобство и уверенность в прочности костюма. Мы следим за качеством наших товаров, а вам остается
только подобрать для себя необходимые аксессуары и экипировку.
<p>Наш магазин подводной охоты имеет в своем арсенале все необходимые сертифицированные атрибуты для подводной
охоты, выполненные из качественных материалов, использование которых не только доставит удовольствие, но и
сведет риски нахождения в воде к минимуму. У нас вы можете приобрести все и сразу по адекватным ценам. А
если вы еще не определились с выбором, мы будем рады вам помочь.
</div> </div>
{% endblock %}
{% endblock %}

@ -3,12 +3,8 @@
Перенаправление на платежный шлюз Перенаправление на платежный шлюз
{% endblock %} {% endblock %}
{% block content %} {% block content %}
<div class="well"><br> <div class="well"><br>
<h5>Нажмите, чтобы перейти на сайт платежного шлюза и продолжить оплату...</h5> <h5>Нажмите, чтобы перейти на сайт платежного шлюза и продолжить оплату...</h5>
<form class="text-center" name="SendOrder" method="post" action="https://epay.kkb.kz/jsp/process/logon.jsp"> <form class="text-center" name="SendOrder" method="post" action="https://epay.kkb.kz/jsp/process/logon.jsp">
<input type="hidden" name="Signed_Order_B64" value="{{ context }}"> <input type="hidden" name="Signed_Order_B64" value="{{ context }}">
<input type="hidden" name="email" value="{{ order.email }}"> <input type="hidden" name="email" value="{{ order.email }}">
@ -20,7 +16,6 @@
<button type="submit" class="btn btn-success btn-lg">Продолжить оплату &rarr;</button> <button type="submit" class="btn btn-success btn-lg">Продолжить оплату &rarr;</button>
</form> </form>
<br><br> <br><br>
</div> </div>
{# <div class="well">#} {# <div class="well">#}
{# <table style="border:1px black solid; width: 100%">#} {# <table style="border:1px black solid; width: 100%">#}
@ -67,9 +62,4 @@
{# <p class="text-right"><a class="btn" target="_blank" href="/order/{{ order.pk }}/print/">Версия для печати</a>#} {# <p class="text-right"><a class="btn" target="_blank" href="/order/{{ order.pk }}/print/">Версия для печати</a>#}
{# </p>#} {# </p>#}
{# </div>#} {# </div>#}
{% endblock %} {% endblock %}

@ -1,12 +1,13 @@
{% extends 'base.jinja' %} {% extends 'base.jinja' %}
{% block title %} {% block title %}
{{ object.title }} > Новости Батискаф-Казахстан {{ object.title }} > Новости Батискаф-Казахстан
{% endblock %} {% endblock %}
{% block meta_description %} {% block meta_description %}
{{ object.title }} - Новости Батискаф-Казахстан. {{ object.title }} - Новости Батискаф-Казахстан.
{% endblock %} {% endblock %}
{% block meta_keywords %} {% block meta_keywords %}
Новости, Читать, Комментировать, {% for tag in object.tags_list.all() %}{{ tag.title }}, {% endfor %}, {{ object.title }}, Батискаф-Казахстан Новости, Читать, Комментировать,
{% for tag in object.tags_list.all() %}{{ tag.title }}, {% endfor %}, {{ object.title }}, Батискаф-Казахстан
{% endblock %} {% endblock %}
{% block content %} {% block content %}
<div class=" breadcrumbs"> <div class=" breadcrumbs">
@ -14,13 +15,11 @@
<li><a href="/">Главная</a></li> <li><a href="/">Главная</a></li>
<li><a href="/news/">Новости</a></li> <li><a href="/news/">Новости</a></li>
<li class="active"><span>{{ object.title }}</span></li> <li class="active"><span>{{ object.title }}</span></li>
</ol> </ol>
</div><h2 class=""> </div><h2 class="">
{{ object.title }} {{ object.title }}
</h2><br/> </h2><br/>
<div class="well well-lg news-container"> <div class="well well-lg news-container">
<p class="text-muted"> <p class="text-muted">
<small> <small>
<span class="glyphicon glyphicon-time" <span class="glyphicon glyphicon-time"
@ -29,79 +28,64 @@
href="#comments">Комментарии ({{ object.comments.count() }})</a> href="#comments">Комментарии ({{ object.comments.count() }})</a>
</small> </small>
</p> </p>
<p class="text-center"> <p class="text-center">
{% set im = object.image %} {% set im = object.image %}
<img src="/static/{{ im.url }}" alt="{{ object.title }}" title="{{ object.title }}" style="max-width: 100%" class=""/> <img src="/static/{{ im.url }}" alt="{{ object.title }}" title="{{ object.title }}" style="max-width: 100%"
class=""/>
</p> </p>
{{ object.text|linebreaks|safe }} {{ object.text|linebreaks|safe }}
<hr/> <hr/>
<div class="row"> <div class="row">
<div class="social-links col-xs-6"> <div class="social-links col-xs-6">
<h5 class="text-left"> <h5 class="text-left">
Теги:</h5> Теги:</h5>
{% for tag in object.tags_list.all() %} {% for tag in object.tags_list.all() %}
<a href="/news/?tag={{ tag.slug }}"><span class="badge"><span <a href="/news/?tag={{ tag.slug }}"><span class="badge"><span
class="glyphicon glyphicon-tag"></span> {{ tag.title }}</span></a> class="glyphicon glyphicon-tag"></span> {{ tag.title }}</span></a>
{% endfor %} {% endfor %}
</div> </div>
<div class="tags col-xs-6"> <div class="tags col-xs-6">
<h5 class="text-left"> <h5 class="text-left">
Поделиться ссылкой:</h5> Поделиться ссылкой:</h5>
<script type="text/javascript" src="//yastatic.net/share/share.js" charset="utf-8"></script> <script type="text/javascript" src="//yastatic.net/share/share.js" charset="utf-8"></script>
<div class="yashare-auto-init" data-yashareL10n="ru" data-yashareType="small" <div class="yashare-auto-init" data-yashareL10n="ru" data-yashareType="small"
data-yashareQuickServices="vkontakte,facebook,twitter,odnoklassniki,moimir,gplus" data-yashareQuickServices="vkontakte,facebook,twitter,odnoklassniki,moimir,gplus"
data-yashareLink="http://batiskaf-kz.kz{{ object.get_absolute_url() }}" data-yashareLink="http://batiskaf-kz.kz{{ object.get_absolute_url() }}"
data-yashareTitle="{{ object.title }}" data-yashareTheme="counter"></div> data-yashareTitle="{{ object.title }}" data-yashareTheme="counter"></div>
</div> </div>
</div> </div>
<hr/> <hr/>
<div class="comments"> <div class="comments">
<a name="comments"></a> <a name="comments"></a>
<h3 class="text-left"> <h3 class="text-left">
Комментарии:</h3> Комментарии:</h3>
{% if object.comments.all() %} {% if object.comments.all() %}
<ul class="media-list">
<ul class="media-list"> {% for comment in object.comments.all() %}
<li class="media">
<a name="comment{{ comment.pk }}"></a>
{% for comment in object.comments.all() %} <div class="media-body">
<h4 class="media-heading text-left">{{ comment.name }} пишет:
<li class="media"> <small><a
<a name="comment{{ comment.pk }}"></a> href="{{ request.get_full_path() }}#comment{{ comment.pk }}">#</a></small>
<div class="media-body"> </h4>
<h4 class="media-heading text-left">{{ comment.name }} пишет: <small><a <p>{{ comment.created.strftime('%d.%m.%Y %H:%M') }}</p>
href="{{ request.get_full_path() }}#comment{{ comment.pk }}">#</a></small></h4> <p>{{ comment.text|striptags }}</p>
<p>{{ comment.created.strftime('%d.%m.%Y %H:%M') }}</p> <!-- Nested media object -->
<p>{{ comment.text|striptags }}</p> </div>
<!-- Nested media object --> </li>
{% endfor %}
</div>
</li>
{% endfor %}
</ul> </ul>
{% else %} {% else %}
<div class="alert alert-warning alert-dismissable"> <div class="alert alert-warning alert-dismissable">
<strong>Пока нет ни одного комментария!</strong> Вы можете <a href="#comment">стать первым</a>! <strong>Пока нет ни одного комментария!</strong> Вы можете <a href="#comment">стать первым</a>!
</div> </div>
{% endif %} {% endif %}
</div> </div>
<div class="comment"> <div class="comment">
<a name="comment"></a> <a name="comment"></a>
<h4 class="text-center"> <h4 class="text-center">
Оставить комментарий:</h4> Оставить комментарий:</h4>
<div class="comment-form col-xs-6 col-xs-offset-3"> <div class="comment-form col-xs-6 col-xs-offset-3">
<form action="" class="form" method="post"><input type="hidden" name="csrfmiddlewaretoken" <form action="" class="form" method="post"><input type="hidden" name="csrfmiddlewaretoken"
value="{{ csrf_token }}"> value="{{ csrf_token }}">
@ -114,9 +98,5 @@
</form> </form>
</div> </div>
</div> </div>
</div> </div>
{% endblock %} {% endblock %}

@ -13,7 +13,6 @@
<ol class="breadcrumb breadcrumb-arrow"> <ol class="breadcrumb breadcrumb-arrow">
<li><a href="/">Главная</a></li> <li><a href="/">Главная</a></li>
<li><a href="/news/">Новости</a></li> <li><a href="/news/">Новости</a></li>
<li class="active"><span>Новости <li class="active"><span>Новости
{% if tag %} {% if tag %}
с тегом "{{ tag.title }}" с тегом "{{ tag.title }}"
@ -30,7 +29,6 @@
<h2 class="text-left"> <h2 class="text-left">
<a href="{{ url('news_detail', args=(object.slug,)) }}">{{ object.title }}</a> <a href="{{ url('news_detail', args=(object.slug,)) }}">{{ object.title }}</a>
</h2> </h2>
<p class="text-muted"> <p class="text-muted">
<small> <small>
<span class="glyphicon glyphicon-time" <span class="glyphicon glyphicon-time"
@ -53,7 +51,6 @@
<div class="social-links"> <div class="social-links">
<strong> <strong>
Поделиться ссылкой: Поделиться ссылкой:
<div class="yashare-auto-init" data-yashareL10n="ru" data-yashareType="small" <div class="yashare-auto-init" data-yashareL10n="ru" data-yashareType="small"
data-yashareQuickServices="vkontakte,facebook,twitter,odnoklassniki,moimir,gplus" data-yashareQuickServices="vkontakte,facebook,twitter,odnoklassniki,moimir,gplus"
data-yashareLink="http://batiskaf-kz.kz{{ object.get_absolute_url() }}" data-yashareLink="http://batiskaf-kz.kz{{ object.get_absolute_url() }}"
@ -62,6 +59,4 @@
</div> </div>
</div> </div>
{% endfor %} {% endfor %}
{% endblock %} {% endblock %}

@ -3,15 +3,12 @@
Заказ успешно оформлен Заказ успешно оформлен
{% endblock %} {% endblock %}
{% block content %} {% block content %}
<div class="alert alert-success alert-dismissable"> <div class="alert alert-success alert-dismissable">
<button type="button" class="close" data-dismiss="alert" aria-hidden="true">×</button> <button type="button" class="close" data-dismiss="alert" aria-hidden="true">×</button>
<h4>Спасибо!</h4> <h4>Спасибо!</h4>
<p>Ваш заказ успешно принят и поступит в обработку сразу после оплаты.</p> <p>Ваш заказ успешно принят и поступит в обработку сразу после оплаты.</p>
{# <p><a class="btn btn-success" target="_blank" href="/order/{{ order.pk }}/print/">Распечатать квитанцию для#}
{# <p><a class="btn btn-success" target="_blank" href="/order/{{ order.pk }}/print/">Распечатать квитанцию для#} {# оплаты</a></p>#}
{# оплаты</a></p>#}
</div> </div>
<div class="radio"> <div class="radio">
<label> <label>
@ -25,62 +22,59 @@
Прямой банковский платеж <br><img src="/static/img/bank.png" alt=""> Прямой банковский платеж <br><img src="/static/img/bank.png" alt="">
</label> </label>
</div> </div>
{# <div class="well">#}
{# <div class="well">#} {# <h5>Вы можете отправить прямой платеж на карту:</h5>#}
{# <h5>Вы можете отправить прямой платеж на карту:</h5>#} {##}
{##} {# <p class="text-center">#}
{# <p class="text-center">#} {# <strong>Банк:</strong> Казкоммерцбанк <br/>#}
{# <strong>Банк:</strong> Казкоммерцбанк <br/>#} {# <strong>ИИН:</strong> 760419302190 <br/>#}
{# <strong>ИИН:</strong> 760419302190 <br/>#} {# <strong>Номер карты:</strong> 4405 6452 0912 2014 <br/><br/>#}
{# <strong>Номер карты:</strong> 4405 6452 0912 2014 <br/><br/>#} {# <i>...либо воспользуйтесь квитанцией для оплаты банковским платежом</i>#}
{# <i>...либо воспользуйтесь квитанцией для оплаты банковским платежом</i>#} {# </p>#}
{# </p>#} {# </div>#}
{# </div>#} {# <div class="well">#}
{# <div class="well">#} {# <table style="border:1px black solid; width: 100%">#}
{# <table style="border:1px black solid; width: 100%">#} {# <tr>#}
{# <tr>#} {# <td style="border-bottom:1px black solid; border-right:1px black solid; padding: 20px;">#}
{# <td style="border-bottom:1px black solid; border-right:1px black solid; padding: 20px;">#} {# <b>Платеж</b>#}
{# <b>Платеж</b>#} {# </td>#}
{# </td>#} {# <td style="border-bottom:1px black solid; padding: 20px;">#}
{# <td style="border-bottom:1px black solid; padding: 20px;">#} {# <b>ИИК:</b> KZ809261001507363000 <br/>#}
{# <b>ИИК:</b> KZ809261001507363000 <br/>#} {# <b>РНН/БИН бенефециара:</b> 760419302190 <br/>#}
{# <b>РНН/БИН бенефециара:</b> 760419302190 <br/>#} {# <b>Бенефециар:</b> ИП Полинкин Матвей Владимирович <br/>#}
{# <b>Бенефециар:</b> ИП Полинкин Матвей Владимирович <br/>#} {# <b>Банк бенефециара:</b> АО "Казкоммерцбанк" <br/>#}
{# <b>Банк бенефециара:</b> АО "Казкоммерцбанк" <br/>#} {# <b>БИК:</b> KZKOKZKX <br/>#}
{# <b>БИК:</b> KZKOKZKX <br/>#} {# <b>Платеж:</b> Заказ №{{ order.pk }} от {{ date.strftime('%d.%m.%Y') }} <br/>#}
{# <b>Платеж:</b> Заказ №{{ order.pk }} от {{ date.strftime('%d.%m.%Y') }} <br/>#} {# <b>Плательщик:</b> {{ order.first_name }} {{ order.last_name }} <br/>#}
{# <b>Плательщик:</b> {{ order.first_name }} {{ order.last_name }} <br/>#} {# <b>Адрес плательщика:</b> {{ order.address }} <br/>#}
{# <b>Адрес плательщика:</b> {{ order.address }} <br/>#} {# <b>Сумма:</b> {{ order.amount }} тенге<br/> <br/>#}
{# <b>Сумма:</b> {{ order.amount }} тенге<br/> <br/>#} {# Подпись:_____________________ Дата: {{ date.strftime('%d.%m.%Y') }}<br/>#}
{# Подпись:_____________________ Дата: {{ date.strftime('%d.%m.%Y') }}<br/>#} {##}
{##} {# </td>#}
{# </td>#} {# </tr>#}
{# </tr>#} {# <tr>#}
{# <tr>#} {# <td style=" border-right:1px black solid; padding: 20px;">#}
{# <td style=" border-right:1px black solid; padding: 20px;">#} {# <b>Квитанция</b><br/>#}
{# <b>Квитанция</b><br/>#} {# Кассир#}
{# Кассир#} {# </td>#}
{# </td>#} {# <td style="padding: 20px;">#}
{# <td style="padding: 20px;">#} {# <b>ИИК:</b> KZ809261001507363000 <br/>#}
{# <b>ИИК:</b> KZ809261001507363000 <br/>#} {# <b>РНН/БИН бенефециара:</b> 760419302190 <br/>#}
{# <b>РНН/БИН бенефециара:</b> 760419302190 <br/>#} {# <b>Бенефециар:</b> ИП Полинкин Матвей Владимирович <br/>#}
{# <b>Бенефециар:</b> ИП Полинкин Матвей Владимирович <br/>#} {# <b>Банк бенефециара:</b> АО "Казкоммерцбанк" <br/>#}
{# <b>Банк бенефециара:</b> АО "Казкоммерцбанк" <br/>#} {# <b>БИК:</b> KZKOKZKX <br/>#}
{# <b>БИК:</b> KZKOKZKX <br/>#} {# <b>Платеж:</b> Заказ №{{ order.pk }} от {{ date.strftime('%d.%m.%Y') }} <br/>#}
{# <b>Платеж:</b> Заказ №{{ order.pk }} от {{ date.strftime('%d.%m.%Y') }} <br/>#} {# <b>Плательщик:</b> {{ order.first_name }} {{ order.last_name }} <br/>#}
{# <b>Плательщик:</b> {{ order.first_name }} {{ order.last_name }} <br/>#} {# <b>Адрес плательщика:</b> {{ order.address }} <br/>#}
{# <b>Адрес плательщика:</b> {{ order.address }} <br/>#} {# <b>Сумма:</b> {{ order.amount }} тенге<br/> <br/>#}
{# <b>Сумма:</b> {{ order.amount }} тенге<br/> <br/>#} {# Подпись:_____________________ Дата: {{ date.strftime('%d.%m.%Y') }}<br/>#}
{# Подпись:_____________________ Дата: {{ date.strftime('%d.%m.%Y') }}<br/>#} {##}
{##} {# </td>#}
{# </td>#} {# </tr>#}
{# </tr>#} {# </table>#}
{# </table>#} {# <br/>#}
{# <br/>#} {##}
{##} {# <p class="text-right"><a class="btn" target="_blank" href="/order/{{ order.pk }}/print/">Версия для печати</a>#}
{# <p class="text-right"><a class="btn" target="_blank" href="/order/{{ order.pk }}/print/">Версия для печати</a>#} {# </p>#}
{# </p>#} {# </div>#}
{# </div>#}
{% endblock %} {% endblock %}

@ -1,5 +1,5 @@
<style> <style>
td{ td {
padding: 20px; padding: 20px;
} }
</style> </style>
@ -17,9 +17,8 @@
<b>Платеж:</b> Заказ №{{ order.pk }} от {{ date.strftime('%d.%m.%Y') }} <br/> <b>Платеж:</b> Заказ №{{ order.pk }} от {{ date.strftime('%d.%m.%Y') }} <br/>
<b>Плательщик:</b> {{ order.first_name }} {{ order.last_name }} <br/> <b>Плательщик:</b> {{ order.first_name }} {{ order.last_name }} <br/>
<b>Адрес плательщика:</b> {{ order.address }} <br/> <b>Адрес плательщика:</b> {{ order.address }} <br/>
<b>Сумма:</b> {{ order.amount }} тенге<br/> <br/> <b>Сумма:</b> {{ order.amount }} тенге<br/> <br/>
Подпись:_____________________ Дата: {{ date.strftime('%d.%m.%Y') }}<br/> Подпись:_____________________ Дата: {{ date.strftime('%d.%m.%Y') }}<br/>
</td> </td>
</tr> </tr>
<tr> <tr>
@ -36,9 +35,8 @@
<b>Платеж:</b> Заказ №{{ order.pk }} от {{ date.strftime('%d.%m.%Y') }} <br/> <b>Платеж:</b> Заказ №{{ order.pk }} от {{ date.strftime('%d.%m.%Y') }} <br/>
<b>Плательщик:</b> {{ order.first_name }} {{ order.last_name }} <br/> <b>Плательщик:</b> {{ order.first_name }} {{ order.last_name }} <br/>
<b>Адрес плательщика:</b> {{ order.address }} <br/> <b>Адрес плательщика:</b> {{ order.address }} <br/>
<b>Сумма:</b> {{ order.amount }} тенге<br/> <br/> <b>Сумма:</b> {{ order.amount }} тенге<br/> <br/>
Подпись:_____________________ Дата: {{ date.strftime('%d.%m.%Y') }}<br/> Подпись:_____________________ Дата: {{ date.strftime('%d.%m.%Y') }}<br/>
</td> </td>
</tr> </tr>
</table> </table>

@ -1,35 +1,36 @@
{% extends 'base.jinja' %} {% extends 'base.jinja' %}
{% block meta_description %} {% block meta_description %}
Способы оплаты в интернет-магазине снаряжения для дайвинга и подводной охоты Батискаф-Казахстан. Способы оплаты в интернет-магазине снаряжения для дайвинга и подводной охоты Батискаф-Казахстан.
{% endblock %} {% endblock %}
{% block meta_keywords %} {% block meta_keywords %}
Оплата, Перевод, Банк, Интернет, Кредитная карта, Счет, Пластиковая карта, Бенефециар, Батискаф-Казахстан Оплата, Перевод, Банк, Интернет, Кредитная карта, Счет, Пластиковая карта, Бенефециар, Батискаф-Казахстан
{% endblock %} {% endblock %}
{% block title %} {% block title %}
Способы оплаты Способы оплаты
{% endblock %} {% endblock %}
{% block content %} {% block content %}
<h3>Способы Оплаты</h3>
<h3>Способы Оплаты</h3>
<br/> <br/>
<div class="well well-large"> <div class="well well-large">
<ol> <ol>
<li><strong>Банковский перевод</strong> - счет для оплаты банковским платежом распечатайте на принтере и
<li><strong>Банковский перевод</strong> - счет для оплаты банковским платежом распечатайте на принтере и оплатите в любом банке РК. Не забывайте, что банк берет комиссию за перевод.</li> оплатите в любом банке РК. Не забывайте, что банк берет комиссию за перевод.
<li><strong>Интернет банкинг</strong> - если у вас есть счет в одном из банков с системой интернет банкинга, вы можете оплатить счет, перечислив деньги со своего счета на наш расчетный счет.</li> </li>
<li><strong>Оплата кредитной картой</strong> - вы можете моментально оплатить покупки с помощью пластиковой карты любого банка.</li> <li><strong>Интернет банкинг</strong> - если у вас есть счет в одном из банков с системой интернет банкинга,
 </ol> вы можете оплатить счет, перечислив деньги со своего счета на наш расчетный счет.
</li>
<li><strong>Оплата кредитной картой</strong> - вы можете моментально оплатить покупки с помощью пластиковой
карты любого банка.
</li>
</ol>
</div> </div>
<div class="well well-large"> <div class="well well-large">
<h5 class="text-left">Реквизиты интернет магазина Батискаф-Казахстан:</h5> <h5 class="text-left">Реквизиты интернет магазина Батискаф-Казахстан:</h5>
<b>ИИК:</b> KZ809261001507363000 <br/> <b>ИИК:</b> KZ809261001507363000 <br/>
<b>РНН/БИН бенефециара:</b> 760419302190 <br/> <b>РНН/БИН бенефециара:</b> 760419302190 <br/>
<b>Бенефециар:</b> ИП Полинкин Матвей Владимирович <br/> <b>Бенефециар:</b> ИП Полинкин Матвей Владимирович <br/>
<b>Банк бенефециара:</b> АО "Казкоммерцбанк" <br/> <b>Банк бенефециара:</b> АО "Казкоммерцбанк" <br/>
<b>БИК:</b> KZKOKZKX <br/> <b>БИК:</b> KZKOKZKX <br/>
</div> </div>
{% endblock %} {% endblock %}

@ -1,33 +1,35 @@
{% extends 'base.jinja' %} {% extends 'base.jinja' %}
{% block meta_description %} {% block meta_description %}
Купить {{ product.title }} в интернет-магазине снаряжения для дайвинга и подводной охоты Батискаф-Казахстан. Купить {{ product.title }} в интернет-магазине снаряжения для дайвинга и подводной охоты Батискаф-Казахстан.
{% endblock %} {% endblock %}
{% block meta_keywords %} {% block meta_keywords %}
{{ product.title }}, {% for parent in category.get_parents() %}{{ parent.title }}, {% endfor %}{{ category.title }}, Товар, Цена, Купить, Фото, Интернет-Магазин, Батискаф-Казахстан {{ product.title }},
{% for parent in category.get_parents() %}{{ parent.title }}, {% endfor %}{{ category.title }}, Товар, Цена, Купить,
Фото, Интернет-Магазин, Батискаф-Казахстан
{% endblock %} {% endblock %}
{% block title %} {% block title %}
{{ product.title }} | {{ category.title }} {{ product.title }} | {{ category.title }}
{% endblock %} {% endblock %}
{% block content %} {% block content %}
<div class=" breadcrumbs"> <div class=" breadcrumbs">
<ol class="breadcrumb breadcrumb-arrow"> <ol class="breadcrumb breadcrumb-arrow">
<li><a href="/">Главная</a></li> <li><a href="/">Главная</a></li>
{% for parent in category.get_parents() %} {% for parent in category.get_parents() %}
<li><a href="{{ parent.get_absolute_url() }}">{{ parent.title }}</a></li> <li><a href="{{ parent.get_absolute_url() }}">{{ parent.title }}</a></li>
{% endfor %} {% endfor %}
<li class=""><a href="{{ category.get_absolute_url() }}">{{ category.title }}</a></li> <li class=""><a href="{{ category.get_absolute_url() }}">{{ category.title }}</a></li>
<li class="active"><span>{{ product.title }}</span></li> <li class="active"><span>{{ product.title }}</span></li>
</ol> </ol>
</div> </div>
<div class="row"> <div class="row">
<div class="product-thumbnails col-xs-6"> <div class="product-thumbnails col-xs-6">
<div class="product-min-thumbnails col-xs-2"> <div class="product-min-thumbnails col-xs-2">
{% for image in product.images.all() %} {% for image in product.images.all() %}
{% set im = image.image|thumbnail("80x80") %} {% set im = image.image|thumbnail("80x80") %}
{% set im_big = image.image|thumbnail("398x398") %} {% set im_big = image.image|thumbnail("398x398") %}
<a href="/static/{{ im_big.url }}" data-big-url="/static/{{ image.image.url }}"><img <a href="/static/{{ im_big.url }}" data-big-url="/static/{{ image.image.url }}"><img
src="/static/{{ im.url }}" alt="{{ product.title }}" title="{{ product.title }}" src="/static/{{ im.url }}" alt="{{ product.title }}" title="{{ product.title }}"
class="img-thumbnail"/></a> class="img-thumbnail"/></a>
{% endfor %} {% endfor %}
</div> </div>
<div class="product-big-thumbnail col-xs-10"> <div class="product-big-thumbnail col-xs-10">
@ -35,134 +37,107 @@
{% set im = product.main_image()|thumbnail("398x398") %} {% set im = product.main_image()|thumbnail("398x398") %}
<!-- <a href="/static/{{ product.main_image().url }}" id="product-big-image-url"> --> <!-- <a href="/static/{{ product.main_image().url }}" id="product-big-image-url"> -->
<img src="/static/{{ im.url }}" alt="{{ product.title }}" title="{{ product.title }}" width="398" <img src="/static/{{ im.url }}" alt="{{ product.title }}" title="{{ product.title }}" width="398"
height="392" id='product-big-img' class="" height="392" id='product-big-img' class=""
data-zoom-image='/static/{{ product.main_image().url }}'/> data-zoom-image='/static/{{ product.main_image().url }}'/>
<!-- </a> --> <!-- </a> -->
</div> </div>
</div> </div>
</div> </div>
<div class="col-xs-6 product-short-description"> <div class="col-xs-6 product-short-description">
<h1 style="font-size:19px; margin-top:0;" class="text-left">{{ product.title }}</h1> <h1 style="font-size:19px; margin-top:0;" class="text-left">{{ product.title }}</h1>
<div class="product-detail-price"> <div class="product-detail-price">
<span class="product-detail-price-span">{{ product.min_price() }}</span> ₸ <span class="product-detail-price-span">{{ product.min_price() }}</span> ₸
</div> </div>
<br/> <br/>
{% set variant = product.variations.filter(in_stock__gt=0).order_by('price').first() %} {% set variant = product.variations.filter(in_stock__gt=0).order_by('price').first() %}
{% if not variant %} {% if not variant %}
{% set variant = product.variations.order_by('price').first() %} {% set variant = product.variations.order_by('price').first() %}
{% endif %} {% endif %}
<div class="product-variations"> <div class="product-variations">
<p>Варианты товара:</p> <p>Варианты товара:</p>
<select name="product-variations-selecter" class="product-variations-selecter"> <select name="product-variations-selecter" class="product-variations-selecter">
{% for variation in product.variations.order_by('price') %} {% for variation in product.variations.order_by('price') %}
<option {% if variation.pk == variant.pk %}selected='selected'{% endif %} <option {% if variation.pk == variant.pk %}selected='selected'{% endif %}
value="{{ variation.pk }}" data-price="{{ variation.get_price() }}" value="{{ variation.pk }}" data-price="{{ variation.get_price() }}"
data-count="{{ variation.in_stock }}">{{ variation.variation }} data-count="{{ variation.in_stock }}">{{ variation.variation }}
- {{ variation.get_price() }} - {{ variation.get_price() }}
</option> </option>
{% endfor %} {% endfor %}
</select> </select>
</div> </div>
{% if 'suits' in request.path %}
<div>
{% if 'suits' in request.path %} <a href="/size/" class="text-danger" style="color:#FC6E51; font-weight:bold" target="_blank">Подобрать
размер &rarr;</a>
<div>
<a href="/size/" class="text-danger" style="color:#FC6E51; font-weight:bold" target="_blank">Подобрать размер &rarr;</a>
</div>
{% endif %}
<div class="product-in-stock">
<select name="product-count-selecter" class="product-count-selecter">
{% for count_val in range(variant.in_stock) %}
<option value="{{ count_val + 1 }}">{{ count_val + 1 }} шт.</option>
{% endfor %}
</select>
<div class="row">
<div class="itogo col-xs-6">
Итого: <span class="itogo-span">{{ product.min_price() }}</span> ₸
</div> </div>
<div class="col-xs-6 text-right"> {% endif %}
<a href="/store/cart/add/?pk={{ variant.pk }}&count=1&next={{ product.get_absolute_url() }}" <div class="product-in-stock">
class="btn btn-warning btn-block" id="product-add-to-cart-link"><span <select name="product-count-selecter" class="product-count-selecter">
class="glyphicon glyphicon-shopping-cart" aria-hidden="true"></span> Добавить в корзину</a> {% for count_val in range(variant.in_stock) %}
<option value="{{ count_val + 1 }}">{{ count_val + 1 }} шт.</option>
{% endfor %}
</select>
<div class="row">
<div class="itogo col-xs-6">
Итого: <span class="itogo-span">{{ product.min_price() }}</span> ₸
</div>
<div class="col-xs-6 text-right">
<a href="/store/cart/add/?pk={{ variant.pk }}&count=1&next={{ product.get_absolute_url() }}"
class="btn btn-warning btn-block" id="product-add-to-cart-link"><span
class="glyphicon glyphicon-shopping-cart" aria-hidden="true"></span> Добавить в корзину</a>
</div>
</div> </div>
</div> </div>
<div class="product-not-in-stock">
</div> Товара нет в наличии <br/><br/><br/>
<a class=" btn btn-danger btn-block order-order-link" href="#order-form" data-itemid="{{ product.pk }}"
<div class="product-not-in-stock"> style="max-width: 200px"><span><span
Товара нет в наличии <br/><br/><br/> class="glyphicon glyphicon-import" aria-hidden="true"></span> Заказать</span></a>
<a class=" btn btn-danger btn-block order-order-link" href="#order-form" data-itemid="{{ product.pk }}" </div>
style="max-width: 200px"><span><span
class="glyphicon glyphicon-import" aria-hidden="true"></span> Заказать</span></a>
</div>
<br> <br>
<div class="text-success" style="font-size: 13px"><em>Цены и наличие товара актуальны на {{ updated.created.strftime('%d.%m %H:%M') }}</em></div> <div class="text-success" style="font-size: 13px"><em>Цены и наличие товара актуальны
на {{ updated.created.strftime('%d.%m %H:%M') }}</em></div>
<div class="tags">
<div class="tags"> <h5 class="text-left">
<h5 class="text-left"> Поделиться ссылкой:</h5>
Поделиться ссылкой:</h5>
<script type="text/javascript" src="//yastatic.net/share/share.js" charset="utf-8"></script> <script type="text/javascript" src="//yastatic.net/share/share.js" charset="utf-8"></script>
<div class="yashare-auto-init" data-yashareL10n="ru" data-yashareType="small" <div class="yashare-auto-init" data-yashareL10n="ru" data-yashareType="small"
data-yashareQuickServices="vkontakte,facebook,twitter,odnoklassniki,moimir,gplus" data-yashareQuickServices="vkontakte,facebook,twitter,odnoklassniki,moimir,gplus"
data-yashareLink="http://batiskaf-kz.kz{{ object.get_absolute_url() }}" data-yashareLink="http://batiskaf-kz.kz{{ object.get_absolute_url() }}"
data-yashareTitle="{{ object.title }}" data-yashareTheme="counter"></div> data-yashareTitle="{{ object.title }}" data-yashareTheme="counter"></div>
</div> </div>
</div> </div>
</div> </div>
<div class=" text-left product-description"> <div class=" text-left product-description">
{{ product.description|linebreaks|safe }} {{ product.description|linebreaks|safe }}
</div> </div>
<hr class="dashed"/> <hr class="dashed"/>
<h3 class=""> <h3 class="">
Отзывы о товаре {{ product.title }} Отзывы о товаре {{ product.title }}
</h3><br/> </h3><br/>
<div class="well well-lg news-container"> <div class="well well-lg news-container">
<ul class="media-list">
{% if product.feedback.all() %}
<ul class="media-list">
{% if product.feedback.all() %}
{% for comment in product.feedback.all() %} {% for comment in product.feedback.all() %}
<li class="media"> <li class="media">
<a name="comment{{ comment.pk }}"></a> <a name="comment{{ comment.pk }}"></a>
<div class="media-body"> <div class="media-body">
<h4 class="media-heading text-left"> <h4 class="media-heading text-left">
{% for i in range(1,6) %} {% for i in range(1,6) %}
<input name="star{{ comment.pk }}" type="radio" class="star" disabled="disabled" {% if i == comment.stars %}checked="checked"{% endif %}/> <input name="star{{ comment.pk }}" type="radio" class="star" disabled="disabled"
{% endfor %} {% if i == comment.stars %}checked="checked"{% endif %}/>
{% endfor %}
{{ comment.name }} пишет:
{{ comment.name }} пишет: <small><a <small><a
href="{{ request.get_full_path() }}#comment{{ comment.pk }}">#</a></small></h4> href="{{ request.get_full_path() }}#comment{{ comment.pk }}">#</a></small>
<p>{{ comment.created.strftime('%d.%m.%Y %H:%M') }}</p> </h4>
<p>{{ comment.text|striptags }}</p> <p>{{ comment.created.strftime('%d.%m.%Y %H:%M') }}</p>
<!-- Nested media object --> <p>{{ comment.text|striptags }}</p>
</div>
</div> </li>
</li>
{% endfor %} {% endfor %}
</ul> </ul>
{% else %} {% else %}
@ -170,28 +145,22 @@
<strong>Пока нет ни одного отзыва!</strong> Вы можете <a href="#comment">стать первым</a>! <strong>Пока нет ни одного отзыва!</strong> Вы можете <a href="#comment">стать первым</a>!
</div> </div>
{% endif %} {% endif %}
</div>
</div>
<hr/> <hr/>
<div class="comment"> <div class="comment">
<a name="comment"></a> <a name="comment"></a>
<h4 class="text-center"> <h4 class="text-center">
Оставить отзыв:</h4> Оставить отзыв:</h4>
<div class="comment-form col-xs-6 col-xs-offset-3">
<div class="comment-form col-xs-6 col-xs-offset-3"> <form action="" class="form" method="post"><input type="hidden" name="csrfmiddlewaretoken"
<form action="" class="form" method="post"><input type="hidden" name="csrfmiddlewaretoken" value="{{ csrf_token }}">
value="{{ csrf_token }}"> {{ form|bootstrap }}
{{ form|bootstrap }} <div class="form-group text-left">
<div class="form-group text-left"> <button type="submit" name="comment-send" class="btn btn-primary"><span
<button type="submit" name="comment-send" class="btn btn-primary"><span class="glyphicon glyphicon-comment" aria-hidden="true"></span> Отправить
class="glyphicon glyphicon-comment" aria-hidden="true"></span> Отправить </button>
</button> </div>
</div> </form>
</form>
</div>
</div> </div>
</div>
{% endblock %}
{% endblock %}

@ -1,12 +1,12 @@
{% extends 'base.jinja' %} {% extends 'base.jinja' %}
{% block title %} {% block title %}
{{ object.title }} > Акции Батискаф-Казахстан {{ object.title }} > Акции Батискаф-Казахстан
{% endblock %} {% endblock %}
{% block meta_description %} {% block meta_description %}
{{ object.title }} - Акции Батискаф-Казахстан. {{ object.title }} - Акции Батискаф-Казахстан.
{% endblock %} {% endblock %}
{% block meta_keywords %} {% block meta_keywords %}
Акции, Читать, Комментировать, {{ object.title }}, Батискаф-Казахстан Акции, Читать, Комментировать, {{ object.title }}, Батискаф-Казахстан
{% endblock %} {% endblock %}
{% block content %} {% block content %}
<div class=" breadcrumbs"> <div class=" breadcrumbs">
@ -14,60 +14,45 @@
<li><a href="/">Главная</a></li> <li><a href="/">Главная</a></li>
<li><a href="/news/">Акции</a></li> <li><a href="/news/">Акции</a></li>
<li class="active"><span>{{ object.title }}</span></li> <li class="active"><span>{{ object.title }}</span></li>
</ol> </ol>
</div> </div>
<h2 class="text-left"> <h2 class="text-left">
{% if object.get_status() == 0 %} {% if object.get_status() == 0 %}
{{ object.title }} <small><span class="text-muted">Акция еще не началась</span></small> {{ object.title }}
<small><span class="text-muted">Акция еще не началась</span></small>
{% elif object.get_status() == 1 %} {% elif object.get_status() == 1 %}
{{ object.title }} <small><span class="text-success">Действующая акция</span></small> {{ object.title }}
{% else %} <small><span class="text-success">Действующая акция</span></small>
<s>{{ object.title }}</s> <small><span class="text-danger">Акция завершена</span></small> {% else %}
{% endif %} <s>{{ object.title }}</s>
<small><span class="text-danger">Акция завершена</span></small>
{% endif %}
</h2> </h2>
<br/>
<br/>
<div class="well well-lg news-container"> <div class="well well-lg news-container">
<p class="text-muted"> <p class="text-muted">
<small> <small>
<span class="glyphicon glyphicon-time" <span class="glyphicon glyphicon-time"
aria-hidden="true"></span> {{ object.created.strftime('%d.%m.%Y') }} aria-hidden="true"></span> {{ object.created.strftime('%d.%m.%Y') }}
</small> </small>
</p> </p>
<p class="text-center"> <p class="text-center">
{% set im = object.image %} {% set im = object.image %}
<img src="/static/{{ im.url }}" alt="{{ object.title }}" title="{{ object.title }}" style="max-width: 100%" class=""/> <img src="/static/{{ im.url }}" alt="{{ object.title }}" title="{{ object.title }}" style="max-width: 100%"
class=""/>
</p> </p>
{{ object.text|linebreaks|safe }} {{ object.text|linebreaks|safe }}
<hr/> <hr/>
<div class="row"> <div class="row">
<div class="tags col-xs-6"> <div class="tags col-xs-6">
<h5 class="text-left"> <h5 class="text-left">
Поделиться ссылкой:</h5> Поделиться ссылкой:</h5>
<script type="text/javascript" src="//yastatic.net/share/share.js" charset="utf-8"></script> <script type="text/javascript" src="//yastatic.net/share/share.js" charset="utf-8"></script>
<div class="yashare-auto-init" data-yashareL10n="ru" data-yashareType="small" <div class="yashare-auto-init" data-yashareL10n="ru" data-yashareType="small"
data-yashareQuickServices="vkontakte,facebook,twitter,odnoklassniki,moimir,gplus" data-yashareQuickServices="vkontakte,facebook,twitter,odnoklassniki,moimir,gplus"
data-yashareLink="http://batiskaf-kz.kz{{ object.get_absolute_url() }}" data-yashareLink="http://batiskaf-kz.kz{{ object.get_absolute_url() }}"
data-yashareTitle="{{ object.title }}" data-yashareTheme="counter"></div> data-yashareTitle="{{ object.title }}" data-yashareTheme="counter"></div>
</div> </div>
</div> </div>
</div> </div>
{% endblock %} {% endblock %}

@ -16,64 +16,56 @@
</ol> </ol>
</div> </div>
<script type="text/javascript" src="//yastatic.net/share/share.js" charset="utf-8"></script> <script type="text/javascript" src="//yastatic.net/share/share.js" charset="utf-8"></script>
{% if object_list %} {% if object_list %}
{% for object in object_list %}
<div class="well well-lg news-container">
<h2 class="text-left">
{% for object in object_list %} {% if object.get_status() == 0 %}
<div class="well well-lg news-container"> <a href="{{ url('promo_detail', args=(object.slug,)) }}">{{ object.title }}</a>
<h2 class="text-left"> <small><span class="text-muted">Акция еще не началась</span></small>
{% if object.get_status() == 0 %} {% elif object.get_status() == 1 %}
<a href="{{ url('promo_detail', args=(object.slug,)) }}">{{ object.title }}</a> <small><span class="text-muted">Акция еще не началась</span></small> <a href="{{ url('promo_detail', args=(object.slug,)) }}">{{ object.title }}</a>
<small><span class="text-success">Действующая акция</span></small>
{% elif object.get_status() == 1 %} {% else %}
<a href="{{ url('promo_detail', args=(object.slug,)) }}">{{ object.title }}</a> <small><span class="text-success">Действующая акция</span></small> <s><a href="{{ url('promo_detail', args=(object.slug,)) }}">{{ object.title }}</a></s>
{% else %} <small><span class="text-danger">Акция завершена</span></small>
<s><a href="{{ url('promo_detail', args=(object.slug,)) }}">{{ object.title }}</a></s> <small><span class="text-danger">Акция завершена</span></small> {% endif %}
{% endif %} </h2>
<p class="text-muted">
<small>
</h2> Акция действует с <strong>{{ object.act_from.strftime('%d.%m.%Y') }}</strong> до
<strong>{{ object.act_to.strftime('%d.%m.%Y') }}</strong>
<p class="text-muted"> </small>
<small> </p>
Акция действует с <strong>{{ object.act_from.strftime('%d.%m.%Y') }}</strong> до <strong>{{ object.act_to.strftime('%d.%m.%Y') }}</strong> <p class="text-center">
</small> {# {% set im = object.image|thumbnail("400x400") %}#}
</p> <a href="{{ url('promo_detail', args=(object.slug,)) }}"><img src="/static/{{ object.image.url }}"
<p class="text-center"> alt="{{ object.title }}"
{# {% set im = object.image|thumbnail("400x400") %}#} title="{{ object.title }}"
<a href="{{ url('promo_detail', args=(object.slug,)) }}"><img src="/static/{{ object.image.url }}" style="max-width: 100%"/></a>
alt="{{ object.title }}" </p>
title="{{ object.title }}" {{ object.text|truncate(520)|linebreaks|safe }}
style="max-width: 100%"/></a> <p class="text-right"><a href="{{ url('promo_detail', args=(object.slug,)) }}">Продолжить
</p> читать &rarr;</a>
{{ object.text|truncate(520)|linebreaks|safe }} </p>
<p class="text-right"><a href="{{ url('promo_detail', args=(object.slug,)) }}">Продолжить читать &rarr;</a> <hr/>
</p> <div class="social-links">
<hr/> <strong>
<div class="social-links"> Поделиться ссылкой:
<strong> <div class="yashare-auto-init" data-yashareL10n="ru" data-yashareType="small"
Поделиться ссылкой: data-yashareQuickServices="vkontakte,facebook,twitter,odnoklassniki,moimir,gplus"
data-yashareLink="http://batiskaf-kz.kz{{ object.get_absolute_url() }}"
<div class="yashare-auto-init" data-yashareL10n="ru" data-yashareType="small" data-yashareTitle="{{ object.title }}" data-yashareTheme="counter"></div>
data-yashareQuickServices="vkontakte,facebook,twitter,odnoklassniki,moimir,gplus" </strong>
data-yashareLink="http://batiskaf-kz.kz{{ object.get_absolute_url() }}" </div>
data-yashareTitle="{{ object.title }}" data-yashareTheme="counter"></div>
</strong>
</div> </div>
</div> {% endfor %}
{% endfor %}
{% else %} {% else %}
<div class="alert alert-warning alert-dismissable"> <div class="alert alert-warning alert-dismissable">
<h4>Пока не проводится ни одной акции</h4> <h4>Пока не проводится ни одной акции</h4>
<p>Пожалуйста, зайдите в этот раздел позже.</p>
<p>Пожалуйста, зайдите в этот раздел позже.</p> <p><a class="btn btn-warning" href="/">Перейти на главную страницу</a>
</p>
<p><a class="btn btn-warning" href="/">Перейти на главную страницу</a> </div>
</p>
</div>
{% endif %} {% endif %}
{% endblock %} {% endblock %}

@ -1,110 +1,106 @@
{% extends 'base.jinja' %} {% extends 'base.jinja' %}
{% block meta_description %} {% block meta_description %}
Таблица мужских размеров Aqua Discovery Таблица мужских размеров Aqua Discovery
{% endblock %} {% endblock %}
{% block meta_keywords %} {% block meta_keywords %}
Гидрокостюм, Размер, Бренд, Размерная сетка, Aqua Discovery, Батискаф-Казахстан Гидрокостюм, Размер, Бренд, Размерная сетка, Aqua Discovery, Батискаф-Казахстан
{% endblock %} {% endblock %}
{% block title %} {% block title %}
Таблица мужских размеров Aqua Discovery Таблица мужских размеров Aqua Discovery
{% endblock %} {% endblock %}
{% block content %} {% block content %}
<div class=" breadcrumbs"> <div class=" breadcrumbs">
<ol class="breadcrumb breadcrumb-arrow"> <ol class="breadcrumb breadcrumb-arrow">
<li><a href="/">Главная</a></li> <li><a href="/">Главная</a></li>
<li><a href="/size/">Размерные сетки</a></li> <li><a href="/size/">Размерные сетки</a></li>
<li class="active"><span>Aqua Discovery</span></li> <li class="active"><span>Aqua Discovery</span></li>
</ol> </ol>
</div> </div>
<h2>Таблица мужских размеров <br/>Aqua Discovery</h2>
<h2>Таблица мужских размеров <br/>Aqua Discovery</h2> <div class="well well-large">
<div class="well well-large"> <table class="table table-hover table-bordered">
<thead>
<tr>
<table class="table table-hover table-bordered"> <th>
<thead> Размер
<tr> </th>
<th> <th>
Размер Рост (см)
</th> </th>
<th> <th>
Рост (см) Окружность груди (см)
</th> </th>
<th> <th>
Окружность груди (см) Окружность талии(см)
</th> </th>
<th> <th>
Окружность талии(см) Окружность бедер(см)
</th> </th>
<th> </tr>
Окружность бедер(см) </thead>
</th> <tbody>
</tr> <tr>
</thead> <td>44</td>
<tbody> <td>164/170</td>
<tr> <td>88/92</td>
<td>44</td> <td>76/80</td>
<td>164/170</td> <td>86/88</td>
<td>88/92</td> </tr>
<td>76/80</td> <tr>
<td>86/88</td> <td>46</td>
</tr> <td>164/170</td>
<tr> <td>92/96</td>
<td>46</td> <td>80/84</td>
<td>164/170</td> <td>90/92</td>
<td>92/96</td> </tr>
<td>80/84</td> <tr>
<td>90/92</td> <td>48</td>
</tr> <td>170/176</td>
<tr> <td>96/100</td>
<td>48</td> <td>84/88</td>
<td>170/176</td> <td>94/96</td>
<td>96/100</td> </tr>
<td>84/88</td> <tr>
<td>94/96</td> <td>50</td>
</tr> <td>176/182</td>
<tr> <td>100/104</td>
<td>50</td> <td>88/92</td>
<td>176/182</td> <td>98/100</td>
<td>100/104</td> </tr>
<td>88/92</td> <tr>
<td>98/100</td> <td>52</td>
</tr> <td>176/182</td>
<tr> <td>104/108</td>
<td>52</td> <td>92/96</td>
<td>176/182</td> <td>102/106</td>
<td>104/108</td> </tr>
<td>92/96</td> <tr>
<td>102/106</td> <td>54</td>
</tr> <td>182/188</td>
<tr> <td>108/112</td>
<td>54</td> <td>96/100</td>
<td>182/188</td> <td>106/110</td>
<td>108/112</td> </tr>
<td>96/100</td> <tr>
<td>106/110</td> <td>56</td>
</tr> <td>182/188</td>
<tr> <td>112/116</td>
<td>56</td> <td>100/104</td>
<td>182/188</td> <td>110/114</td>
<td>112/116</td> </tr>
<td>100/104</td> <td>58</td>
<td>110/114</td> <td>188/192</td>
</tr> <td>116/120</td>
<td>58</td> <td>104/108</td>
<td>188/192</td> <td>114/116</td>
<td>116/120</td> </tr>
<td>104/108</td> <td>60</td>
<td>114/116</td> <td>188/192</td>
</tr> <td>120/124</td>
<td>60</td> <td>108/112</td>
<td>188/192</td> <td>116/120</td>
<td>120/124</td> </tr>
<td>108/112</td> </tbody>
<td>116/120</td> </table>
</tr> </div>
</tbody>
</table>
</div>
{% endblock %} {% endblock %}

@ -1,484 +1,478 @@
{% extends 'base.jinja' %} {% extends 'base.jinja' %}
{% block meta_description %} {% block meta_description %}
Таблицы размеров Aqua Lung Таблицы размеров Aqua Lung
{% endblock %} {% endblock %}
{% block meta_keywords %} {% block meta_keywords %}
Гидрокостюм, Размер, Бренд, Размерная сетка, Aqua Lung, Батискаф-Казахстан Гидрокостюм, Размер, Бренд, Размерная сетка, Aqua Lung, Батискаф-Казахстан
{% endblock %} {% endblock %}
{% block title %} {% block title %}
Таблицы размеров Aqua Lung Таблицы размеров Aqua Lung
{% endblock %} {% endblock %}
{% block content %} {% block content %}
<div class=" breadcrumbs"> <div class=" breadcrumbs">
<ol class="breadcrumb breadcrumb-arrow"> <ol class="breadcrumb breadcrumb-arrow">
<li><a href="/">Главная</a></li> <li><a href="/">Главная</a></li>
<li><a href="/size/">Размерные сетки</a></li> <li><a href="/size/">Размерные сетки</a></li>
<li class="active"><span>Aqua Lung</span></li> <li class="active"><span>Aqua Lung</span></li>
</ol> </ol>
</div> </div>
<h2>Размерные сетки Aqua Lung</h2>
<h2>Размерные сетки Aqua Lung</h2> <div class="well well-large">
<div class="well well-large"> <strong>Таблица мужских размеров Aqua Lung</strong>
</br><br/>
<strong>Таблица мужских размеров Aqua Lung</strong> <table class="table table-hover table-bordered">
</br><br/> <thead>
<table class="table table-hover table-bordered"> <tr>
<thead> <th>
<tr> Обычный размер одежды
<th> </th>
Обычный размер одежды <th>
</th> 46
<th> </th>
46 <th>
</th> 48
<th> </th>
48 <th>
</th> 50
<th> </th>
50 <th>
</th> 52
<th> </th>
52 <th>
</th> 54
<th> </th>
54 <th>
</th> 56
<th> </th>
56 <th>
</th> 58
<th> </th>
58 <th>
</th> </th>
<th> </tr>
</thead>
</th> <tbody>
</tr> <tr>
</thead> <td>Размеры Aqua Lung (старый код/новый код)</td>
<tbody> <td>1/XS</td>
<tr> <td>2/S</td>
<td>Размеры Aqua Lung (старый код/новый код)</td> <td>3/M</td>
<td>1/XS</td> <td>4/ML</td>
<td>2/S</td> <td>5/L</td>
<td>3/M</td> <td>6/XL</td>
<td>4/ML</td> <td>7/XXL</td>
<td>5/L</td> <td></td>
<td>6/XL</td> </tr>
<td>7/XXL</td> <tr>
<td></td> <td>Размерные параметры</td>
</tr> <td>1</td>
<tr> <td>2</td>
<td>Размерные параметры</td> <td>3</td>
<td>1</td> <td>4</td>
<td>2</td> <td>5</td>
<td>3</td> <td>6</td>
<td>4</td> <td>7</td>
<td>5</td> <td>разброс</td>
<td>6</td> </tr>
<td>7</td> <tr>
<td>разброс</td> <td>Рост (см)</td>
</tr> <td>155-166</td>
<tr> <td>163-169</td>
<td>Рост (см)</td> <td>166-175</td>
<td>155-166</td> <td>172-181</td>
<td>163-169</td> <td>178-187</td>
<td>166-175</td> <td>184-190</td>
<td>172-181</td> <td>190…</td>
<td>178-187</td> <td>± 4</td>
<td>184-190</td> </tr>
<td>190…</td> <tr>
<td>± 4</td> <td>Вес (кг)</td>
</tr> <td>47-63</td>
<tr> <td>54-70</td>
<td>Вес (кг)</td> <td>61-79</td>
<td>47-63</td> <td>70-89</td>
<td>54-70</td> <td>80-97</td>
<td>61-79</td> <td>88-107</td>
<td>70-89</td> <td>96…</td>
<td>80-97</td> <td>± 3</td>
<td>88-107</td> </tr>
<td>96…</td> <tr>
<td>± 3</td> <td>Объем бедер (см)</td>
</tr> <td>85</td>
<tr> <td>92</td>
<td>Объем бедер (см)</td> <td>96</td>
<td>85</td> <td>101</td>
<td>92</td> <td>107</td>
<td>96</td> <td>120</td>
<td>101</td> <td>125</td>
<td>107</td> <td>± 5</td>
<td>120</td> </tr>
<td>125</td> <tr>
<td>± 5</td> <td>Талия (см)</td>
</tr> <td>76</td>
<tr> <td>81</td>
<td>Талия (см)</td> <td>86</td>
<td>76</td> <td>89</td>
<td>81</td> <td>96</td>
<td>86</td> <td>101</td>
<td>89</td> <td>106</td>
<td>96</td> <td>± 5</td>
<td>101</td> </tr>
<td>106</td> <tr>
<td>± 5</td> <td>Объем груди (см)</td>
</tr> <td>86</td>
<tr> <td>90</td>
<td>Объем груди (см)</td> <td>95</td>
<td>86</td> <td>97</td>
<td>90</td> <td>102</td>
<td>95</td> <td>110</td>
<td>97</td> <td>115</td>
<td>102</td> <td>± 5</td>
<td>110</td> <tr>
<td>115</td> <td>Объем бедер (см)</td>
<td>± 5</td> <td>85</td>
<tr> <td>92</td>
<td>Объем бедер (см)</td> <td>96</td>
<td>85</td> <td>101</td>
<td>92</td> <td>107</td>
<td>96</td> <td>120</td>
<td>101</td> <td>125</td>
<td>107</td> <td>± 5</td>
<td>120</td> <tr>
<td>125</td> <td>Расстояние от шеи до запястья (сзади) (см)</td>
<td>± 5</td> <td>72</td>
<tr> <td>75</td>
<td>Расстояние от шеи до запястья (сзади) (см)</td> <td>78</td>
<td>72</td> <td>80</td>
<td>75</td> <td>85</td>
<td>78</td> <td>88</td>
<td>80</td> <td>92</td>
<td>85</td> <td>± 2</td>
<td>88</td> </tr>
<td>92</td> <tr>
<td>± 2</td> <td>Окружность запястья, см</td>
</tr> <td>16</td>
<tr> <td>17</td>
<td>Окружность запястья, см</td> <td>18</td>
<td>16</td> <td>19</td>
<td>17</td> <td>20</td>
<td>18</td> <td>22</td>
<td>19</td> <td>23</td>
<td>20</td> <td>± 1</td>
<td>22</td> </tr>
<td>23</td> <tr>
<td>± 1</td> <td>Окружность лодыжки, см</td>
</tr> <td>21</td>
<tr> <td>22</td>
<td>Окружность лодыжки, см</td> <td>22</td>
<td>21</td> <td>24</td>
<td>22</td> <td>26</td>
<td>22</td> <td>28</td>
<td>24</td> <td>29</td>
<td>26</td> <td>± 1</td>
<td>28</td> </tr>
<td>29</td> <tr>
<td>± 1</td> <td>Окружность голени, см</td>
</tr> <td>32</td>
<tr> <td>33</td>
<td>Окружность голени, см</td> <td>33</td>
<td>32</td> <td>34</td>
<td>33</td> <td>35</td>
<td>33</td> <td>38</td>
<td>34</td> <td>40</td>
<td>35</td> <td>± 1</td>
<td>38</td> </tr>
<td>40</td> <tr>
<td>± 1</td> <td>Расстояние от промежности до лодыжки (спереди), см</td>
</tr> <td>65</td>
<tr> <td>68</td>
<td>Расстояние от промежности до лодыжки (спереди), см</td> <td>71</td>
<td>65</td> <td>73</td>
<td>68</td> <td>75</td>
<td>71</td> <td>78</td>
<td>73</td> <td>80</td>
<td>75</td> <td>± 1,5</td>
<td>78</td> </tr>
<td>80</td> <tr>
<td>± 1,5</td> <td>Расстояние от шеи до лодыжки (сзади), см</td>
</tr> <td>128</td>
<tr> <td>134</td>
<td>Расстояние от шеи до лодыжки (сзади), см</td> <td>139</td>
<td>128</td> <td>143</td>
<td>134</td> <td>148</td>
<td>139</td> <td>155</td>
<td>143</td> <td>160</td>
<td>148</td> <td>± 3</td>
<td>155</td> </tr>
<td>160</td> <tr>
<td>± 3</td> <td>Окружность бицепса, см</td>
</tr> <td>27</td>
<tr> <td>29</td>
<td>Окружность бицепса, см</td> <td>30</td>
<td>27</td> <td>32</td>
<td>29</td> <td>34</td>
<td>30</td> <td>37</td>
<td>32</td> <td>40</td>
<td>34</td> <td>± 1</td>
<td>37</td> </tr>
<td>40</td> <tr>
<td>± 1</td> <td>Окружность головы, см</td>
</tr> <td>53</td>
<tr> <td>55</td>
<td>Окружность головы, см</td> <td>57</td>
<td>53</td> <td>59</td>
<td>55</td> <td>61</td>
<td>57</td> <td>63</td>
<td>59</td> <td>64</td>
<td>61</td> <td>± 2</td>
<td>63</td> </tr>
<td>64</td> </tbody>
<td>± 2</td> </table>
</tr> <strong>Женские модели Aqua Lung</strong>
</tbody> </br><br/>
</table> <table class="table table-hover table-bordered">
<strong>Женские модели Aqua Lung</strong> <thead>
</br><br/> <tbody>
<table class="table table-hover table-bordered"> <tr>
<thead> <td><strong>Обычный размер одежды</strong></td>
<tbody> <td>38</td>
<tr> <td>40</td>
<td><strong>Обычный размер одежды</strong></td> <td>42</td>
<td>38</td> <td>44</td>
<td>40</td> <td>46</td>
<td>42</td> <td>48</td>
<td>44</td> <td></td>
<td>46</td> </tr>
<td>48</td> <tr>
<td></td> <td><strong>Размеры Aqua Lung (старый код/новый код)</strong></td>
</tr> <td>1 / XS</td>
<tr> <td>2 / S</td>
<td><strong>Размеры Aqua Lung (старый код/новый код)</strong></td> <td>3 / M</td>
<td>1 / XS</td> <td>4 / ML</td>
<td>2 / S</td> <td>5 / L</td>
<td>3 / M</td> <td>6 / XL</td>
<td>4 / ML</td> <td></td>
<td>5 / L</td> </tr>
<td>6 / XL</td> <tr>
<td></td> <td>Размерные параметры</td>
</tr> <td>1</td>
<tr> <td>2</td>
<td>Размерные параметры</td> <td>3</td>
<td>1</td> <td>4</td>
<td>2</td> <td>5</td>
<td>3</td> <td>6</td>
<td>4</td> <td>разброс</td>
<td>5</td> </tr>
<td>6</td> <tr>
<td>разброс</td> <td>Рост, см</td>
</tr> <td>150-160</td>
<tr> <td>160-163</td>
<td>Рост, см</td> <td>163-166</td>
<td>150-160</td> <td>166-170</td>
<td>160-163</td> <td>169-172</td>
<td>163-166</td> <td>175…</td>
<td>166-170</td> <td>± 4</td>
<td>169-172</td> </tr>
<td>175…</td> <tr>
<td>± 4</td> <td>Вес, кг</td>
</tr> <td>47-50</td>
<tr> <td>50-54</td>
<td>Вес, кг</td> <td>54-61</td>
<td>47-50</td> <td>61-65</td>
<td>50-54</td> <td>65-72</td>
<td>54-61</td> <td>73…</td>
<td>61-65</td> <td>± 3</td>
<td>65-72</td> </tr>
<td>73…</td> <tr>
<td>± 3</td> <td>Объем бедер, см</td>
</tr> <td>76</td>
<tr> <td>80</td>
<td>Объем бедер, см</td> <td>82</td>
<td>76</td> <td>87</td>
<td>80</td> <td>91</td>
<td>82</td> <td>95</td>
<td>87</td> <td>± 5</td>
<td>91</td> </tr>
<td>95</td> <tr>
<td>± 5</td> <td>Талия, см</td>
</tr> <td>62</td>
<tr> <td>65</td>
<td>Талия, см</td> <td>68</td>
<td>62</td> <td>73</td>
<td>65</td> <td>77</td>
<td>68</td> <td>81</td>
<td>73</td> <td>± 5</td>
<td>77</td> </tr>
<td>81</td> <tr>
<td>± 5</td> <td>Объем груди, см</td>
</tr> <td>72</td>
<tr> <td>74</td>
<td>Объем груди, см</td> <td>77</td>
<td>72</td> <td>82</td>
<td>74</td> <td>88</td>
<td>77</td> <td>92</td>
<td>82</td> <td>± 5</td>
<td>88</td> </tr>
<td>92</td> <tr>
<td>± 5</td> <td>Расстояние от шеи до запястья (сзади), см</td>
</tr> <td>67</td>
<tr> <td>68</td>
<td>Расстояние от шеи до запястья (сзади), см</td> <td>70</td>
<td>67</td> <td>73</td>
<td>68</td> <td>76</td>
<td>70</td> <td>79</td>
<td>73</td> <td>± 2</td>
<td>76</td> </tr>
<td>79</td> <tr>
<td>± 2</td> <td>Окружность запястья, см</td>
</tr> <td>15</td>
<tr> <td>16</td>
<td>Окружность запястья, см</td> <td>17</td>
<td>15</td> <td>18</td>
<td>16</td> <td>19</td>
<td>17</td> <td>20</td>
<td>18</td> <td>± 1</td>
<td>19</td> </tr>
<td>20</td> <tr>
<td>± 1</td> <td>Окружность лодыжки, см</td>
</tr> <td>20</td>
<tr> <td>21</td>
<td>Окружность лодыжки, см</td> <td>22</td>
<td>20</td> <td>23</td>
<td>21</td> <td>24</td>
<td>22</td> <td>25</td>
<td>23</td> <td>± 1</td>
<td>24</td> </tr>
<td>25</td> <tr>
<td>± 1</td> <td>Окружность голени, см</td>
</tr> <td>30</td>
<tr> <td>31</td>
<td>Окружность голени, см</td> <td>32</td>
<td>30</td> <td>33</td>
<td>31</td> <td>35</td>
<td>32</td> <td>36</td>
<td>33</td> <td>± 1</td>
<td>35</td> </tr>
<td>36</td> <tr>
<td>± 1</td> <td>Расстояние от промежности до лодыжки (спереди), см</td>
</tr> <td>67</td>
<tr> <td>69</td>
<td>Расстояние от промежности до лодыжки (спереди), см</td> <td>71</td>
<td>67</td> <td>73</td>
<td>69</td> <td>77</td>
<td>71</td> <td>80</td>
<td>73</td> <td>± 1,5</td>
<td>77</td> </tr>
<td>80</td> <tr>
<td>± 1,5</td> <td>Расстояние от шеи до лодыжки (сзади), см</td>
</tr> <td>124</td>
<tr> <td>129</td>
<td>Расстояние от шеи до лодыжки (сзади), см</td> <td>132</td>
<td>124</td> <td>139</td>
<td>129</td> <td>145</td>
<td>132</td> <td>150</td>
<td>139</td> <td>± 3</td>
<td>145</td> </tr>
<td>150</td> <tr>
<td>± 3</td> <td>Окружность бицепса, см</td>
</tr> <td>25</td>
<tr> <td>26</td>
<td>Окружность бицепса, см</td> <td>28</td>
<td>25</td> <td>29</td>
<td>26</td> <td>30</td>
<td>28</td> <td>31</td>
<td>29</td> <td>± 1</td>
<td>30</td> </tr>
<td>31</td> <tr>
<td>± 1</td> <td>Окружность головы, см</td>
</tr> <td>50</td>
<tr> <td>53</td>
<td>Окружность головы, см</td> <td>56</td>
<td>50</td> <td>59</td>
<td>53</td> <td>62</td>
<td>56</td> <td>63</td>
<td>59</td> <td>± 2</td>
<td>62</td> </tr>
<td>63</td> </tbody>
<td>± 2</td> </table>
</tr> <strong>Детские модели Aqua Lung</strong>
</tbody> </br><br/>
</table> <table class="table table-hover table-bordered">
<strong>Детские модели Aqua Lung</strong> <thead>
</br><br/> <tbody>
<tr>
<table class="table table-hover table-bordered"> <td>Размерные параметры</td>
<thead> <td>8 лет</td>
<tbody> <td>10 лет</td>
<tr> <td>12 лет</td>
<td>Размерные параметры</td> <td>14 лет</td>
<td>8 лет</td> <td>16 лет</td>
<td>10 лет</td> </tr>
<td>12 лет</td> <tr>
<td>14 лет</td> <td>Рост, см</td>
<td>16 лет</td> <td>135-139</td>
</tr> <td>139-143</td>
<tr> <td>144-148</td>
<td>Рост, см</td> <td>148-152</td>
<td>135-139</td> <td>152-156</td>
<td>139-143</td> </tr>
<td>144-148</td> <tr>
<td>148-152</td> <td>Вес, кг</td>
<td>152-156</td> <td>31-33</td>
</tr> <td>34-36</td>
<tr> <td>38-40</td>
<td>Вес, кг</td> <td>41-43</td>
<td>31-33</td> <td>45-57</td>
<td>34-36</td> </tr>
<td>38-40</td> <tr>
<td>41-43</td> <td>Объем груди, см</td>
<td>45-57</td> <td>67-72</td>
</tr> <td>70-75</td>
<tr> <td>73-78</td>
<td>Объем груди, см</td> <td>76-81</td>
<td>67-72</td> <td>79-84</td>
<td>70-75</td> </tr>
<td>73-78</td> <tr>
<td>76-81</td> <td>Талия, см</td>
<td>79-84</td> <td>61-66</td>
</tr> <td>65-70</td>
<tr> <td>67-73</td>
<td>Талия, см</td> <td>71-76</td>
<td>61-66</td> <td>79-84</td>
<td>65-70</td> </tr>
<td>67-73</td> <tr>
<td>71-76</td> <td>Предплечье, см</td>
<td>79-84</td> <td>23-24</td>
</tr> <td>24-25</td>
<tr> <td>25-26</td>
<td>Предплечье, см</td> <td>26-27</td>
<td>23-24</td> <td>27-28</td>
<td>24-25</td> </tr>
<td>25-26</td> <tr>
<td>26-27</td> <td>Запястье, см</td>
<td>27-28</td> <td>15-16</td>
</tr> <td>15-16</td>
<tr> <td>16-17</td>
<td>Запястье, см</td> <td>16-17</td>
<td>15-16</td> <td>17-18</td>
<td>15-16</td> </tr>
<td>16-17</td> <tr>
<td>16-17</td> <td>Пах-лодыжка, см</td>
<td>17-18</td> <td>51-55</td>
</tr> <td>53-57</td>
<tr> <td>55-59</td>
<td>Пах-лодыжка, см</td> <td>57-61</td>
<td>51-55</td> <td>59-63</td>
<td>53-57</td> </tr>
<td>55-59</td> <tr>
<td>57-61</td> <td>Икры, см</td>
<td>59-63</td> <td>29-31</td>
</tr> <td>30-32</td>
<tr> <td>31-33</td>
<td>Икры, см</td> <td>32-34</td>
<td>29-31</td> <td>33-35</td>
<td>30-32</td> </tr>
<td>31-33</td> </tbody>
<td>32-34</td> </table>
<td>33-35</td> </div>
</tr>
</tbody>
</table>
</div>
{% endblock %} {% endblock %}

File diff suppressed because it is too large Load Diff

@ -1,328 +1,324 @@
{% extends 'base.jinja' %} {% extends 'base.jinja' %}
{% block meta_description %} {% block meta_description %}
Размерная сетка гидрокостюмов Beuchat Размерная сетка гидрокостюмов Beuchat
{% endblock %} {% endblock %}
{% block meta_keywords %} {% block meta_keywords %}
Гидрокостюм, Размер, Бренд, Размерная сетка, Beuchat, Батискаф-Казахстан Гидрокостюм, Размер, Бренд, Размерная сетка, Beuchat, Батискаф-Казахстан
{% endblock %} {% endblock %}
{% block title %} {% block title %}
Размерная сетка для гидрокостюмов Beuchat Размерная сетка для гидрокостюмов Beuchat
{% endblock %} {% endblock %}
{% block content %} {% block content %}
<div class=" breadcrumbs"> <div class=" breadcrumbs">
<ol class="breadcrumb breadcrumb-arrow"> <ol class="breadcrumb breadcrumb-arrow">
<li><a href="/">Главная</a></li> <li><a href="/">Главная</a></li>
<li><a href="/size/">Размерные сетки</a></li> <li><a href="/size/">Размерные сетки</a></li>
<li class="active"><span>Beuchat</span></li> <li class="active"><span>Beuchat</span></li>
</ol> </ol>
</div> </div>
<h2>Размерная сетка для гидрокостюмов <br/>Beuchat</h2>
<h2>Размерная сетка для гидрокостюмов <br/>Beuchat</h2> <div class="well well-large">
<div class="well well-large"> <strong>Размеры мужских гидрокостюмов и компенсаторов</strong>
</br><br/>
<table class="table table-hover table-bordered">
<strong>Размеры мужских гидрокостюмов и компенсаторов</strong> <thead>
</br><br/> <tr>
<table class="table table-hover table-bordered"> <th>
<thead> Размер
<tr> </th>
<th> <th>
Размер Рост (см)
</th> </th>
<th> <th>
Рост (см) Окружность груди (см)
</th> </th>
<th> <th>
Окружность груди (см) Окружность бедер(см)
</th> </th>
<th> <th>
Окружность бедер(см) Окружность талии(см)
</th> </th>
<th> </tr>
Окружность талии(см) </thead>
</th> <tbody>
</tr> <tr>
</thead> <td>XS</td>
<tbody> <td>160-171</td>
<tr> <td>84</td>
<td>XS</td> <td>84</td>
<td>160-171</td> <td>72</td>
<td>84</td> </tr>
<td>84</td> <tr>
<td>72</td> <td>S</td>
</tr> <td>171-176</td>
<tr> <td>92</td>
<td>S</td> <td>90</td>
<td>171-176</td> <td>78</td>
<td>92</td> </tr>
<td>90</td> <tr>
<td>78</td> <td>M</td>
</tr> <td>176-181</td>
<tr> <td>100</td>
<td>M</td> <td>96</td>
<td>176-181</td> <td>84</td>
<td>100</td> </tr>
<td>96</td> <tr>
<td>84</td> <td>L</td>
</tr> <td>181-186</td>
<tr> <td>108</td>
<td>L</td> <td>102</td>
<td>181-186</td> <td>90</td>
<td>108</td> </tr>
<td>102</td> <tr>
<td>90</td> <td>XL</td>
</tr> <td>186-191</td>
<tr> <td>116</td>
<td>XL</td> <td>108</td>
<td>186-191</td> <td>96</td>
<td>116</td> </tr>
<td>108</td> <tr>
<td>96</td> <td>XXL</td>
</tr> <td>191-196</td>
<tr> <td>124</td>
<td>XXL</td> <td>114</td>
<td>191-196</td> <td>102</td>
<td>124</td> </tr>
<td>114</td> </tbody>
<td>102</td> </table>
</tr> <strong>Размеры женских гидрокостюмов и компенсаторов.</strong> <br/><br/>
</tbody> <table class="table table-hover table-bordered">
</table> <thead>
<strong>Размеры женских гидрокостюмов и компенсаторов.</strong> <br/><br/> <tr>
<table class="table table-hover table-bordered"> <th>
<thead> Размер
<tr> </th>
<th> <th>
Размер Рост (см)
</th> </th>
<th> <th>
Рост (см) Окружность груди (см)
</th> </th>
<th> <th>
Окружность груди (см) Окружность бедер(см)
</th> </th>
<th> <th>
Окружность бедер(см) Окружность талии(см)
</th> </th>
<th> </tr>
Окружность талии(см) </thead>
</th> <tbody>
</tr> <tr>
</thead> <td>XS</td>
<tbody> <td>158-163</td>
<tr> <td>83</td>
<td>XS</td> <td>88</td>
<td>158-163</td> <td>62</td>
<td>83</td> </tr>
<td>88</td> <tr>
<td>62</td> <td>S</td>
</tr> <td>163-168</td>
<tr> <td>88</td>
<td>S</td> <td>92</td>
<td>163-168</td> <td>66</td>
<td>88</td> </tr>
<td>92</td> <tr>
<td>66</td> <td>M</td>
</tr> <td>168-173</td>
<tr> <td>93</td>
<td>M</td> <td>96</td>
<td>168-173</td> <td>70</td>
<td>93</td> </tr>
<td>96</td> <tr>
<td>70</td> <td>L</td>
</tr> <td>173-178</td>
<tr> <td>98</td>
<td>L</td> <td>100</td>
<td>173-178</td> <td>74</td>
<td>98</td> </tr>
<td>100</td> <tr>
<td>74</td> <td>XL</td>
</tr> <td>178-183</td>
<tr> <td>103</td>
<td>XL</td> <td>104</td>
<td>178-183</td> <td>78</td>
<td>103</td> </tr>
<td>104</td> <tr>
<td>78</td> <td>XXL</td>
</tr> <td>183-185</td>
<tr> <td>108</td>
<td>XXL</td> <td>108</td>
<td>183-185</td> <td>82</td>
<td>108</td> </tr>
<td>108</td> </tbody>
<td>82</td> </table>
</tr> <strong>Размеры детских гидрокостюмов и компенсаторов.</strong> <br/><br/>
</tbody> <table class="table table-hover table-bordered">
</table> <thead>
<strong>Размеры детских гидрокостюмов и компенсаторов.</strong> <br/><br/> <tr>
<table class="table table-hover table-bordered"> <th>
<thead> Размер
<tr> </th>
<th> <th>
Размер Рост (см)
</th> </th>
<th> <th>
Рост (см) Окружность груди (см)
</th> </th>
<th> <th>
Окружность груди (см) Окружность бедер(см)
</th> </th>
<th> <th>
Окружность бедер(см) Окружность талии(см)
</th> </th>
<th> </tr>
Окружность талии(см) </thead>
</th> <tbody>
</tr> <tr>
</thead> <td>8-10</td>
<tbody> <td>144-148</td>
<tr> <td>72-76</td>
<td>8-10</td> <td>57-59</td>
<td>144-148</td> <td>68-72</td>
<td>72-76</td> </tr>
<td>57-59</td> <tr>
<td>68-72</td> <td>10-12</td>
</tr> <td>148-152</td>
<tr> <td>76-80</td>
<td>10-12</td> <td>59-61</td>
<td>148-152</td> <td>72-76</td>
<td>76-80</td> </tr>
<td>59-61</td> <tr>
<td>72-76</td> <td>12-14</td>
</tr> <td>152-156</td>
<tr> <td>80-84</td>
<td>12-14</td> <td>61-63</td>
<td>152-156</td> <td>76-80</td>
<td>80-84</td> </tr>
<td>61-63</td> <tr>
<td>76-80</td> <td>14-16</td>
</tr> <td>156-160</td>
<tr> <td>88-92</td>
<td>14-16</td> <td>63-65</td>
<td>156-160</td> <td>80-84</td>
<td>88-92</td> </tr>
<td>63-65</td> </tbody>
<td>80-84</td> </table>
</tr> <strong>Размеры шлемов.</strong> <br/><br/>
</tbody> <table class="table table-hover table-bordered">
</table> <thead>
<strong>Размеры шлемов.</strong> <br/><br/> <tr>
<table class="table table-hover table-bordered"> <th>
<thead> Размер
<tr> </th>
<th> <th>
Размер Окружность головы(см)
</th> </th>
<th> </tr>
Окружность головы(см) </thead>
</th> <tbody>
</tr> <tr>
</thead> <td>S</td>
<tbody> <td>55</td>
<tr> </tr>
<td>S</td> <tr>
<td>55</td> <td>M</td>
</tr> <td>57</td>
<tr> </tr>
<td>M</td> <tr>
<td>57</td> <td>L</td>
</tr> <td>59</td>
<tr> </tr>
<td>L</td> <tr>
<td>59</td> <td>XL</td>
</tr> <td>61</td>
<tr> </tr>
<td>XL</td> <tr>
<td>61</td> <td>XXL</td>
</tr> <td>63</td>
<tr> </tr>
<td>XXL</td> <tr>
<td>63</td> <td>XXXL</td>
</tr> <td>65</td>
<tr> </tr>
<td>XXXL</td> </tbody>
<td>65</td> </table>
</tr> <strong>Размеры перчаток.</strong> <br/><br/>
</tbody> <table class="table table-hover table-bordered">
</table> <thead>
<strong>Размеры перчаток.</strong> <br/><br/> <tr>
<table class="table table-hover table-bordered"> <th>
<thead> Размер
<tr> </th>
<th> <th>
Размер Номер
</th> </th>
<th> </tr>
Номер </thead>
</th> <tbody>
</tr> <tr>
</thead> <td>S</td>
<tbody> <td>6</td>
<tr> </tr>
<td>S</td> <tr>
<td>6</td> <td>M</td>
</tr> <td>7</td>
<tr> </tr>
<td>M</td> <tr>
<td>7</td> <td>L</td>
</tr> <td>8</td>
<tr> </tr>
<td>L</td> <tr>
<td>8</td> <td>XL</td>
</tr> <td>9</td>
<tr> </tr>
<td>XL</td> <tr>
<td>9</td> <td>XXL</td>
</tr> <td>10</td>
<tr> </tr>
<td>XXL</td> <tr>
<td>10</td> <td>XXXL</td>
</tr> <td>11</td>
<tr> </tr>
<td>XXXL</td> </tbody>
<td>11</td> </table>
</tr> <strong>Размеры бот.</strong> <br/><br/>
</tbody> <table class="table table-hover table-bordered">
</table> <thead>
<strong>Размеры бот.</strong> <br/><br/> <tr>
<table class="table table-hover table-bordered"> <th>
<thead> Размер
<tr> </th>
<th> <th>
Размер Номер
</th> </th>
<th> </tr>
Номер </thead>
</th> <tbody>
</tr> <tr>
</thead> <td>XS</td>
<tbody> <td>36-37</td>
<tr> </tr>
<td>XS</td> <tr>
<td>36-37</td> <td>S</td>
</tr> <td>38-39</td>
<tr> </tr>
<td>S</td> <tr>
<td>38-39</td> <td>M</td>
</tr> <td>40-41</td>
<tr> </tr>
<td>M</td> <tr>
<td>40-41</td> <td>L</td>
</tr> <td>42-43</td>
<tr> </tr>
<td>L</td> <tr>
<td>42-43</td> <td>XL</td>
</tr> <td>44-45</td>
<tr> </tr>
<td>XL</td> <tr>
<td>44-45</td> <td>XXL</td>
</tr> <td>46-47</td>
<tr> </tr>
<td>XXL</td> </tbody>
<td>46-47</td> </table>
</tr> </div>
</tbody>
</table>
</div>
{% endblock %} {% endblock %}

@ -1,302 +1,296 @@
{% extends 'base.jinja' %} {% extends 'base.jinja' %}
{% block meta_description %} {% block meta_description %}
Размерная сетка гидрокостюмов Cressi Размерная сетка гидрокостюмов Cressi
{% endblock %} {% endblock %}
{% block meta_keywords %} {% block meta_keywords %}
Гидрокостюм, Размер, Бренд, Размерная сетка, Cressi, Батискаф-Казахстан Гидрокостюм, Размер, Бренд, Размерная сетка, Cressi, Батискаф-Казахстан
{% endblock %} {% endblock %}
{% block title %} {% block title %}
Размерная сетка для гидрокостюмов Cressi Размерная сетка для гидрокостюмов Cressi
{% endblock %} {% endblock %}
{% block content %} {% block content %}
<div class=" breadcrumbs"> <div class=" breadcrumbs">
<ol class="breadcrumb breadcrumb-arrow"> <ol class="breadcrumb breadcrumb-arrow">
<li><a href="/">Главная</a></li> <li><a href="/">Главная</a></li>
<li><a href="/size/">Размерные сетки</a></li> <li><a href="/size/">Размерные сетки</a></li>
<li class="active"><span>Cressi</span></li> <li class="active"><span>Cressi</span></li>
</ol> </ol>
</div> </div>
<h2>Размерная сетка для гидрокостюмов <br/>Cressi</h2>
<h2>Размерная сетка для гидрокостюмов <br/>Cressi</h2> <div class="well well-large">
<div class="well well-large"> <strong>Размерная сетка Cressi мужских мокрых гидрокостюмов</strong>
</br><br/>
<table class="table table-hover table-bordered">
<strong>Размерная сетка Cressi мужских мокрых гидрокостюмов</strong> <tr>
</br><br/> <td>Размер</td>
<table class="table table-hover table-bordered"> <td>Вес, кг</td>
<tr> <td>Рост, см</td>
<td>Размер</td> <td>Грудь, см</td>
<td>Вес, кг</td> <td>Талия, см</td>
<td>Рост, см</td> <td>Бедра, см</td>
<td>Грудь, см</td> </tr>
<td>Талия, см</td> <tr>
<td>Бедра, см</td> <td>S/2</td>
</tr> <td>58/65</td>
<tr> <td>168/175</td>
<td>S/2</td> <td>87/92</td>
<td>58/65</td> <td>71/74</td>
<td>168/175</td> <td>80/85</td>
<td>87/92</td> </tr>
<td>71/74</td> <tr>
<td>80/85</td> <td>M/3</td>
</tr> <td>63/78</td>
<tr> <td>170/178</td>
<td>M/3</td> <td>92/98</td>
<td>63/78</td> <td>74/78</td>
<td>170/178</td> <td>85/90</td>
<td>92/98</td> </tr>
<td>74/78</td> <tr>
<td>85/90</td> <td>L/4</td>
</tr> <td>75/85</td>
<tr> <td>175/183</td>
<td>L/4</td> <td>98/103</td>
<td>75/85</td> <td>78/83</td>
<td>175/183</td> <td>88/93</td>
<td>98/103</td> </tr>
<td>78/83</td> <tr>
<td>88/93</td> <td>XL/5</td>
</tr> <td>83/95</td>
<tr> <td>177/186</td>
<td>XL/5</td> <td>103/107</td>
<td>83/95</td> <td>83/87</td>
<td>177/186</td> <td>95/98</td>
<td>103/107</td> </tr>
<td>83/87</td> <tr>
<td>95/98</td> <td>XXL/6</td>
</tr> <td>88/100</td>
<tr> <td>179/192</td>
<td>XXL/6</td> <td>107/110</td>
<td>88/100</td> <td>87/93</td>
<td>179/192</td> <td>98/103</td>
<td>107/110</td> </tr>
<td>87/93</td> <tr>
<td>98/103</td> <td>XXXL/7</td>
</tr> <td>95/110</td>
<tr> <td>181/196</td>
<td>XXXL/7</td> <td>110/114</td>
<td>95/110</td> <td>93/97</td>
<td>181/196</td> <td>107/107</td>
<td>110/114</td> </tr>
<td>93/97</td> </tbody>
<td>107/107</td> </table>
</tr> <strong>Размерная сетка Cressi женских мокрых гидрокостюмов</strong>
</tbody> </br><br/>
</table> <table class="table table-hover table-bordered">
<strong>Размерная сетка Cressi женских мокрых гидрокостюмов</strong> <tr>
</br><br/> <td>Размер</td>
<table class="table table-hover table-bordered"> <td>Вес, кг</td>
<tr> <td>Рост, см</td>
<td>Размер</td> <td>Грудь, см</td>
<td>Вес, кг</td> <td>Талия, см</td>
<td>Рост, см</td> <td>Бедра, см</td>
<td>Грудь, см</td> </tr>
<td>Талия, см</td> <tr>
<td>Бедра, см</td> <td>XS/1</td>
</tr> <td>48/54</td>
<tr> <td>162/169</td>
<td>XS/1</td> <td>83/88</td>
<td>48/54</td> <td>63/67</td>
<td>162/169</td> <td>80/85</td>
<td>83/88</td> </tr>
<td>63/67</td> <tr>
<td>80/85</td> <td>S/2</td>
</tr> <td>53/60</td>
<tr> <td>165/172</td>
<td>S/2</td> <td>88/94</td>
<td>53/60</td> <td>68/73</td>
<td>165/172</td> <td>85/90</td>
<td>88/94</td> </tr>
<td>68/73</td> <tr>
<td>85/90</td> <td>M/3</td>
</tr> <td>59/68</td>
<tr> <td>168/175</td>
<td>M/3</td> <td>92/97</td>
<td>59/68</td> <td>72/77</td>
<td>168/175</td> <td>88/93</td>
<td>92/97</td> </tr>
<td>72/77</td> <tr>
<td>88/93</td> <td>L/4</td>
</tr> <td>67/75</td>
<tr> <td>171/178</td>
<td>L/4</td> <td>95/101</td>
<td>67/75</td> <td>76/82</td>
<td>171/178</td> <td>92/98</td>
<td>95/101</td> </tr>
<td>76/82</td> <tr>
<td>92/98</td> <td>XL/5</td>
</tr> <td>75/85</td>
<tr> <td>174/182</td>
<td>XL/5</td> <td>98/105</td>
<td>75/85</td> <td>83/87</td>
<td>174/182</td> <td>95/10</td>
<td>98/105</td> </tr>
<td>83/87</td> </tbody>
<td>95/10</td> </table>
</tr> <strong>Размерная сетка Cressi подростковых мокрых гидрокостюмов</strong>
</tbody> </br><br/>
</table> <table class="table table-hover table-bordered">
<strong>Размерная сетка Cressi подростковых мокрых гидрокостюмов</strong> <tr>
</br><br/> <td>Размер</td>
<table class="table table-hover table-bordered"> <td>Вес,кг</span></td>
<tr> <td>Рост, см</span></td>
<td>Размер</td> <td>Грудь, см</td>
<td>Вес,кг</span></td> <td>Талия, см</td>
<td>Рост, см</span></td> <td>Бедра, см</span></td>
<td>Грудь, см</td> </tr>
<td>Талия, см</td> <tr>
<td>Бедра, см</span></td> <td>XS/1</td>
</tr> <td>20/26</td>
<tr> <td>115/125</td>
<td>XS/1</td> <td>58/64</td>
<td>20/26</td> <td>50/57</td>
<td>115/125</td> <td>57/65</td>
<td>58/64</td> </tr>
<td>50/57</td> <tr>
<td>57/65</td> <td>S/2</td>
</tr> <td>25/30</td>
<tr> <td>123/132</td>
<td>S/2</td> <td>62/69</td>
<td>25/30</td> <td>56/65</td>
<td>123/132</td> <td>64/73</td>
<td>62/69</td> </tr>
<td>56/65</td> <tr>
<td>64/73</td> <td><span>M/3</span></td>
</tr> <td>29/40</td>
<tr> <td>130/140</td>
<td><span>M/3</span></td> <td>68/77</td>
<td>29/40</td> <td>64/70</td>
<td>130/140</td> <td>70/80</td>
<td>68/77</td> </tr>
<td>64/70</td> <tr>
<td>70/80</td> <td><span>L/4</span></td>
</tr> <td>39/50</td>
<tr> <td>138/160</td>
<td><span>L/4</span></td> <td>72/83</td>
<td>39/50</td> <td>68/75</td>
<td>138/160</td> <td>78/90</td>
<td>72/83</td> </tr>
<td>68/75</td> </tbody>
<td>78/90</td> </table>
</tr> <strong>Размерная сетка Cressi детских мокрых гидрокостюмов</strong>
</tbody> </br><br/>
</table> <table class="table table-hover table-bordered">
<strong>Размерная сетка Cressi детских мокрых гидрокостюмов</strong> <tr>
</br><br/> <td>Размер</td>
<table class="table table-hover table-bordered"> <td>Возраст, лет</span></td>
<tr> <td>Рост, см</span></td>
<td>Размер</td> <td>Вес, кг</span></td>
<td>Возраст, лет</span></td> </tr>
<td>Рост, см</span></td> <tr>
<td>Вес, кг</span></td> <td>S/1</span></td>
</tr> <td>2/3</td>
<tr> <td>92/98</span></td>
<td>S/1</span></td> <td>10/15</span></td>
<td>2/3</td> </tr>
<td>92/98</span></td> <tr>
<td>10/15</span></td> <td>M/2</span></td>
</tr> <td>4/5</td>
<tr> <td>98/105</span></td>
<td>M/2</span></td> <td>15/20</span></td>
<td>4/5</td> </tr>
<td>98/105</span></td> <tr>
<td>15/20</span></td> <td>L/3</span></td>
</tr> <td>5/6</td>
<tr> <td>105/115</span></td>
<td>L/3</span></td> <td>20/25</span></td>
<td>5/6</td> </tr>
<td>105/115</span></td> <tr>
<td>20/25</span></td> <td>XL/4</span></td>
</tr> <td>7/8</td>
<tr> <td>115/125</span></td>
<td>XL/4</span></td> <td>25/30</span></td>
<td>7/8</td> </tr>
<td>115/125</span></td> <tr>
<td>25/30</span></td> <td>XXL/5</span></td>
</tr> <td>9/10</td>
<tr> <td>125/135</span></td>
<td>XXL/5</span></td> <td>30/35</span></td>
<td>9/10</td> </tr>
<td>125/135</span></td> </tbody>
<td>30/35</span></td> </table>
</tr> <strong>Размерная сетка Cressi компенсаторов плавучести</strong>
</tbody> </br><br/>
</table> <table class="table table-hover table-bordered">
<tr>
<strong>Размерная сетка Cressi компенсаторов плавучести</strong> <td><br></td>
</br><br/> <td>Грудь</td>
<table class="table table-hover table-bordered"> <td>Талия</td>
<tr> <td>Вес</td>
<td><br></td> </tr>
<td>Грудь</td> <tr>
<td>Талия</td> <td>Размер<br></td>
<td>Вес</td> <td>См</td>
</tr> <td>Дюймы</td>
<tr> <td>См</td>
<td>Размер<br></td> <td>Дюймы</td>
<td>См</td> <td>Кг</td>
<td>Дюймы</td> <td>Фунты</td>
<td>См</td> </tr>
<td>Дюймы</td> <tr>
<td>Кг</td> <td>XXS/1</td>
<td>Фунты</td> <td>70/85</td>
</tr> <td>28/33</td>
<tr> <td>70/80</td>
<td>XXS/1</td> <td>28/32</td>
<td>70/85</td> <td>48/60</td>
<td>28/33</td> <td>106/132</td>
<td>70/80</td> </tr>
<td>28/32</td> <tr>
<td>48/60</td> <td>XS/2</td>
<td>106/132</td> <td>80/90</td>
</tr> <td>32/35</td>
<tr> <td>75/90</td>
<td>XS/2</td> <td>30/35</td>
<td>80/90</td> <td>55/65</td>
<td>32/35</td> <td>121/143</td>
<td>75/90</td> </tr>
<td>30/35</td> <tr>
<td>55/65</td> <td>S/3</td>
<td>121/143</td> <td>90/100</td>
</tr> <td>35/39</td>
<tr> <td>85/95</td>
<td>S/3</td> <td>32/37</td>
<td>90/100</td> <td>63/78</td>
<td>35/39</td> <td>139/172</td>
<td>85/95</td> </tr>
<td>32/37</td> <tr>
<td>63/78</td> <td>M/4</td>
<td>139/172</td> <td>100/110</td>
</tr> <td>39/43</td>
<tr> <td>95/105</td>
<td>M/4</td> <td>37/41</td>
<td>100/110</td> <td>75/85</td>
<td>39/43</td> <td>165/187</td>
<td>95/105</td> </tr>
<td>37/41</td> <tr>
<td>75/85</td> <td>L/5</td>
<td>165/187</td> <td>105/115</td>
</tr> <td>41/45</td>
<tr> <td>100/110</td>
<td>L/5</td> <td>39/43</td>
<td>105/115</td> <td>80/100</td>
<td>41/45</td> <td>176/220</td>
<td>100/110</td> </tr>
<td>39/43</td> <tr>
<td>80/100</td> <td>XL/6</td>
<td>176/220</td> <td>115/125</td>
</tr> <td>45/49</td>
<tr> <td>110/120</td>
<td>XL/6</td> <td>43/47</td>
<td>115/125</td> <td>110/120</td>
<td>45/49</td> <td>243/265</td>
<td>110/120</td> </tr>
<td>43/47</td> </tbody>
<td>110/120</td> </table>
<td>243/265</td> </div>
</tr>
</tbody>
</table>
</div>
{% endblock %} {% endblock %}

@ -1,35 +1,33 @@
{% extends 'base.jinja' %} {% extends 'base.jinja' %}
{% block meta_description %} {% block meta_description %}
Размерные сетки гидрокостюмов Beuchat, Scorpena, Sargan, Omer, Sporasub Размерные сетки гидрокостюмов Beuchat, Scorpena, Sargan, Omer, Sporasub
{% endblock %} {% endblock %}
{% block meta_keywords %} {% block meta_keywords %}
Гидрокостюм, Размер, Бренд, Размерная сетка, Beuchat, Scorpena, Sargan, Omer, Sporasub, Батискаф-Казахстан Гидрокостюм, Размер, Бренд, Размерная сетка, Beuchat, Scorpena, Sargan, Omer, Sporasub, Батискаф-Казахстан
{% endblock %} {% endblock %}
{% block title %} {% block title %}
Размерные сетки для гидрокостюмов Размерные сетки для гидрокостюмов
{% endblock %} {% endblock %}
{% block content %} {% block content %}
<div class=" breadcrumbs"> <div class=" breadcrumbs">
<ol class="breadcrumb breadcrumb-arrow"> <ol class="breadcrumb breadcrumb-arrow">
<li><a href="/">Главная</a></li> <li><a href="/">Главная</a></li>
<li class="active"><span>Размерные сетки</span></li> <li class="active"><span>Размерные сетки</span></li>
</ol> </ol>
</div> </div>
<h2>Размерные сетки для гидрокостюмов</h2>
<h2>Размерные сетки для гидрокостюмов</h2> <div class="well well-large">
<div class="well well-large"> <h4 class="text-left">Выберите бренд</h4>
<h4 class="text-left">Выберите бренд</h4> <br/>
<br/> <p>
<p> <a href="/size/beuchat/" class="btn">Beuchat</a>
<a href="/size/beuchat/" class="btn">Beuchat</a> <a href="/size/scorpena/" class="btn">Scorpena</a>
<a href="/size/scorpena/" class="btn">Scorpena</a> <a href="/size/sargan/" class="btn">Sargan</a>
<a href="/size/sargan/" class="btn">Sargan</a> <a href="/size/omer-sporasub/" class="btn">Omer и Sporasub</a>
<a href="/size/omer-sporasub/" class="btn">Omer и Sporasub</a> <a href="/size/aqua-discovery/" class="btn">Aqua Discovery</a>
<a href="/size/aqua-discovery/" class="btn">Aqua Discovery</a> <a href="/size/aqualung/" class="btn">Aqua Lung</a>
<a href="/size/aqualung/" class="btn">Aqua Lung</a> <a href="/size/aquatics/" class="btn">Aquatics</a>
<a href="/size/aquatics/" class="btn">Aquatics</a> <a href="/size/cressi/" class="btn">Cressi</a>
<a href="/size/cressi/" class="btn">Cressi</a> </p>
</p> </div>
</div>
{% endblock %} {% endblock %}

@ -1,203 +1,200 @@
{% extends 'base.jinja' %} {% extends 'base.jinja' %}
{% block meta_description %} {% block meta_description %}
Размерная сетка гидрокостюмов Omer и Sporasub Размерная сетка гидрокостюмов Omer и Sporasub
{% endblock %} {% endblock %}
{% block meta_keywords %} {% block meta_keywords %}
Гидрокостюм, Размер, Бренд, Размерная сетка, Omer, Sporasub, Батискаф-Казахстан Гидрокостюм, Размер, Бренд, Размерная сетка, Omer, Sporasub, Батискаф-Казахстан
{% endblock %} {% endblock %}
{% block title %} {% block title %}
Размерная сетка для гидрокостюмов Omer и Sporasub Размерная сетка для гидрокостюмов Omer и Sporasub
{% endblock %} {% endblock %}
{% block content %} {% block content %}
<div class=" breadcrumbs"> <div class=" breadcrumbs">
<ol class="breadcrumb breadcrumb-arrow"> <ol class="breadcrumb breadcrumb-arrow">
<li><a href="/">Главная</a></li> <li><a href="/">Главная</a></li>
<li><a href="/size/">Размерные сетки</a></li> <li><a href="/size/">Размерные сетки</a></li>
<li class="active"><span>Omer и Sporasub</span></li> <li class="active"><span>Omer и Sporasub</span></li>
</ol> </ol>
</div> </div>
<h2>Размерная сетка для гидрокостюмов <br/>Omer и Sporasub</h2>
<h2>Размерная сетка для гидрокостюмов <br/>Omer и Sporasub</h2> <div class="well well-large">
<div class="well well-large"> <strong>Размерная сетка охотничьих гидрокостюмов.</strong>
<strong>Размерная сетка охотничьих гидрокостюмов.</strong> </br><br>
</br><br> <table class="table table-hover table-bordered">
<table class="table table-hover table-bordered"> <thead>
<thead> <tr>
<tr> <th>
<th> Размер
Размер </th>
</th> <th>
<th> Рост (см)
Рост (см) </th>
</th> <th>
<th> Вес (кг)
Вес (кг) </th>
</th> <th>
<th> Окружность груди (см)
Окружность груди (см) </th>
</th> <th>
<th> Окружность талии(см)
Окружность талии(см) </th>
</th> <th>
<th> Окружность бедер(см)
Окружность бедер(см) </th>
</th> </tr>
</tr> </thead>
</thead> <tbody>
<tbody> <tr>
<tr> <td>2/S</td>
<td>2/S</td> <td>167-172</td>
<td>167-172</td> <td>63-70</td>
<td>63-70</td> <td>91-97</td>
<td>91-97</td> <td>72-80</td>
<td>72-80</td> <td>81-88</td>
<td>81-88</td> </tr>
</tr> <tr>
<tr> <td>3/M</td>
<td>3/M</td> <td>171-177</td>
<td>171-177</td> <td>68-76</td>
<td>68-76</td> <td>95-101</td>
<td>95-101</td> <td>77-84</td>
<td>77-84</td> <td>86-92</td>
<td>86-92</td> </tr>
</tr> <tr>
<tr> <td>4/L</td>
<td>4/L</td> <td>176-182</td>
<td>176-182</td> <td>74-84</td>
<td>74-84</td> <td>99-105</td>
<td>99-105</td> <td>81-88</td>
<td>81-88</td> <td>90-97</td>
<td>90-97</td> </tr>
</tr> <tr>
<tr> <td>5/XL</td>
<td>5/XL</td> <td>181-187</td>
<td>181-187</td> <td>82-92</td>
<td>82-92</td> <td>103-110</td>
<td>103-110</td> <td>85-93</td>
<td>85-93</td> <td>95-102</td>
<td>95-102</td> </tr>
</tr> <tr>
<tr> <td>6/XXL</td>
<td>6/XXL</td> <td>186-192</td>
<td>186-192</td> <td>90-100</td>
<td>90-100</td> <td>108-115</td>
<td>108-115</td> <td>90-98</td>
<td>90-98</td> <td>99-108</td>
<td>99-108</td> </tr>
</tr> <tr>
<tr> <td>7/XXXL</td>
<td>7/XXXL</td> <td>191-192</td>
<td>191-192</td> <td>98-114</td>
<td>98-114</td> <td>113-122</td>
<td>113-122</td> <td>95-105</td>
<td>95-105</td> <td>105-115</td>
<td>105-115</td> </tr>
</tr> </tbody>
</tbody> </table>
</table> <strong>Рекомендованные размеры резиновых тяжей и гарпунов для подводных ружей OMER.</strong> <br><br/>
<strong>Рекомендованные размеры резиновых тяжей и гарпунов для подводных ружей OMER.</strong> <br><br/> <table class="table table-hover table-bordered">
<table class="table table-hover table-bordered"> <thead>
<thead> <tr>
<tr> <th>
<th> Длина ружья (см)
Длина ружья (см) </th>
</th> <th>
<th> Длина гарпуна(см)
Длина гарпуна(см) </th>
</th> <th>
<th> Тяжи Top Energy 16 мм
Тяжи Top Energy 16 мм </th>
</th> <th>
<th> Тяжи New Power 18/20 мм
Тяжи New Power 18/20 мм </th>
</th> <th>
<th> Тяжи Dynamic 20 мм
Тяжи Dynamic 20 мм </th>
</th> <th>
<th> Дуговые тяжи Top Energy 16 мм
Дуговые тяжи Top Energy 16 мм </th>
</th> <th>
<th> Дуговые тяжи New Power 18 мм
Дуговые тяжи New Power 18 мм </th>
</th> </tr>
</tr> </thead>
</thead> <tbody>
<tbody> <tr>
<tr> <td>45/50</td>
<td>45/50</td> <td>75</td>
<td>75</td> <td>13 см</td>
<td>13 см </td> <td>12-14 см</td>
<td>12-14 см</td> <td>11 см</td>
<td>11 см</td> <td>42 см</td>
<td>42 см</td> <td>-</td>
<td>-</td> </tr>
</tr> <tr>
<tr> <td>55/60</td>
<td>55/60</td> <td>90</td>
<td>90</td> <td>16 см</td>
<td>16 см</td> <td>15-17 см</td>
<td>15-17 см</td> <td>14 см</td>
<td>14 см</td> <td>42 см</td>
<td>42 см</td> <td>-</td>
<td>-</td> </tr>
</tr> <tr>
<tr> <td>71/75</td>
<td>71/75</td> <td>115</td>
<td>115</td> <td>19 см</td>
<td>19 см</td> <td>18-20 см</td>
<td>18-20 см</td> <td>19 см</td>
<td>19 см</td> <td>48 см</td>
<td>48 см</td> <td>48 см</td>
<td>48 см</td> </tr>
</tr> <tr>
<tr> <td>82/90</td>
<td>82/90</td> <td>130</td>
<td>130</td> <td>22 см</td>
<td>22 см</td> <td>21-23 см</td>
<td>21-23 см</td> <td>23 см</td>
<td>23 см</td> <td>52 см</td>
<td>52 см</td> <td>50-52 см</td>
<td>50-52 см</td> </tr>
</tr> <tr>
<tr> <td>96/100</td>
<td>96/100</td> <td>140</td>
<td>140</td> <td>25 см</td>
<td>25 см</td> <td>24-26 см</td>
<td>24-26 см</td> <td>26 см</td>
<td>26 см</td> <td>54 см</td>
<td>54 см</td> <td>54-56 см</td>
<td>54-56 см</td> </tr>
</tr> <tr>
<tr> <td>100/110</td>
<td>100/110</td> <td>150</td>
<td>150</td> <td>26 см</td>
<td>26 см</td> <td>27-29 см</td>
<td>27-29 см</td> <td>28 см</td>
<td>28 см</td> <td>60 см</td>
<td>60 см </td> <td>58-60 см</td>
<td>58-60 см</td> </tr>
</tr> <tr>
<tr> <td>115/120</td>
<td>115/120</td> <td>160</td>
<td>160</td> <td>28 см</td>
<td>28 см</td> <td>30-32 см</td>
<td>30-32 см</td> <td>30 см</td>
<td>30 см</td> <td>65 см</td>
<td>65 см</td> <td>62-66 см</td>
<td>62-66 см</td> </tr>
</tr> <tr>
<tr> <td>125/130</td>
<td>125/130</td> <td>170</td>
<td>170</td> <td>30-35 см</td>
<td>30-35 см</td> <td>30-32 см</td>
<td>30-32 см</td> <td>30 см</td>
<td>30 см</td> <td>65 см</td>
<td>65 см</td> <td>68-72 см</td>
<td>68-72 см</td> </tr>
</tr> </tbody>
</tbody> </table>
</table> </div>
</div>
{% endblock %} {% endblock %}

@ -1,151 +1,148 @@
{% extends 'base.jinja' %} {% extends 'base.jinja' %}
{% block meta_description %} {% block meta_description %}
Размерная сетка гидрокостюмов Sargan Размерная сетка гидрокостюмов Sargan
{% endblock %} {% endblock %}
{% block meta_keywords %} {% block meta_keywords %}
Гидрокостюм, Размер, Бренд, Размерная сетка, Sargan, Батискаф-Казахстан Гидрокостюм, Размер, Бренд, Размерная сетка, Sargan, Батискаф-Казахстан
{% endblock %} {% endblock %}
{% block title %} {% block title %}
Размерная сетка для гидрокостюмов Sargan Размерная сетка для гидрокостюмов Sargan
{% endblock %} {% endblock %}
{% block content %} {% block content %}
<div class=" breadcrumbs"> <div class=" breadcrumbs">
<ol class="breadcrumb breadcrumb-arrow"> <ol class="breadcrumb breadcrumb-arrow">
<li><a href="/">Главная</a></li> <li><a href="/">Главная</a></li>
<li><a href="/size/">Размерные сетки</a></li> <li><a href="/size/">Размерные сетки</a></li>
<li class="active"><span>Sargan</span></li> <li class="active"><span>Sargan</span></li>
</ol> </ol>
</div> </div>
<h2>Размерная сетка для гидрокостюмов <br/>Sargan</h2>
<h2>Размерная сетка для гидрокостюмов <br/>Sargan</h2> <div class="well well-large">
<div class="well well-large"> <strong>Размерная сетка охотничьих гидрокостюмов.</strong>
</br><br/>
<strong>Размерная сетка охотничьих гидрокостюмов.</strong> <table class="table table-hover table-bordered">
</br><br/> <thead>
<table class="table table-hover table-bordered"> <tr>
<thead> <th>
<tr> Размер
<th> </th>
Размер <th>
</th> Рост (см)
<th> </th>
Рост (см) <th>
</th> Вес (кг)
<th> </th>
Вес (кг) </tr>
</th> </thead>
</tr> <tbody>
</thead> <tr>
<tbody> <td>S</td>
<tr> <td>168-173</td>
<td>S</td> <td>61-70</td>
<td>168-173</td> </tr>
<td>61-70</td> <tr>
</tr> <td>M</td>
<tr> <td>173-178</td>
<td>M</td> <td>68-79</td>
<td>173-178</td> </tr>
<td>68-79</td> <tr>
</tr> <td>ML</td>
<tr> <td>175-183</td>
<td>ML</td> <td>77-88</td>
<td>175-183</td> </tr>
<td>77-88</td> <tr>
</tr> <td>L</td>
<tr> <td>180-185</td>
<td>L</td> <td>83-96</td>
<td>180-185</td> </tr>
<td>83-96</td> <tr>
</tr> <td>XL</td>
<tr> <td>183-188</td>
<td>XL</td> <td>95-107</td>
<td>183-188</td> </tr>
<td>95-107</td> <tr>
</tr> <td>XXL</td>
<tr> <td>185-191</td>
<td>XXL</td> <td>104-116</td>
<td>185-191</td> </tr>
<td>104-116</td> </tbody>
</tr> </table>
</tbody> <strong>Размерная сетка носков.</strong><br/><br/>
</table> <table class="table table-hover table-bordered">
<strong>Размерная сетка носков.</strong><br/><br/> <thead>
<table class="table table-hover table-bordered"> <tr>
<thead> <th>
<tr> Размер носка
<th> </th>
Размер носка <th>
</th> Размер ноги
<th> </th>
Размер ноги </tr>
</th> </thead>
</tr> <tbody>
</thead> <tr>
<tbody> <td>XS</td>
<tr> <td>36/37</td>
<td>XS</td> </tr>
<td>36/37</td> <tr>
</tr> <td>S</td>
<tr> <td>38/39</td>
<td>S</td> </tr>
<td>38/39</td> <tr>
</tr> <td>M</td>
<tr> <td>40/41</td>
<td>M</td> </tr>
<td>40/41</td> <tr>
</tr> <td>L</td>
<tr> <td>42/43</td>
<td>L</td> </tr>
<td>42/43</td> <tr>
</tr> <td>XL</td>
<tr> <td>44/45</td>
<td>XL</td> </tr>
<td>44/45</td> <tr>
</tr> <td>XXL</td>
<tr> <td>46/47</td>
<td>XXL</td> </tr>
<td>46/47</td> </tbody>
</tr> </table>
</tbody> <strong>Размерная сетка перчаток (Длина от запястья до кончика среднего пальца)</strong><br/><br/>
</table> <table class="table table-hover table-bordered">
<strong>Размерная сетка перчаток (Длина от запястья до кончика среднего пальца)</strong><br/><br/> <thead>
<table class="table table-hover table-bordered"> <tr>
<thead> <th>
<tr> Размер
<th> </th>
Размер <th>
</th> Номер
<th> </th>
Номер </tr>
</th> </thead>
</tr> <tbody>
</thead> <tr>
<tbody> <td>XS</td>
<tr> <td>16х6</td>
<td>XS</td> </tr>
<td>16х6</td> <tr>
</tr> <td>S</td>
<tr> <td>17х7</td>
<td>S</td> </tr>
<td>17х7</td> <tr>
</tr> <td>M</td>
<tr> <td>18х8</td>
<td>M</td> </tr>
<td>18х8</td> <tr>
</tr> <td>L</td>
<tr> <td>19х9</td>
<td>L</td> </tr>
<td>19х9</td> <tr>
</tr> <td>XL</td>
<tr> <td>20х10</td>
<td>XL</td> <tr>
<td>20х10</td> <td>XXL</td>
<tr> <td>21х11</td>
<td>XXL</td> </tr>
<td>21х11</td> </tbody>
</tr> </table>
</tbody> </div>
</table>
</div>
{% endblock %} {% endblock %}

@ -1,354 +1,350 @@
{% extends 'base.jinja' %} {% extends 'base.jinja' %}
{% block title %} {% block title %}
Размерная сетка для гидрокостюмов Scorpena Размерная сетка для гидрокостюмов Scorpena
{% endblock %} {% endblock %}
{% block meta_description %} {% block meta_description %}
Размерная сетка гидрокостюмов Scorpena Размерная сетка гидрокостюмов Scorpena
{% endblock %} {% endblock %}
{% block meta_keywords %} {% block meta_keywords %}
Гидрокостюм, Размер, Бренд, Размерная сетка, Scorpena, Батискаф-Казахстан Гидрокостюм, Размер, Бренд, Размерная сетка, Scorpena, Батискаф-Казахстан
{% endblock %} {% endblock %}
{% block content %} {% block content %}
<div class=" breadcrumbs"> <div class=" breadcrumbs">
<ol class="breadcrumb breadcrumb-arrow"> <ol class="breadcrumb breadcrumb-arrow">
<li><a href="/">Главная</a></li> <li><a href="/">Главная</a></li>
<li><a href="/size/">Размерные сетки</a></li> <li><a href="/size/">Размерные сетки</a></li>
<li class="active"><span>Scorpena</span></li> <li class="active"><span>Scorpena</span></li>
</ol> </ol>
</div> </div>
<h2>Размерная сетка для гидрокостюмов <br/>Scorpena</h2>
<h2>Размерная сетка для гидрокостюмов <br/>Scorpena</h2> <div class="well well-large">
<div class="well well-large"> <strong>Размерная сетка охотничьих гидрокостюмов.</strong>
</br><br/>
<table class="table table-hover table-bordered">
<strong>Размерная сетка охотничьих гидрокостюмов.</strong> <thead>
</br><br/> <tr>
<table class="table table-hover table-bordered"> <th>
<thead> Размер
<tr> </th>
<th> <th>
Размер Рост (см)
</th> </th>
<th> <th>
Рост (см) Окружность груди (см)
</th> </th>
<th> <th>
Окружность груди (см) Окружность бедер(см)
</th> </th>
<th> <th>
Окружность бедер(см) Окружность талии(см)
</th> </th>
<th> </tr>
Окружность талии(см) </thead>
</th> <tbody>
</tr> <tr>
</thead> <td>XS</td>
<tbody> <td>165-170</td>
<tr> <td>80-88</td>
<td>XS</td> <td>79-87</td>
<td>165-170</td> <td>71-75</td>
<td>80-88</td> </tr>
<td>79-87</td> <tr>
<td>71-75</td> <td>S</td>
</tr> <td>169-174</td>
<tr> <td>88-96</td>
<td>S</td> <td>87-94</td>
<td>169-174</td> <td>75-79</td>
<td>88-96</td> </tr>
<td>87-94</td> <tr>
<td>75-79</td> <td>M</td>
</tr> <td>173-180</td>
<tr> <td>96-104</td>
<td>M</td> <td>94-101</td>
<td>173-180</td> <td>79-84</td>
<td>96-104</td> </tr>
<td>94-101</td> <tr>
<td>79-84</td> <td>L</td>
</tr> <td>179-185</td>
<tr> <td>101-109</td>
<td>L</td> <td>100-106</td>
<td>179-185</td> <td>84-90</td>
<td>101-109</td> </tr>
<td>100-106</td> <tr>
<td>84-90</td> <td>XL</td>
</tr> <td>184-190</td>
<tr> <td>107-115</td>
<td>XL</td> <td>106-112</td>
<td>184-190</td> <td>90-96</td>
<td>107-115</td> </tr>
<td>106-112</td> <tr>
<td>90-96</td> <td>XXL</td>
</tr> <td>189-196</td>
<tr> <td>112-120</td>
<td>XXL</td> <td>112-117</td>
<td>189-196</td> <td>96-104</td>
<td>112-120</td> </tr>
<td>112-117</td> </tbody>
<td>96-104</td> </table>
</tr> <strong>Размерная сетка носков.</strong> <br/><br/>
</tbody> <table class="table table-hover table-bordered">
</table> <thead>
<strong>Размерная сетка носков.</strong> <br/><br/> <tr>
<table class="table table-hover table-bordered"> <th>
<thead> Размер носка
<tr> </th>
<th> <th>
Размер носка Размер ноги
</th> </th>
<th> </tr>
Размер ноги </thead>
</th> <tbody>
</tr> <tr>
</thead> <td>XS</td>
<tbody> <td>36/37</td>
<tr> </tr>
<td>XS</td> <tr>
<td>36/37</td> <td>S</td>
</tr> <td>38/39</td>
<tr> </tr>
<td>S</td> <tr>
<td>38/39</td> <td>M</td>
</tr> <td>40/41</td>
<tr> </tr>
<td>M</td> <tr>
<td>40/41</td> <td>L</td>
</tr> <td>42/43</td>
<tr> </tr>
<td>L</td> <tr>
<td>42/43</td> <td>XL</td>
</tr> <td>44/45</td>
<tr> </tr>
<td>XL</td> <tr>
<td>44/45</td> <td>XXL</td>
</tr> <td>46/47</td>
<tr> </tr>
<td>XXL</td> </tbody>
<td>46/47</td> </table>
</tr> <strong class="lead">Размерные сетки дайверских гидрокостюмов</strong>
</tbody> <br> <strong> Размеры мужских костюмов</strong></br> <br/>
</table> <table class="table table-hover table-bordered">
<strong class="lead">Размерные сетки дайверских гидрокостюмов</strong> <thead>
<br> <strong> Размеры мужских костюмов</strong></br> <br/> <tr>
<table class="table table-hover table-bordered"> <th>
<thead> Размер
<tr> </th>
<th> <th>
Размер Вес(кг)
</th> </th>
<th> <th>
Вес(кг) Рост (см)
</th> </th>
<th> <th>
Рост (см) Окружность груди (см)
</th> </th>
<th> <th>
Окружность груди (см) Окружность бедер(см)
</th> </th>
<th> <th>
Окружность бедер(см) Окружность талии(см)
</th> </th>
<th> </tr>
Окружность талии(см) </thead>
</th> <tbody>
</tr> <tr>
</thead> <td>S=2=46/48</td>
<tbody> <td>61/70</td>
<tr> <td>168/173</td>
<td>S=2=46/48</td> <td>89/94</td>
<td>61/70</td> <td>89/94</td>
<td>168/173</td> <td>74/79</td>
<td>89/94</td> </tr>
<td>89/94</td> <tr>
<td>74/79</td> <td>M=3=48/50</td>
</tr> <td>68/79</td>
<tr> <td>173/178</td>
<td>M=3=48/50</td> <td>94/99</td>
<td>68/79</td> <td>94/99</td>
<td>173/178</td> <td>79/84</td>
<td>94/99</td> </tr>
<td>94/99</td> <tr>
<td>79/84</td> <td>L=4=50/52</td>
</tr> <td>83/98</td>
<tr> <td>180/185</td>
<td>L=4=50/52</td> <td>104/109</td>
<td>83/98</td> <td>104/109</td>
<td>180/185</td> <td>89/94</td>
<td>104/109</td> </tr>
<td>104/109</td> <tr>
<td>89/94</td> <td>XL=5=52/54</td>
</tr> <td>95/107</td>
<tr> <td>183/188</td>
<td>XL=5=52/54</td> <td>109/114</td>
<td>95/107</td> <td>109/114</td>
<td>183/188</td> <td>94/99</td>
<td>109/114</td> </tr>
<td>109/114</td> <tr>
<td>94/99</td> <td>XXL=6=54/56</td>
</tr> <td>104/116</td>
<tr> <td>185/191</td>
<td>XXL=6=54/56</td> <td>114/119</td>
<td>104/116</td> <td>114/119</td>
<td>185/191</td> <td>99/104</td>
<td>114/119</td> </tr>
<td>114/119</td> <tr>
<td>99/104</td> <td>XXXL=7=56/58</td>
</tr> <td>113/125</td>
<tr> <td>188/194</td>
<td>XXXL=7=56/58</td> <td>119/124</td>
<td>113/125</td> <td>119/124</td>
<td>188/194</td> <td>104/109</td>
<td>119/124</td> </tr>
<td>119/124</td> </tbody>
<td>104/109</td> </table>
</tr> <strong> Размеры женских костюмов</strong> <br/><br/>
</tbody> <table class="table table-hover table-bordered">
</table> <thead>
<strong> Размеры женских костюмов</strong> <br/><br/> <tr>
<table class="table table-hover table-bordered"> <th>
<thead> Размер
<tr> </th>
<th> <th>
Размер Вес(кг)
</th> </th>
<th> <th>
Вес(кг) Рост (см)
</th> </th>
<th> <th>
Рост (см) Окружность груди (см)
</th> </th>
<th> <th>
Окружность груди (см) Окружность бедер(см)
</th> </th>
<th> <th>
Окружность бедер(см) Окружность талии(см)
</th> </th>
<th> </tr>
Окружность талии(см) </thead>
</th> <tbody>
</tr> <tr>
</thead> <td>XS=1=36=38</td>
<tbody> <td>45/52</td>
<tr> <td>157/163</td>
<td>XS=1=36=38</td> <td>79/84</td>
<td>45/52</td> <td>81/86</td>
<td>157/163</td> <td>56/61</td>
<td>79/84</td> </tr>
<td>81/86</td> <tr>
<td>56/61</td> <td>S=2=38/40</td>
</tr> <td>50/57</td>
<tr> <td>160/165</td>
<td>S=2=38/40</td> <td>81/86</td>
<td>50/57</td> <td>84/89</td>
<td>160/165</td> <td>58/64</td>
<td>81/86</td> </tr>
<td>84/89</td> <tr>
<td>58/64</td> <td>M=3=40/42</td>
</tr> <td>54/61</td>
<tr> <td>163/168</td>
<td>M=3=40/42</td> <td>86/91</td>
<td>54/61</td> <td>89/94</td>
<td>163/168</td> <td>64/69</td>
<td>86/91</td> </tr>
<td>89/94</td> <tr>
<td>64/69</td> <td>L=4=42/44</td>
</tr> <td>59/66</td>
<tr> <td>165/170</td>
<td>L=4=42/44</td> <td>89/94</td>
<td>59/66</td> <td>91/97</td>
<td>165/170</td> <td>66/71</td>
<td>89/94</td> </tr>
<td>91/97</td> <tr>
<td>66/71</td> <td>XL=5=44/46</td>
</tr> <td>61/70</td>
<tr> <td>168/173</td>
<td>XL=5=44/46</td> <td>94/99</td>
<td>61/70</td> <td>97/102</td>
<td>168/173</td> <td>71/76</td>
<td>94/99</td> </tr>
<td>97/102</td> <tr>
<td>71/76</td> <td>XXL=6=46/48</td>
</tr> <td>66/75</td>
<tr> <td>170/175</td>
<td>XXL=6=46/48</td> <td>97/102</td>
<td>66/75</td> <td>99/104</td>
<td>170/175</td> <td>74/79</td>
<td>97/102</td> </tr>
<td>99/104</td> <tr>
<td>74/79</td> <td>XXXL=7=48/50</td>
</tr> <td>71/80</td>
<tr> <td>172/177</td>
<td>XXXL=7=48/50</td> <td>100/105</td>
<td>71/80</td> <td>101/106</td>
<td>172/177</td> <td>77/82</td>
<td>100/105</td> </tr>
<td>101/106</td> </tbody>
<td>77/82</td> </table>
</tr> <strong> Размеры детских костюмов</strong> <br/><br/>
</tbody> <table class="table table-hover table-bordered">
</table> <thead>
<strong> Размеры детских костюмов</strong> <br/><br/> <tr>
<table class="table table-hover table-bordered"> <th>
<thead> Возраст
<tr> </th>
<th> <th>
Возраст Вес(кг)
</th> </th>
<th> <th>
Вес(кг) Рост (см)
</th> </th>
<th> <th>
Рост (см) Окружность груди (см)
</th> </th>
<th> </tr>
Окружность груди (см) </thead>
</th> <tbody>
</tr> <tr>
</thead> <td>2/3 года</td>
<tbody> <td>14/18</td>
<tr> <td>91/101</td>
<td>2/3 года</td> <td>51/58</td>
<td>14/18</td> </tr>
<td>91/101</td> <tr>
<td>51/58</td> <td>4/5 лет</td>
</tr> <td>18/23</td>
<tr> <td>101/112</td>
<td>4/5 лет</td> <td>56/61</td>
<td>18/23</td> </tr>
<td>101/112</td> <tr>
<td>56/61</td> <td>6/7 лет</td>
</tr> <td>20/27</td>
<tr> <td>117/127</td>
<td>6/7 лет</td> <td>61/66</td>
<td>20/27</td> </tr>
<td>117/127</td> <tr>
<td>61/66</td> <td>8/10 лет</td>
</tr> <td>25/32</td>
<tr> <td>132/140</td>
<td>8/10 лет</td> <td>66/71</td>
<td>25/32</td> </tr>
<td>132/140</td> <tr>
<td>66/71</td> <td>10/12 лет</td>
</tr> <td>20/39</td>
<tr> <td>140/147</td>
<td>10/12 лет</td> <td>71/76</td>
<td>20/39</td> </tr>
<td>140/147</td> <tr>
<td>71/76</td> <td>12/14 лет</td>
</tr> <td>36/45</td>
<tr> <td>147/155</td>
<td>12/14 лет</td> <td>76/81</td>
<td>36/45</td> </tr>
<td>147/155</td> <tr>
<td>76/81</td> <td>14/16 лет</td>
</tr> <td>От 45</td>
<tr> <td>Выше 155</td>
<td>14/16 лет</td> <td>Шире 81</td>
<td>От 45</td> </tr>
<td>Выше 155</td> </tbody>
<td>Шире 81</td> </table>
</tr> </div>
</tbody>
</table>
</div>
{% endblock %} {% endblock %}

@ -13,6 +13,7 @@ from api.views import *
from django.contrib import sitemaps from django.contrib import sitemaps
from django.core.urlresolvers import reverse from django.core.urlresolvers import reverse
from django.contrib.sitemaps.views import sitemap from django.contrib.sitemaps.views import sitemap
# Serializers define the API representation. # Serializers define the API representation.
# Routers provide an easy way of automatically determining the URL conf. # Routers provide an easy way of automatically determining the URL conf.
@ -41,6 +42,7 @@ class StaticViewSitemap(sitemaps.Sitemap):
def location(self, item): def location(self, item):
return reverse(item) return reverse(item)
class MainStaticViewSitemap(sitemaps.Sitemap): class MainStaticViewSitemap(sitemaps.Sitemap):
priority = 1 priority = 1
changefreq = 'daily' changefreq = 'daily'
@ -63,55 +65,56 @@ sitemaps1 = {
'categories': CategorySitemap, 'categories': CategorySitemap,
} }
urlpatterns = patterns( urlpatterns = patterns(
'', '',
url(r'^$', 'main.views.index', url(r'^$', 'main.views.index',
name='index'), name='index'),
url(r'^sitemap\.xml$', sitemap, {'sitemaps': sitemaps1}, url(r'^sitemap\.xml$', sitemap, {'sitemaps': sitemaps1},
name='django.contrib.sitemaps.views.sitemap'), name='django.contrib.sitemaps.views.sitemap'),
(r'^robots\.txt$', lambda r: HttpResponse("User-agent: *\nDisallow: \nHost: batiskaf-kz.kz\nSitemap: http://batiskaf-kz.kz/sitemap.xml", content_type="text/plain")), (r'^robots\.txt$', lambda r: HttpResponse(
url(r'^size/$', 'main.views.size_index', "User-agent: *\nDisallow: \nHost: batiskaf-kz.kz\nSitemap: http://batiskaf-kz.kz/sitemap.xml",
name='size_index'), content_type="text/plain")),
url(r'^feedback/$', 'main.views.feedback', url(r'^size/$', 'main.views.size_index',
name='feedback'), name='size_index'),
url(r'^size/beuchat/$', 'main.views.size_beuchat', url(r'^feedback/$', 'main.views.feedback',
name='size_beuchat'), name='feedback'),
url(r'^size/omer-sporasub/$', 'main.views.size_omer_sporasub', url(r'^size/beuchat/$', 'main.views.size_beuchat',
name='size_omer_sporasub'), name='size_beuchat'),
url(r'^size/sargan/$', 'main.views.size_sargan', url(r'^size/omer-sporasub/$', 'main.views.size_omer_sporasub',
name='size_sargan'), name='size_omer_sporasub'),
url(r'^size/scorpena/$', 'main.views.size_scorpena', name='size_scorpena'), url(r'^size/sargan/$', 'main.views.size_sargan',
url(r'^size/aqua-discovery/$', 'main.views.size_aqua_discovery', name='size_sargan'),
name='size_aqua_discovery'), url(r'^size/scorpena/$', 'main.views.size_scorpena', name='size_scorpena'),
url(r'^size/aqualung/$', 'main.views.size_aqualung', url(r'^size/aqua-discovery/$', 'main.views.size_aqua_discovery',
name='size_aqualung'), name='size_aqua_discovery'),
url(r'^size/aquatics/$', 'main.views.size_aquatics', url(r'^size/aqualung/$', 'main.views.size_aqualung',
name='size_aquatics'), name='size_aqualung'),
url(r'^size/cressi/$', 'main.views.size_cressi', url(r'^size/aquatics/$', 'main.views.size_aquatics',
name='size_cressi'), name='size_aquatics'),
url(r'^api/item/(?P<article>.+)/$', 'main.views.temp_count_update', name='temp_count_update'), url(r'^size/cressi/$', 'main.views.size_cressi',
url(r'^api/', include(router.urls)), name='size_cressi'),
url(r'^news/', include('news.urls')), url(r'^api/item/(?P<article>.+)/$', 'main.views.temp_count_update', name='temp_count_update'),
url(r'^promo/', include('promo.urls')), url(r'^api/', include(router.urls)),
url(r'^get_order_amount/$', 'store.views.get_order_amount'), url(r'^news/', include('news.urls')),
url(r'^order_call/$', 'api.views.call_order'), url(r'^promo/', include('promo.urls')),
url(r'^order_order/$', 'api.views.order_order'), url(r'^get_order_amount/$', 'store.views.get_order_amount'),
url(r'^order/(?P<order>.+)/print/$', order_print, url(r'^order_call/$', 'api.views.call_order'),
name='store_order_print'), url(r'^order_order/$', 'api.views.order_order'),
url(r'^order/(?P<order>.+)/kkb/$', order_kkb, url(r'^order/(?P<order>.+)/print/$', order_print,
name='store_order_kkb'), name='store_order_print'),
url(r'^kkb_result/$', kkb_result, url(r'^order/(?P<order>.+)/kkb/$', order_kkb,
name='kkb_result'), name='store_order_kkb'),
url(r'^kkb_result/$', kkb_result,
name='kkb_result'),
url(r'^order/(?P<order>.+)/$', order_view, url(r'^order/(?P<order>.+)/$', order_view,
name='store_order_view'), name='store_order_view'),
url(r'^store/', include('store.urls')), url(r'^store/', include('store.urls')),
url(r'^account/', include('accounts.urls')), url(r'^account/', include('accounts.urls')),
url(r'^advantages/$', advantages, name='advantages'), url(r'^advantages/$', advantages, name='advantages'),
url(r'^payment/$', payment, name='payment'), url(r'^payment/$', payment, name='payment'),
url(r'^delivery/$', delivery, name='delivery'), url(r'^delivery/$', delivery, name='delivery'),
url(r'^contacts/$', contacts, name='contacts'), url(r'^contacts/$', contacts, name='contacts'),
url(r'^faq/$', faq, name='faq'), url(r'^faq/$', faq, name='faq'),
url(r'^admin2517_garpun/', include(admin.site.urls)), url(r'^admin2517_garpun/', include(admin.site.urls)),
) )

@ -28,7 +28,8 @@ class KKBSign(object):
cmd = "".join(["openssl x509 -pubkey -noout -in ", settings.PUBLIC_KEY_FN]) cmd = "".join(["openssl x509 -pubkey -noout -in ", settings.PUBLIC_KEY_FN])
pubkey = \ pubkey = \
subprocess.Popen(shlex.split(cmd), shell=False, stdin=subprocess.PIPE, stdout=subprocess.PIPE).communicate()[0] subprocess.Popen(shlex.split(cmd), shell=False, stdin=subprocess.PIPE,
stdout=subprocess.PIPE).communicate()[0]
try: try:
tempPubKey.write(bytes(pubkey, 'UTF-8')) tempPubKey.write(bytes(pubkey, 'UTF-8'))
except Exception as e: except Exception as e:
@ -37,9 +38,11 @@ class KKBSign(object):
tempPubKey.seek(0) tempPubKey.seek(0)
cmd = "".join( cmd = "".join(
["openssl dgst -sha1 -verify ", tempPubKey.name, " -signature ", tempSignature.name, " ", tempData.name]) ["openssl dgst -sha1 -verify ", tempPubKey.name, " -signature ", tempSignature.name, " ",
tempData.name])
result = \ result = \
subprocess.Popen(shlex.split(cmd), shell=False, stdin=subprocess.PIPE, stdout=subprocess.PIPE).communicate()[0] subprocess.Popen(shlex.split(cmd), shell=False, stdin=subprocess.PIPE,
stdout=subprocess.PIPE).communicate()[0]
tempPubKey.close() tempPubKey.close()
tempData.close() tempData.close()

@ -1,11 +1,14 @@
from django.contrib import admin from django.contrib import admin
from .models import Banner, Feedback from .models import Banner, Feedback
class BannerAdmin(admin.ModelAdmin): class BannerAdmin(admin.ModelAdmin):
list_display = ('title', 'link', 'is_active') list_display = ('title', 'link', 'is_active')
class FeedbackAdmin(admin.ModelAdmin): class FeedbackAdmin(admin.ModelAdmin):
list_display = ('created', 'name', 'email', 'text', 'stars') list_display = ('created', 'name', 'email', 'text', 'stars')
admin.site.register(Banner, BannerAdmin) admin.site.register(Banner, BannerAdmin)
admin.site.register(Feedback, FeedbackAdmin) admin.site.register(Feedback, FeedbackAdmin)

@ -9,4 +9,4 @@ class FeedbackForm(forms.ModelForm):
class Meta: class Meta:
model = Feedback model = Feedback
fields = ['stars', 'name', 'email', 'text', ] fields = ['stars', 'name', 'email', 'text', ]
# widgets = {'stars': forms.RadioSelect(hidden=True)} # widgets = {'stars': forms.RadioSelect(hidden=True)}

@ -9,10 +9,10 @@ def photo_filename(instance, filename):
class Banner(models.Model): class Banner(models.Model):
title = models.CharField( title = models.CharField(
'Альтернативный текст', max_length=256, blank=False, null=False) 'Альтернативный текст', max_length=256, blank=False, null=False)
image = models.ImageField('Баннер', upload_to=photo_filename) image = models.ImageField('Баннер', upload_to=photo_filename)
link = models.CharField( link = models.CharField(
'Ссылка', max_length=1024, blank=False, null=False) 'Ссылка', max_length=1024, blank=False, null=False)
is_active = models.BooleanField('Публиковать', default=True) is_active = models.BooleanField('Публиковать', default=True)
def __str__(self): def __str__(self):
@ -34,6 +34,7 @@ class Feedback(models.Model):
email = models.EmailField('Email (не будет опубликован)', null=False, blank=False) email = models.EmailField('Email (не будет опубликован)', null=False, blank=False)
text = models.TextField('Комментарий', null=False, blank=False) text = models.TextField('Комментарий', null=False, blank=False)
stars = models.IntegerField('Оценка', default=5, choices=STARS_CHOICES) stars = models.IntegerField('Оценка', default=5, choices=STARS_CHOICES)
# news = models.ForeignKey(News, related_name='comments') # news = models.ForeignKey(News, related_name='comments')
class Meta: class Meta:
@ -45,4 +46,4 @@ class Feedback(models.Model):
class ProductsUpdate(models.Model): class ProductsUpdate(models.Model):
created = models.DateTimeField('Дата и время', editable=False, auto_now=True) created = models.DateTimeField('Дата и время', editable=False, auto_now=True)

@ -13,9 +13,9 @@ def index(request):
products = Product.objects.order_by('-pk')[:8] products = Product.objects.order_by('-pk')[:8]
c = dict( c = dict(
products=products, products=products,
# aaa=[1,2,3,4,5,6,7,8,9,0], # aaa=[1,2,3,4,5,6,7,8,9,0],
banners=Banner.objects.filter(is_active=True), banners=Banner.objects.filter(is_active=True),
) )
return render(request, 'index.jinja', c) return render(request, 'index.jinja', c)
@ -113,6 +113,6 @@ def feedback(request):
return redirect('/feedback/') return redirect('/feedback/')
return render(request, 'feedback.jinja', dict( return render(request, 'feedback.jinja', dict(
object_list=Feedback.objects.order_by('-pk'), object_list=Feedback.objects.order_by('-pk'),
form=form form=form
)) ))

@ -19,4 +19,3 @@ class TagsAdmin(admin.ModelAdmin):
@admin.register(NewsComment) @admin.register(NewsComment)
class CommentsAdmin(admin.ModelAdmin): class CommentsAdmin(admin.ModelAdmin):
list_display = ('name', 'email', 'text', 'news') list_display = ('name', 'email', 'text', 'news')

@ -1,6 +1,7 @@
from django import forms from django import forms
from .models import * from .models import *
class CommentForm(forms.ModelForm): class CommentForm(forms.ModelForm):
reply_to = forms.IntegerField(widget=forms.HiddenInput(), required=False) reply_to = forms.IntegerField(widget=forms.HiddenInput(), required=False)

@ -18,7 +18,7 @@ class NewsList(ListView):
retval = self.queryset retval = self.queryset
if tag: if tag:
retval = self.queryset.filter( retval = self.queryset.filter(
tags_list__slug__iexact=tag, is_public=True).order_by('-pk') tags_list__slug__iexact=tag, is_public=True).order_by('-pk')
return retval return retval
def get_context_data(self, **kwargs): def get_context_data(self, **kwargs):
@ -46,18 +46,18 @@ def news_detail(request, slug):
Новость: {} Новость: {}
Ссылка на новость: http://batiskaf-kz.kz{} Ссылка на новость: http://batiskaf-kz.kz{}
'''.format( '''.format(
form.cleaned_data['name'], form.cleaned_data['name'],
form.cleaned_data['email'], form.cleaned_data['email'],
form.cleaned_data['text'], form.cleaned_data['text'],
object.title, object.title,
object.get_absolute_url(), object.get_absolute_url(),
)) ))
messages.success(request, 'Ваш комментарий успешно опубликован!') messages.success(request, 'Ваш комментарий успешно опубликован!')
return redirect(object.get_absolute_url() + '#comment{}'.format(comment.pk)) return redirect(object.get_absolute_url() + '#comment{}'.format(comment.pk))
c = dict( c = dict(
object=object, object=object,
form=form form=form
) )
return render(request, 'news/detail.jinja', c) return render(request, 'news/detail.jinja', c)

@ -8,5 +8,3 @@ class PromoAdmin(admin.ModelAdmin):
prepopulated_fields = {"slug": ("title",)} prepopulated_fields = {"slug": ("title",)}
list_editable = ('is_public',) list_editable = ('is_public',)
list_filter = ('is_public',) list_filter = ('is_public',)

@ -38,7 +38,6 @@ class Promo(models.Model):
else: else:
return 2 return 2
# class NewsComment(models.Model): # class NewsComment(models.Model):
# created = models.DateTimeField('Дата и время', auto_now_add=True, editable=False) # created = models.DateTimeField('Дата и время', auto_now_add=True, editable=False)
# name = models.CharField('Имя', max_length=45, null=False, blank=False) # name = models.CharField('Имя', max_length=45, null=False, blank=False)

@ -12,11 +12,12 @@ class PromoList(ListView):
template_name = 'promo/list.jinja' template_name = 'promo/list.jinja'
queryset = Promo.objects.filter(is_public=True).order_by('-pk') queryset = Promo.objects.filter(is_public=True).order_by('-pk')
def promo_detail(request, slug): def promo_detail(request, slug):
object = get_object_or_404(Promo, slug__iexact=slug, is_public=True) object = get_object_or_404(Promo, slug__iexact=slug, is_public=True)
c = dict( c = dict(
object=object, object=object,
) )
return render(request, 'promo/detail.jinja', c) return render(request, 'promo/detail.jinja', c)

@ -48,7 +48,7 @@ class AttributeAdmin(admin.ModelAdmin):
class ImageInProductInline(admin.TabularInline): class ImageInProductInline(admin.TabularInline):
def render_image(self, obj): def render_image(self, obj):
return mark_safe("""<img src="/static/{0}" width='200' />""".format( return mark_safe("""<img src="/static/{0}" width='200' />""".format(
obj.image.url)) obj.image.url))
render_image.short_description = 'Превью' render_image.short_description = 'Превью'
@ -105,13 +105,14 @@ class OrderAdmin(admin.ModelAdmin):
obj.save() obj.save()
list_display = ( list_display = (
'first_name', 'last_name', 'phone', 'email', 'city', 'address', 'deliv_type', 'amount', 'status', get_order_items) 'first_name', 'last_name', 'phone', 'email', 'city', 'address', 'deliv_type', 'amount', 'status',
get_order_items)
@admin.register(ProductFeedback) @admin.register(ProductFeedback)
class ProductFeedbackAdmin(admin.ModelAdmin): class ProductFeedbackAdmin(admin.ModelAdmin):
list_display = ('created', 'product', 'name', 'email', 'text', 'stars') list_display = ('created', 'product', 'name', 'email', 'text', 'stars')
# #
# @admin.register(Category) # @admin.register(Category)
# class CategoryAdmin(admin.ModelAdmin): # class CategoryAdmin(admin.ModelAdmin):

@ -69,11 +69,11 @@ class AlemTat(object):
retval = cache.get(cache_key, None) retval = cache.get(cache_key, None)
if not retval: if not retval:
url = self._build_url( url = self._build_url(
'http://api.alemtat.kz/web/{ext}/Catalog/getCitiesByCountry?CountryLocalCode={}'.format( 'http://api.alemtat.kz/web/{ext}/Catalog/getCitiesByCountry?CountryLocalCode={}'.format(
self.COUNTRY_CODE, ext=self.API_KEY)) self.COUNTRY_CODE, ext=self.API_KEY))
r = requests.get(url) r = requests.get(url)
retval = r.json() retval = r.json()
cache.set(cache_key, retval, 60*60*24*7) cache.set(cache_key, retval, 60 * 60 * 24 * 7)
return retval return retval
def get_cities_tuple(self): def get_cities_tuple(self):
@ -86,10 +86,10 @@ class AlemTat(object):
retval = cache.get(cache_key, None) retval = cache.get(cache_key, None)
if not retval: if not retval:
url = self._build_url( url = self._build_url(
'http://api.alemtat.kz/web/{ext}/Catalog/getServices'.format(ext=self.API_KEY)) 'http://api.alemtat.kz/web/{ext}/Catalog/getServices'.format(ext=self.API_KEY))
r = requests.get(url) r = requests.get(url)
retval = r.json() retval = r.json()
cache.set(cache_key, retval, 60*60*24*7) cache.set(cache_key, retval, 60 * 60 * 24 * 7)
return filter(lambda s: s['LocalCode'] in ['E', 'T'], retval) return filter(lambda s: s['LocalCode'] in ['E', 'T'], retval)
def get_services_tuple(self): def get_services_tuple(self):
@ -102,18 +102,18 @@ class AlemTat(object):
# return tuple(retval) # return tuple(retval)
def get_amount(self, to, places, weight, service): def get_amount(self, to, places, weight, service):
#mail_admins('deliv', 'to:{}, places:{}, weight:{}, service:{}'.format(to, places, weight, service)) # mail_admins('deliv', 'to:{}, places:{}, weight:{}, service:{}'.format(to, places, weight, service))
url = self._build_url( url = self._build_url(
'http://api.alemtat.kz/web/{ext}/Calc/getAmount'.format(ext=self.API_KEY)) 'http://api.alemtat.kz/web/{ext}/Calc/getAmount'.format(ext=self.API_KEY))
post_data = dict( post_data = dict(
FromCountryCode=self.COUNTRY_CODE, FromCountryCode=self.COUNTRY_CODE,
FromLocalCode=self.CITY_CODE, FromLocalCode=self.CITY_CODE,
ToCountryCode=self.COUNTRY_CODE, ToCountryCode=self.COUNTRY_CODE,
ToLocalCode=to, ToLocalCode=to,
ServiceLocalCode=service, ServiceLocalCode=service,
Places=places, Places=places,
Weight=weight, Weight=weight,
Contract=self.CONTRACT, Contract=self.CONTRACT,
) )
r = requests.post(url, data=post_data) r = requests.post(url, data=post_data)
if r.json()['AmountPlusFSAmount'] > 0: if r.json()['AmountPlusFSAmount'] > 0:
@ -248,17 +248,28 @@ class AlemTat(object):
if service == 'E': if service == 'E':
zones_prices = dict(self.ZONES_E) zones_prices = dict(self.ZONES_E)
if weight <= 0.3: retval = dict(zones_prices[0.3])[zone] if weight <= 0.3:
elif weight <= 0.5: retval = dict(zones_prices[0.5])[zone] retval = dict(zones_prices[0.3])[zone]
elif weight <= 1: retval = dict(zones_prices[1])[zone] elif weight <= 0.5:
elif weight <= 1.5: retval = dict(zones_prices[1.5])[zone] retval = dict(zones_prices[0.5])[zone]
elif weight <= 2: retval = dict(zones_prices[2])[zone] elif weight <= 1:
elif weight <= 2.5: retval = dict(zones_prices[2.5])[zone] retval = dict(zones_prices[1])[zone]
elif weight <= 3: retval = dict(zones_prices[3])[zone] elif weight <= 1.5:
elif weight <= 3.5: retval = dict(zones_prices[3.5])[zone] retval = dict(zones_prices[1.5])[zone]
elif weight <= 4: retval = dict(zones_prices[4])[zone] elif weight <= 2:
elif weight <= 4.5: retval = dict(zones_prices[4.5])[zone] retval = dict(zones_prices[2])[zone]
elif weight <= 5: retval = dict(zones_prices[5])[zone] elif weight <= 2.5:
retval = dict(zones_prices[2.5])[zone]
elif weight <= 3:
retval = dict(zones_prices[3])[zone]
elif weight <= 3.5:
retval = dict(zones_prices[3.5])[zone]
elif weight <= 4:
retval = dict(zones_prices[4])[zone]
elif weight <= 4.5:
retval = dict(zones_prices[4.5])[zone]
elif weight <= 5:
retval = dict(zones_prices[5])[zone]
elif weight > 5: elif weight > 5:
retval = dict(zones_prices[5])[zone] retval = dict(zones_prices[5])[zone]
plusweight = ( plusweight = (
@ -268,35 +279,36 @@ class AlemTat(object):
(4, 630), (4, 630),
(5, 650), (5, 650),
) )
retval += int(weight-5) * dict(plusweight)[zone] retval += int(weight - 5) * dict(plusweight)[zone]
if service == 'T': if service == 'T':
zones_prices = dict(self.ZONES_T) zones_prices = dict(self.ZONES_T)
plusweight = ( plusweight = (
(1, 150), (1, 150),
(2, 200), (2, 200),
(3, 250), (3, 250),
(4, 300), (4, 300),
(5, 400), (5, 400),
) )
if weight <= 5: retval = dict(zones_prices[5])[zone] if weight <= 5:
elif weight <= 10: retval = dict(zones_prices[10])[zone] retval = dict(zones_prices[5])[zone]
elif weight <= 10:
retval = dict(zones_prices[10])[zone]
elif weight > 10 and weight < 30: elif weight > 10 and weight < 30:
retval = dict(zones_prices[10])[zone] retval = dict(zones_prices[10])[zone]
retval += int(weight-10) * dict(plusweight)[zone] retval += int(weight - 10) * dict(plusweight)[zone]
elif weight >= 30 and weight < 60: elif weight >= 30 and weight < 60:
retval = dict(zones_prices[30])[zone] retval = dict(zones_prices[30])[zone]
retval += int(weight-30) * dict(plusweight)[zone] retval += int(weight - 30) * dict(plusweight)[zone]
elif weight >= 60 and weight < 100: elif weight >= 60 and weight < 100:
retval = dict(zones_prices[60])[zone] retval = dict(zones_prices[60])[zone]
retval += int(weight-60) * dict(plusweight)[zone] retval += int(weight - 60) * dict(plusweight)[zone]
elif weight >= 100: elif weight >= 100:
retval = dict(zones_prices[100])[zone] retval = dict(zones_prices[100])[zone]
retval += int(weight-100) * dict(plusweight)[zone] retval += int(weight - 100) * dict(plusweight)[zone]
return retval return retval
def get_amount_alternative(self, to, places, weight, service): def get_amount_alternative(self, to, places, weight, service):
retval = dict(AmountPlusFSAmount=0) retval = dict(AmountPlusFSAmount=0)
zone = 5 zone = 5

@ -49,7 +49,7 @@ class Cart(object):
pass pass
if variation: if variation:
item = CartItem( item = CartItem(
variation, j['count'], j['id']) variation, j['count'], j['id'])
self.items.append(item) self.items.append(item)
self.total += int(item.subtotal) self.total += int(item.subtotal)
self.weight += variation.weight * j['count'] self.weight += variation.weight * j['count']
@ -61,7 +61,7 @@ class Cart(object):
cart['items'] = [] cart['items'] = []
for j in self.items: for j in self.items:
cart['items'].append( cart['items'].append(
{'product': j.item.pk, 'count': j.count, 'id': j.id}) {'product': j.item.pk, 'count': j.count, 'id': j.id})
self.json_items = cart self.json_items = cart
self.request.session['store_cart'] = self.json_items self.request.session['store_cart'] = self.json_items
return self return self

@ -9,6 +9,7 @@ class OrderForm(forms.ModelForm):
model = OrderData model = OrderData
fields = ['first_name', 'last_name', 'phone', 'email', 'city', 'address', 'deliv_type'] fields = ['first_name', 'last_name', 'phone', 'email', 'city', 'address', 'deliv_type']
class ProductFeedbackForm(forms.ModelForm): class ProductFeedbackForm(forms.ModelForm):
stars = forms.IntegerField(widget=forms.RadioSelect(choices=STARS_CHOICES), label='Оценка') stars = forms.IntegerField(widget=forms.RadioSelect(choices=STARS_CHOICES), label='Оценка')

@ -18,11 +18,13 @@ FIELD_TYPE_CHOICES = (
(FIELD_TYPE_SELECT, 'Список'), (FIELD_TYPE_SELECT, 'Список'),
) )
def photo_filename(instance, filename): def photo_filename(instance, filename):
from slugify import slugify_filename from slugify import slugify_filename
return 'photo_uploads/' + slugify_filename(filename) return 'photo_uploads/' + slugify_filename(filename)
class Category(models.Model): class Category(models.Model):
title = models.CharField('Наименование', max_length=256, default='') title = models.CharField('Наименование', max_length=256, default='')
h1 = models.CharField('Заголовок h1', max_length=256, default='', null=True, blank=True) h1 = models.CharField('Заголовок h1', max_length=256, default='', null=True, blank=True)
@ -31,14 +33,14 @@ class Category(models.Model):
meta_text = models.TextField('Мета текст', default='', null=True, blank=True) meta_text = models.TextField('Мета текст', default='', null=True, blank=True)
slug = models.SlugField('Ссылка', max_length=256, default='') slug = models.SlugField('Ссылка', max_length=256, default='')
description = models.TextField( description = models.TextField(
'Описание', default='', null=True, blank=True) 'Описание', default='', null=True, blank=True)
parent = models.ForeignKey( parent = models.ForeignKey(
'self', default=None, null=True, blank=True, related_name='childs', 'self', default=None, null=True, blank=True, related_name='childs',
verbose_name='Родительская категория') verbose_name='Родительская категория')
hide_products = models.BooleanField('Показывать дочерние категории вместо товаров', default=False) hide_products = models.BooleanField('Показывать дочерние категории вместо товаров', default=False)
image = models.ImageField('Картинка', upload_to=photo_filename, default=None, null=True, blank=True) image = models.ImageField('Картинка', upload_to=photo_filename, default=None, null=True, blank=True)
attributes = models.ManyToManyField( attributes = models.ManyToManyField(
'Attribute', through='AttributeForCategory') 'Attribute', through='AttributeForCategory')
priority = models.IntegerField('Приоритет', default=0) priority = models.IntegerField('Приоритет', default=0)
class Meta: class Meta:
@ -82,12 +84,12 @@ class Category(models.Model):
def brands(self): def brands(self):
brand_qs = self.get_all_products().values( brand_qs = self.get_all_products().values(
'brand').annotate(count_brands=Count('brand')) 'brand').annotate(count_brands=Count('brand'))
brand_pks = [v['brand'] for v in brand_qs] brand_pks = [v['brand'] for v in brand_qs]
return Brand.objects.filter(pk__in=brand_pks).order_by('title') return Brand.objects.filter(pk__in=brand_pks).order_by('title')
def get_childs_ordered_by_count(self): def get_childs_ordered_by_count(self):
return self.childs.annotate(Count('childs')).order_by('priority') #, '-childs__count') return self.childs.annotate(Count('childs')).order_by('priority') # , '-childs__count')
class Attribute(models.Model): class Attribute(models.Model):
@ -104,15 +106,15 @@ class Attribute(models.Model):
class AttributeForCategory(models.Model): class AttributeForCategory(models.Model):
category = models.ForeignKey( category = models.ForeignKey(
Category, verbose_name='Категория', related_name='attr_cat') Category, verbose_name='Категория', related_name='attr_cat')
attribute = models.ForeignKey( attribute = models.ForeignKey(
Attribute, verbose_name='Атрибут в категории', Attribute, verbose_name='Атрибут в категории',
related_name='for_category') related_name='for_category')
field_type = models.CharField( field_type = models.CharField(
'Тип атрибута', choices=FIELD_TYPE_CHOICES, 'Тип атрибута', choices=FIELD_TYPE_CHOICES,
default='char', max_length=10) default='char', max_length=10)
choises_array = ArrayField( choises_array = ArrayField(
models.CharField(max_length=50), blank=True, default=[]) models.CharField(max_length=50), blank=True, default=[])
priority = models.IntegerField('Приоритет', default=0) priority = models.IntegerField('Приоритет', default=0)
class Meta: class Meta:
@ -122,12 +124,12 @@ class AttributeForCategory(models.Model):
def __str__(self): def __str__(self):
if self.field_type == FIELD_TYPE_SELECT: if self.field_type == FIELD_TYPE_SELECT:
return '{}: {} ({}: {})'.format( return '{}: {} ({}: {})'.format(
self.category.title, self.attribute.title, self.category.title, self.attribute.title,
self.get_field_type_display(), self.choises_array) self.get_field_type_display(), self.choises_array)
else: else:
return '{}: {} ({})'.format( return '{}: {} ({})'.format(
self.category.title, self.attribute.title, self.category.title, self.attribute.title,
self.get_field_type_display()) self.get_field_type_display())
def get_posible_values(self): def get_posible_values(self):
retval = [] retval = []
@ -167,12 +169,12 @@ class Product(models.Model):
title = models.CharField('Наименование', max_length=256, default='') title = models.CharField('Наименование', max_length=256, default='')
slug = models.SlugField('Ссылка', max_length=256, default='') slug = models.SlugField('Ссылка', max_length=256, default='')
categories = models.ManyToManyField( categories = models.ManyToManyField(
Category, verbose_name='Категории', related_name='products') Category, verbose_name='Категории', related_name='products')
description = models.TextField( description = models.TextField(
'Описание', default='', null=True, blank=True) 'Описание', default='', null=True, blank=True)
brand = models.ForeignKey(Brand, verbose_name='Брэнд') brand = models.ForeignKey(Brand, verbose_name='Брэнд')
attirbutes = models.ManyToManyField( attirbutes = models.ManyToManyField(
AttributeForCategory, through='AttributesInProduct') AttributeForCategory, through='AttributesInProduct')
is_leader = models.BooleanField('Лидер продаж', default=False) is_leader = models.BooleanField('Лидер продаж', default=False)
on_main = models.BooleanField('На главной', default=False) on_main = models.BooleanField('На главной', default=False)
priority = models.IntegerField('Приоритет для главной', default=0) priority = models.IntegerField('Приоритет для главной', default=0)
@ -217,15 +219,15 @@ class Product(models.Model):
else: else:
return 0 return 0
# retval = self.variations.filter(in_stock__gt=0).aggregate( # retval = self.variations.filter(in_stock__gt=0).aggregate(
# Min('price'))['price__min'] or 0 # Min('price'))['price__min'] or 0
# if not retval: # if not retval:
# retval = self.variations.aggregate(Min('price'))['price__min'] or 0 # retval = self.variations.aggregate(Min('price'))['price__min'] or 0
# #
# if retval > 10000: # if retval > 10000:
# return int(retval * Decimal('.95')) # return int(retval * Decimal('.95'))
# else: # else:
# return int(retval * Decimal('.93')) # return int(retval * Decimal('.93'))
def get_absolute_url(self): def get_absolute_url(self):
retval = '/store/' retval = '/store/'
@ -238,14 +240,14 @@ class Product(models.Model):
class ProductVariation(models.Model): class ProductVariation(models.Model):
product = models.ForeignKey( product = models.ForeignKey(
Product, verbose_name='Товар', related_name='variations') Product, verbose_name='Товар', related_name='variations')
variation = models.CharField('Вариация', max_length=512, default='') variation = models.CharField('Вариация', max_length=512, default='')
price = models.IntegerField( price = models.IntegerField(
'Цена (тенге)', default=0, null=False, blank=False) 'Цена (тенге)', default=0, null=False, blank=False)
in_stock = models.IntegerField( in_stock = models.IntegerField(
'В наличии (шт.)', default=1, null=False, blank=False) 'В наличии (шт.)', default=1, null=False, blank=False)
article = models.CharField( article = models.CharField(
'Артикул', max_length=32, null=True, blank=True, default='') 'Артикул', max_length=32, null=True, blank=True, default='')
weight = models.FloatField('Вес (кг)', default=0.1, null=False, blank=False) weight = models.FloatField('Вес (кг)', default=0.1, null=False, blank=False)
discount = models.IntegerField('Скидка %', default=0, blank=False, null=False) discount = models.IntegerField('Скидка %', default=0, blank=False, null=False)
@ -268,12 +270,12 @@ class ProductVariation(models.Model):
class AttributesInProduct(models.Model): class AttributesInProduct(models.Model):
attribute = models.ForeignKey( attribute = models.ForeignKey(
AttributeForCategory, verbose_name='Атрибут в категории', AttributeForCategory, verbose_name='Атрибут в категории',
related_name='in_product') related_name='in_product')
product = models.ForeignKey( product = models.ForeignKey(
Product, verbose_name='Товар', related_name='product_attributes') Product, verbose_name='Товар', related_name='product_attributes')
value = models.CharField( value = models.CharField(
'Значение', max_length=64, default=None, blank=True, null=True) 'Значение', max_length=64, default=None, blank=True, null=True)
class Meta: class Meta:
verbose_name = 'атрибут в товаре' verbose_name = 'атрибут в товаре'
@ -287,7 +289,7 @@ class SlugImageField(models.ImageField):
class ImageInProduct(models.Model): class ImageInProduct(models.Model):
image = models.ImageField('Картинка', upload_to=photo_filename) image = models.ImageField('Картинка', upload_to=photo_filename)
product = models.ForeignKey( product = models.ForeignKey(
Product, verbose_name='Товар', related_name='images') Product, verbose_name='Товар', related_name='images')
is_main = models.BooleanField('Главная', default=False) is_main = models.BooleanField('Главная', default=False)
class Meta: class Meta:
@ -314,24 +316,24 @@ class OrderData(models.Model):
profile = models.ForeignKey(Profile, default=None, null=True, blank=False, profile = models.ForeignKey(Profile, default=None, null=True, blank=False,
related_name='orders') related_name='orders')
first_name = models.CharField( first_name = models.CharField(
'Имя', max_length=64, blank=False, null=False) 'Имя', max_length=64, blank=False, null=False)
last_name = models.CharField( last_name = models.CharField(
'Фамилия', max_length=64, blank=False, null=False) 'Фамилия', max_length=64, blank=False, null=False)
phone = models.CharField( phone = models.CharField(
'Номер мобильного телефона', max_length=15, blank=False, null=False) 'Номер мобильного телефона', max_length=15, blank=False, null=False)
email = models.EmailField( email = models.EmailField(
'Email', blank=False, null=False) 'Email', blank=False, null=False)
city = models.CharField( city = models.CharField(
'Город', max_length=20, blank=False, null=False, choices=alemtat_get_cities_tuple()) 'Город', max_length=20, blank=False, null=False, choices=alemtat_get_cities_tuple())
address = models.CharField( address = models.CharField(
'Адрес', max_length=100, blank=False, null=False) 'Адрес', max_length=100, blank=False, null=False)
deliv_type = models.CharField( deliv_type = models.CharField(
'Способ доставки', max_length=2, blank=False, null=False, default='', 'Способ доставки', max_length=2, blank=False, null=False, default='',
choices=alemtat_get_services_tuple()) choices=alemtat_get_services_tuple())
items = models.CharField( items = models.CharField(
'Товары', max_length=256, blank=False, null=False, default='') 'Товары', max_length=256, blank=False, null=False, default='')
amount = models.FloatField( amount = models.FloatField(
'Сумма', blank=False, null=False, default=0.0) 'Сумма', blank=False, null=False, default=0.0)
status = models.IntegerField('Статус', default=0, null=False, blank=False, status = models.IntegerField('Статус', default=0, null=False, blank=False,
choices=STATUS_CHOICES) choices=STATUS_CHOICES)
@ -341,9 +343,9 @@ class OrderData(models.Model):
def __str__(self): def __str__(self):
return '{} {}: {}'.format( return '{} {}: {}'.format(
self.first_name, self.first_name,
self.last_name, self.last_name,
self.amount self.amount
) )
def get_status(self): def get_status(self):

@ -2,14 +2,9 @@ from django.conf.urls import patterns, url
from django.views.generic import RedirectView from django.views.generic import RedirectView
from .views import * from .views import *
urlpatterns = patterns('', urlpatterns = patterns('',
url(r'^$', RedirectView.as_view( url(r'^$', RedirectView.as_view(
url='/', permanent=True), name='store_index'), url='/', permanent=True), name='store_index'),
url(r'^cart/$', CartDetailView.as_view(), url(r'^cart/$', CartDetailView.as_view(),
name='store_cart_detail'), name='store_cart_detail'),
@ -22,9 +17,9 @@ urlpatterns = patterns('',
name='store_sale'), name='store_sale'),
url(r'^cart/add/$', CartAddView.as_view( url(r'^cart/add/$', CartAddView.as_view(
permanent=False), name='store_cart_add'), permanent=False), name='store_cart_add'),
url(r'^cart/remove/$', CartRemoveView.as_view( url(r'^cart/remove/$', CartRemoveView.as_view(
permanent=False), name='store_cart_remove'), permanent=False), name='store_cart_remove'),
url(r'^(?P<categories>.+)/product-(?P<slug>.+)/$', url(r'^(?P<categories>.+)/product-(?P<slug>.+)/$',
ProductView.as_view(), name='store_product'), ProductView.as_view(), name='store_product'),
url(r'^(?P<categories>.+)/$', url(r'^(?P<categories>.+)/$',

@ -20,6 +20,7 @@ from django.conf import settings
from django.contrib.sitemaps import Sitemap from django.contrib.sitemaps import Sitemap
import kkb import kkb
class CategoryBaseView(object): class CategoryBaseView(object):
category = None category = None
@ -90,8 +91,8 @@ class CategoryView(CategoryBaseView, TemplateView):
attr_values = [v.strip() for v in attr_values] attr_values = [v.strip() for v in attr_values]
if attr_values: if attr_values:
self.products_qs = self.products_qs.filter( self.products_qs = self.products_qs.filter(
product_attributes__attribute__attribute__in=attr, product_attributes__attribute__attribute__in=attr,
product_attributes__value__in=attr_values).distinct() product_attributes__value__in=attr_values).distinct()
def get_brands_by_products(self): def get_brands_by_products(self):
pass pass
@ -103,7 +104,8 @@ class CategoryView(CategoryBaseView, TemplateView):
q = self.request.GET.get('q', '') q = self.request.GET.get('q', '')
self.products_qs = Product.objects.filter(title__icontains=q).order_by('-pk') self.products_qs = Product.objects.filter(title__icontains=q).order_by('-pk')
brands_pks = [item.brand.pk for item in self.products_qs] brands_pks = [item.brand.pk for item in self.products_qs]
retval['brands'] = Brand.objects.filter(pk__in=brands_pks).order_by('title')#list(set(map(lambda item: item.brand, self.products_qs))) retval['brands'] = Brand.objects.filter(pk__in=brands_pks).order_by(
'title') # list(set(map(lambda item: item.brand, self.products_qs)))
elif self.is_sale: elif self.is_sale:
self.products_qs = Product.objects.filter(variations__discount__gt=0).distinct().order_by('-pk') self.products_qs = Product.objects.filter(variations__discount__gt=0).distinct().order_by('-pk')
brands_pks = [item.brand.pk for item in self.products_qs] brands_pks = [item.brand.pk for item in self.products_qs]
@ -120,7 +122,7 @@ class CategoryView(CategoryBaseView, TemplateView):
if self.brand_pks: if self.brand_pks:
self.products_qs = self.products_qs.filter( self.products_qs = self.products_qs.filter(
brand__pk__in=self.brand_pks) brand__pk__in=self.brand_pks)
if self.sort: if self.sort:
sort_parameter = dict(self.ORDER_PARAMETERS)[self.sort] sort_parameter = dict(self.ORDER_PARAMETERS)[self.sort]
@ -128,12 +130,12 @@ class CategoryView(CategoryBaseView, TemplateView):
if sort_parameter in ['price_min', '-price_min']: if sort_parameter in ['price_min', '-price_min']:
preordered_qs = self.products_qs.extra( preordered_qs = self.products_qs.extra(
select={ select={
'price_min': 'price_min':
'SELECT MIN(price) FROM store_productvariation ' + 'SELECT MIN(price) FROM store_productvariation ' +
'WHERE store_productvariation.product_id ' + 'WHERE store_productvariation.product_id ' +
'= store_product.id' '= store_product.id'
}) })
self.products_qs = preordered_qs.order_by(sort_parameter) self.products_qs = preordered_qs.order_by(sort_parameter)
@ -144,7 +146,6 @@ class CategoryView(CategoryBaseView, TemplateView):
retval['products'] = self.products_qs retval['products'] = self.products_qs
retval['q'] = q retval['q'] = q
retval['is_sale'] = self.is_sale retval['is_sale'] = self.is_sale
return retval return retval
@ -189,7 +190,7 @@ class CartAddView(RedirectView):
cart = Cart(self.request) cart = Cart(self.request)
try: try:
item_variant = ProductVariation.objects.get( item_variant = ProductVariation.objects.get(
pk=self.request.GET.get('pk')) pk=self.request.GET.get('pk'))
except ProductVariation.DoesNotExist: except ProductVariation.DoesNotExist:
return redirect('/') return redirect('/')
count = self.request.GET.get('count') count = self.request.GET.get('count')
@ -242,10 +243,10 @@ class CartDetailView(TemplateView):
a = AlemTat() a = AlemTat()
cart = Cart(request) cart = Cart(request)
order_amount = dict(a.get_amount( order_amount = dict(a.get_amount(
order.city, order.city,
len(cart.items), len(cart.items),
cart.weight, cart.weight,
order.deliv_type, order.deliv_type,
)) ))
order.phone = normalize_phone(order.phone) order.phone = normalize_phone(order.phone)
order.amount = order_amount['AmountPlusFSAmount'] + cart.total order.amount = order_amount['AmountPlusFSAmount'] + cart.total
@ -259,10 +260,10 @@ class CartDetailView(TemplateView):
send_email(profile, template='mail/order.jinja') send_email(profile, template='mail/order.jinja')
except: except:
profile = Profile.objects.create( profile = Profile.objects.create(
phone=normalize_phone(order.phone), phone=normalize_phone(order.phone),
email=order.email, email=order.email,
first_name=order.first_name, first_name=order.first_name,
last_name=order.last_name, last_name=order.last_name,
) )
profile.set_password(settings.PROFILE_TEMP_PASSWORD) profile.set_password(settings.PROFILE_TEMP_PASSWORD)
profile.save() profile.save()
@ -292,10 +293,10 @@ def get_order_amount(request):
a = AlemTat() a = AlemTat()
cart = Cart(request) cart = Cart(request)
retval = dict(a.get_amount( retval = dict(a.get_amount(
request.GET['city'], request.GET['city'],
len(cart.items), len(cart.items),
cart.weight, cart.weight,
request.GET['deliv'], request.GET['deliv'],
)) ))
return JsonResponse(retval) return JsonResponse(retval)
@ -322,12 +323,13 @@ def order_kkb(request, order):
c_appendix = dict(items=cart.items, deliv_price=order.amount - cart.total) c_appendix = dict(items=cart.items, deliv_price=order.amount - cart.total)
render_appendix = render_to_string('kkb/appendix.xml', c_appendix) render_appendix = render_to_string('kkb/appendix.xml', c_appendix)
appendix = base64.b64encode( appendix = base64.b64encode(
bytes(render_appendix, 'utf-8') bytes(render_appendix, 'utf-8')
).decode('utf-8') ).decode('utf-8')
c = dict(order=order, context=context, appendix=appendix) c = dict(order=order, context=context, appendix=appendix)
return render(request, 'kkb.jinja', c) return render(request, 'kkb.jinja', c)
def kkb_result(request): def kkb_result(request):
mail_admins('POST', str(request.POST)) mail_admins('POST', str(request.POST))
response = request.POST['response'] response = request.POST['response']

@ -1,11 +0,0 @@
Content-Type: text/plain; charset="utf-8"
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Subject: =?utf-8?b?W0RqYW5nb10g0J7RgdGC0LDQstC40LvQuCDQvtGC0LfRi9Cy?=
From: admin@batiskaf-kz.kz
To: spacenergy@me.com, admin@batiskaf-kz.kz
Date: Tue, 30 Jun 2015 16:48:49 -0000
Message-ID: <20150630164849.7811.11121@MacBook-Pro.local>
Смотреть в админке
-------------------------------------------------------------------------------

@ -1,11 +0,0 @@
Content-Type: text/plain; charset="utf-8"
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Subject: =?utf-8?b?W0RqYW5nb10g0J7RgdGC0LDQstC40LvQuCDQvtGC0LfRi9Cy?=
From: admin@batiskaf-kz.kz
To: spacenergy@me.com, admin@batiskaf-kz.kz
Date: Tue, 30 Jun 2015 16:49:31 -0000
Message-ID: <20150630164931.7872.76299@MacBook-Pro.local>
Смотреть в админке
-------------------------------------------------------------------------------

@ -1,11 +0,0 @@
Content-Type: text/plain; charset="utf-8"
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Subject: =?utf-8?b?W0RqYW5nb10g0J7RgdGC0LDQstC40LvQuCDQvtGC0LfRi9Cy?=
From: admin@batiskaf-kz.kz
To: spacenergy@me.com, admin@batiskaf-kz.kz
Date: Tue, 30 Jun 2015 17:42:52 -0000
Message-ID: <20150630174252.10153.22812@MacBook-Pro.local>
Смотреть в админке
-------------------------------------------------------------------------------

@ -1,13 +0,0 @@
Content-Type: text/plain; charset="utf-8"
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Subject:
=?utf-8?b?W0RqYW5nb10g0J7RgdGC0LDQstC40LvQuCDQvtGC0LfRi9CyINC+INGC0L7QstCw?=
=?utf-8?b?0YDQtQ==?=
From: admin@batiskaf-kz.kz
To: spacenergy@me.com, admin@batiskaf-kz.kz
Date: Wed, 01 Jul 2015 06:59:03 -0000
Message-ID: <20150701065903.5216.45243@MacBook-Pro.local>
Смотреть в админке
-------------------------------------------------------------------------------

@ -1,13 +0,0 @@
Content-Type: text/plain; charset="utf-8"
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Subject:
=?utf-8?b?W0RqYW5nb10g0J7RgdGC0LDQstC40LvQuCDQvtGC0LfRi9CyINC+INGC0L7QstCw?=
=?utf-8?b?0YDQtQ==?=
From: admin@batiskaf-kz.kz
To: spacenergy@me.com, admin@batiskaf-kz.kz
Date: Wed, 01 Jul 2015 06:59:16 -0000
Message-ID: <20150701065916.5216.63259@MacBook-Pro.local>
Смотреть в админке
-------------------------------------------------------------------------------

@ -1,11 +0,0 @@
Content-Type: text/plain; charset="utf-8"
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Subject: =?utf-8?b?W0RqYW5nb10g0J7RhNC+0YDQvNC40LvQuCDQt9Cw0LrQsNC3?=
From: admin@batiskaf-kz.kz
To: spacenergy@me.com, admin@batiskaf-kz.kz
Date: Mon, 27 Jul 2015 13:22:04 -0000
Message-ID: <20150727132204.59049.16189@macbook-pro.local>
Смотреть в админке
-------------------------------------------------------------------------------

@ -1,28 +0,0 @@
Content-Type: text/plain; charset="utf-8"
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Subject: =?utf-8?b?0KDQvtCx0L7RgiBCYXRpc2thZi1rei5reg==?=
From: admin@batiskaf-kz.kz
To: asdfasdf@sadf.com
Date: Mon, 27 Jul 2015 13:22:04 -0000
Message-ID: <20150727132204.59049.39888@macbook-pro.local>
Привет, gre!
Поздравляем, вы успешно оформили заказ.
Для того, чтобы его было удобнее отслеживать, мы создали для вас аккаунт в нашем интернет-магазине.
Вы можете войти в него, используя свой номер телефона +7:
http://batiskaf-kz.kz/account/
Это автоматическое сообщение. Отвечать на него не нужно!
С Уважением,
Администрация Batiskaf-kz.kz
--
Skype: batiskaf_kz
Тел: +7 (777) 163-14-34 или +7 (775) 859-12-17
-------------------------------------------------------------------------------

@ -1,37 +0,0 @@
Content-Type: text/plain; charset="utf-8"
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Subject: =?utf-8?b?0KDQvtCx0L7RgiBCYXRpc2thZi1rei5reg==?=
From: admin@batiskaf-kz.kz
To: asdfasdf@sadf.com
Date: Mon, 27 Jul 2015 18:35:20 -0000
Message-ID: <20150727183520.60869.33366@macbook-pro.local>
Привет, gre!
Поздравляем, вы успешно оформили заказ.
Для того, чтобы его было удобнее отслеживать, войдите в свой личный кабинет, используя свой номер телефона +7:
http://batiskaf-kz.kz/account/
Это автоматическое сообщение. Отвечать на него не нужно!
С Уважением,
Администрация Batiskaf-kz.kz
--
Skype: batiskaf_kz
Тел: +7 (777) 163-14-34 или +7 (775) 859-12-17
-------------------------------------------------------------------------------
Content-Type: text/plain; charset="utf-8"
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Subject: =?utf-8?b?W0RqYW5nb10g0J7RhNC+0YDQvNC40LvQuCDQt9Cw0LrQsNC3?=
From: admin@batiskaf-kz.kz
To: spacenergy@me.com, admin@batiskaf-kz.kz
Date: Mon, 27 Jul 2015 18:35:20 -0000
Message-ID: <20150727183520.60869.15005@macbook-pro.local>
Смотреть в админке
-------------------------------------------------------------------------------

@ -1,37 +0,0 @@
Content-Type: text/plain; charset="utf-8"
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Subject: =?utf-8?b?0KDQvtCx0L7RgiBCYXRpc2thZi1rei5reg==?=
From: admin@batiskaf-kz.kz
To: asdfasdf@sadf.com
Date: Mon, 27 Jul 2015 19:09:13 -0000
Message-ID: <20150727190913.62010.2321@macbook-pro.local>
Привет, gre!
Поздравляем, вы успешно оформили заказ.
Для того, чтобы его было удобнее отслеживать, войдите в свой личный кабинет, используя свой номер телефона +7:
http://batiskaf-kz.kz/account/
Это автоматическое сообщение. Отвечать на него не нужно!
С Уважением,
Администрация Batiskaf-kz.kz
--
Skype: batiskaf_kz
Тел: +7 (777) 163-14-34 или +7 (775) 859-12-17
-------------------------------------------------------------------------------
Content-Type: text/plain; charset="utf-8"
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Subject: =?utf-8?b?W0RqYW5nb10g0J7RhNC+0YDQvNC40LvQuCDQt9Cw0LrQsNC3?=
From: admin@batiskaf-kz.kz
To: spacenergy@me.com, admin@batiskaf-kz.kz
Date: Mon, 27 Jul 2015 19:09:13 -0000
Message-ID: <20150727190913.62010.34998@macbook-pro.local>
Смотреть в админке
-------------------------------------------------------------------------------

@ -1,37 +0,0 @@
Content-Type: text/plain; charset="utf-8"
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Subject: =?utf-8?b?0KDQvtCx0L7RgiBCYXRpc2thZi1rei5reg==?=
From: admin@batiskaf-kz.kz
To: asdfasdf@sadf.com
Date: Mon, 27 Jul 2015 19:09:25 -0000
Message-ID: <20150727190925.62010.23670@macbook-pro.local>
Привет, gre!
Поздравляем, вы успешно оформили заказ.
Для того, чтобы его было удобнее отслеживать, войдите в свой личный кабинет, используя свой номер телефона +7:
http://batiskaf-kz.kz/account/
Это автоматическое сообщение. Отвечать на него не нужно!
С Уважением,
Администрация Batiskaf-kz.kz
--
Skype: batiskaf_kz
Тел: +7 (777) 163-14-34 или +7 (775) 859-12-17
-------------------------------------------------------------------------------
Content-Type: text/plain; charset="utf-8"
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Subject: =?utf-8?b?W0RqYW5nb10g0J7RhNC+0YDQvNC40LvQuCDQt9Cw0LrQsNC3?=
From: admin@batiskaf-kz.kz
To: spacenergy@me.com, admin@batiskaf-kz.kz
Date: Mon, 27 Jul 2015 19:09:25 -0000
Message-ID: <20150727190925.62010.21647@macbook-pro.local>
Смотреть в админке
-------------------------------------------------------------------------------

@ -1,37 +0,0 @@
Content-Type: text/plain; charset="utf-8"
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Subject: =?utf-8?b?0KDQvtCx0L7RgiBCYXRpc2thZi1rei5reg==?=
From: admin@batiskaf-kz.kz
To: asdfasdf@sadf.com
Date: Mon, 27 Jul 2015 19:14:21 -0000
Message-ID: <20150727191421.62010.24196@macbook-pro.local>
Привет, gre!
Поздравляем, вы успешно оформили заказ.
Для того, чтобы его было удобнее отслеживать, войдите в свой личный кабинет, используя свой номер телефона +7:
http://batiskaf-kz.kz/account/
Это автоматическое сообщение. Отвечать на него не нужно!
С Уважением,
Администрация Batiskaf-kz.kz
--
Skype: batiskaf_kz
Тел: +7 (777) 163-14-34 или +7 (775) 859-12-17
-------------------------------------------------------------------------------
Content-Type: text/plain; charset="utf-8"
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Subject: =?utf-8?b?W0RqYW5nb10g0J7RhNC+0YDQvNC40LvQuCDQt9Cw0LrQsNC3?=
From: admin@batiskaf-kz.kz
To: spacenergy@me.com, admin@batiskaf-kz.kz
Date: Mon, 27 Jul 2015 19:14:21 -0000
Message-ID: <20150727191421.62010.4569@macbook-pro.local>
Смотреть в админке
-------------------------------------------------------------------------------

@ -1,26 +0,0 @@
Content-Type: text/plain; charset="utf-8"
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Subject: =?utf-8?b?0KDQvtCx0L7RgiBCYXRpc2thZi1rei5reg==?=
From: admin@batiskaf-kz.kz
To: asdfasdf@sadf.com
Date: Tue, 28 Jul 2015 16:24:12 -0000
Message-ID: <20150728162412.68057.81489@macbook-pro.local>
Привет, gre!
Поздравляем, вы успешно оформили заказ.
Для того, чтобы его было удобнее отслеживать, войдите в свой личный кабинет, используя свой номер телефона +7:
http://batiskaf-kz.kz/account/
Это автоматическое сообщение. Отвечать на него не нужно!
С Уважением,
Администрация Batiskaf-kz.kz
--
Skype: batiskaf_kz
Тел: +7 (777) 163-14-34 или +7 (775) 859-12-17
-------------------------------------------------------------------------------

@ -1,11 +0,0 @@
Content-Type: text/plain; charset="utf-8"
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Subject: =?utf-8?b?W0RqYW5nb10g0J7RhNC+0YDQvNC40LvQuCDQt9Cw0LrQsNC3?=
From: admin@batiskaf-kz.kz
To: spacenergy@me.com, admin@batiskaf-kz.kz
Date: Tue, 28 Jul 2015 16:24:12 -0000
Message-ID: <20150728162412.68057.17322@macbook-pro.local>
Смотреть в админке
-------------------------------------------------------------------------------

@ -1,26 +0,0 @@
Content-Type: text/plain; charset="utf-8"
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Subject: =?utf-8?b?0KDQvtCx0L7RgiBCYXRpc2thZi1rei5reg==?=
From: admin@batiskaf-kz.kz
To: asdfasdf@sadf.com
Date: Tue, 28 Jul 2015 16:40:18 -0000
Message-ID: <20150728164018.68341.81056@macbook-pro.local>
Привет, gre!
Поздравляем, вы успешно оформили заказ.
Для того, чтобы его было удобнее отслеживать, войдите в свой личный кабинет, используя свой номер телефона +7:
http://batiskaf-kz.kz/account/
Это автоматическое сообщение. Отвечать на него не нужно!
С Уважением,
Администрация Batiskaf-kz.kz
--
Skype: batiskaf_kz
Тел: +7 (777) 163-14-34 или +7 (775) 859-12-17
-------------------------------------------------------------------------------

@ -1,11 +0,0 @@
Content-Type: text/plain; charset="utf-8"
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Subject: =?utf-8?b?W0RqYW5nb10g0J7RhNC+0YDQvNC40LvQuCDQt9Cw0LrQsNC3?=
From: admin@batiskaf-kz.kz
To: spacenergy@me.com, admin@batiskaf-kz.kz
Date: Tue, 28 Jul 2015 16:40:18 -0000
Message-ID: <20150728164018.68341.64244@macbook-pro.local>
Смотреть в админке
-------------------------------------------------------------------------------

@ -1,26 +0,0 @@
Content-Type: text/plain; charset="utf-8"
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Subject: =?utf-8?b?0KDQvtCx0L7RgiBCYXRpc2thZi1rei5reg==?=
From: admin@batiskaf-kz.kz
To: asdfasdf@sadf.com
Date: Tue, 28 Jul 2015 16:41:47 -0000
Message-ID: <20150728164147.68341.19068@macbook-pro.local>
Привет, gre!
Поздравляем, вы успешно оформили заказ.
Для того, чтобы его было удобнее отслеживать, войдите в свой личный кабинет, используя свой номер телефона +7:
http://batiskaf-kz.kz/account/
Это автоматическое сообщение. Отвечать на него не нужно!
С Уважением,
Администрация Batiskaf-kz.kz
--
Skype: batiskaf_kz
Тел: +7 (777) 163-14-34 или +7 (775) 859-12-17
-------------------------------------------------------------------------------

@ -1,11 +0,0 @@
Content-Type: text/plain; charset="utf-8"
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Subject: =?utf-8?b?W0RqYW5nb10g0J7RhNC+0YDQvNC40LvQuCDQt9Cw0LrQsNC3?=
From: admin@batiskaf-kz.kz
To: spacenergy@me.com, admin@batiskaf-kz.kz
Date: Tue, 28 Jul 2015 16:41:47 -0000
Message-ID: <20150728164147.68341.15616@macbook-pro.local>
Смотреть в админке
-------------------------------------------------------------------------------

@ -1,11 +0,0 @@
Content-Type: text/plain; charset="utf-8"
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Subject: =?utf-8?b?W0RqYW5nb10g0J7RhNC+0YDQvNC40LvQuCDQt9Cw0LrQsNC3?=
From: admin@batiskaf-kz.kz
To: spacenergy@me.com, admin@batiskaf-kz.kz
Date: Tue, 28 Jul 2015 16:45:04 -0000
Message-ID: <20150728164504.68482.44783@macbook-pro.local>
Смотреть в админке
-------------------------------------------------------------------------------

@ -1,26 +0,0 @@
Content-Type: text/plain; charset="utf-8"
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Subject: =?utf-8?b?0KDQvtCx0L7RgiBCYXRpc2thZi1rei5reg==?=
From: admin@batiskaf-kz.kz
To: asdfasdf@sadf.com
Date: Tue, 28 Jul 2015 16:45:04 -0000
Message-ID: <20150728164504.68482.57283@macbook-pro.local>
Привет, gre!
Поздравляем, вы успешно оформили заказ.
Для того, чтобы его было удобнее отслеживать, войдите в свой личный кабинет, используя свой номер телефона +7:
http://batiskaf-kz.kz/account/
Это автоматическое сообщение. Отвечать на него не нужно!
С Уважением,
Администрация Batiskaf-kz.kz
--
Skype: batiskaf_kz
Тел: +7 (777) 163-14-34 или +7 (775) 859-12-17
-------------------------------------------------------------------------------

@ -1,26 +0,0 @@
Content-Type: text/plain; charset="utf-8"
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Subject: =?utf-8?b?0KDQvtCx0L7RgiBCYXRpc2thZi1rei5reg==?=
From: admin@batiskaf-kz.kz
To: spacenergy@asd.com
Date: Tue, 28 Jul 2015 16:58:43 -0000
Message-ID: <20150728165843.68923.61730@macbook-pro.local>
Привет, Виталий1!
Поздравляем, вы успешно оформили заказ.
Для того, чтобы его было удобнее отслеживать, войдите в свой личный кабинет, используя свой номер телефона +77083044916:
http://batiskaf-kz.kz/account/
Это автоматическое сообщение. Отвечать на него не нужно!
С Уважением,
Администрация Batiskaf-kz.kz
--
Skype: batiskaf_kz
Тел: +7 (777) 163-14-34 или +7 (775) 859-12-17
-------------------------------------------------------------------------------

@ -1,11 +0,0 @@
Content-Type: text/plain; charset="utf-8"
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Subject: =?utf-8?b?W0RqYW5nb10g0J7RhNC+0YDQvNC40LvQuCDQt9Cw0LrQsNC3?=
From: admin@batiskaf-kz.kz
To: spacenergy@me.com, admin@batiskaf-kz.kz
Date: Tue, 28 Jul 2015 16:58:44 -0000
Message-ID: <20150728165844.68923.14083@macbook-pro.local>
Смотреть в админке
-------------------------------------------------------------------------------
Loading…
Cancel
Save