remotes/origin/mitri4
spacenergy 10 years ago
parent fdc4183a8e
commit 1112d509b0
  1. 6
      batiskaf/templates/jinja2/contacts.jinja
  2. 86
      batiskaf/templates/jinja2/fest_register.html
  3. 16
      batiskaf/templates/jinja2/fest_success.html
  4. 2
      batiskaf/urls.py
  5. 14
      main/admin.py
  6. 22
      main/forms.py
  7. 29
      main/migrations/0012_festuser.py
  8. 24
      main/models.py
  9. 22
      main/views.py
  10. 20
      store/migrations/0054_auto_20160715_1811.py
  11. 2
      store/views.py

@ -33,9 +33,9 @@
<h5 class="text-left">г. Алматы</h5>
ул. Толе Би, 285 В.<br>
Телефон: +7 (776) 604-56-56<br>
Вторник–Суббота: 10:00–19:00<br>
Воскресенье: 10:00–15:00<br>
Понедельник: выходной<br>
Понедельник-пятница: 10:00–19:00<br>
Суббота: 10:00–16:00<br>
Воскресенье: выходной<br>
<h5 class="text-left">г. Усть-Каменогорск</h5>
ул. Крылова, 104.<br>
Телефон: +7 (777) 163-14-34<br>

@ -0,0 +1,86 @@
{% extends 'base.jinja' %} {% block title %} Регистрация на Beuchat Fest Казахстан 2016 {% endblock %} {% block meta_description
%} Регистрация на Beuchat Fest Казахстан 2016 {% endblock %} {% block meta_keywords %} Регистрация, Beuchat Fest, Beuchat,
Магазин, Интернет-Магазин, Батискаф-Казахстан {% endblock %} {% block content %}
<div class=" breadcrumbs">
<ol class="breadcrumb breadcrumb-arrow">
<li><a href="/">Главная</a></li>
<li class="active"><span>Регистрация на Beuchat Fest Казахстан 2016</span></li>
</ol>
</div>
<h2 class="">
Регистрация на Beuchat Fest Казахстан 2016
</h2><br/>
<div class="row">
<div class="col-xs-7">
<h4 class="text-center">Программа фестиваля<br/>
<small class="text-info">5-7 августа, ВКО, Сибинские озера, 3-е озеро</small></h4>
<br/>
<h4>5-6 августа</h4>
<ul>
<li>Заезд участников фестиваля, размещение</li>
<li>Пробные погружения, разведка акватории</li>
</ul>
<br/>
<h4>6 августа</h4>
<ul>
<li><strong>10:00</strong> Сбор всех участников фестиваля возле сцены. Анонс предстоящего мероприятия и открытие.
</li>
</ul>
<h6>На протяжении всего дня:</h6>
<ul>
<li><strong>10:30</strong>Приветствие администрации Уланского района, представителей компаний «Батискаф Казахстан».
</li>
<li>Заполнение анкет для розыгрыша призов от Beuchat , Scorpena, Роял Авто</li>
<li><strong>11:00-17:00</strong> Соревнование подводных охотников по командам (участвуют 2 человека, прием трофеев
до 17:00).</li>
<li>Конкурс «Подводное ориентирование» для дайверов</li>
<li><strong>12:00-17:00</strong> Пробное погружение с аквалангом</li>
<li>Продажа снаряжения Beuchat, Scorpena со скидкой 20% </li>
<li>Конкурс для взрослых от компании «Роял Авто»</li>
<li>Конкур для взрослых от компании "KARCHER"</li>
<li>Конкурс для взрослых от отеля «DEDEMAN OSKEMEN TAVROS»</li>
<li>Конкурс для взрослых от сайта любителей охоты и рыбалки vkhunt</li>
<li>Детская спортивно-развлекательная программа с профессиональными аниматорами Бампербол</li>
<li>Аквагрим</li>
<li><strong>18:00-19:00</strong> Фестиваль рыбных блюд</li>
<li>Конкурс « Мисс и Мистер Beuchat Fest »</li>
<li><strong>19:00-21:00</strong> Розыгрыш лотереи Beuchat, Scorpena, Роял Авто, Подсчет количества малька к проекту
«Зарыбление Сибинских озер 2016», памятная фотосессия </li>
<li><strong>21:00</strong> Закрытие фестиваля, запуск небесных шаров, дискотека, песни под гитару у костра.</li>
</ul>
<br/>
<h4>7 августа</h4>
<ul>
<li>Свободный день, Отъезд участников.</li>
</ul>
<br/><br/>
<p class="text-danger"><strong><em>В программе могут произойти незначительные изменения – в зависимости от
погоды и
организационных моментов!</em></strong></p>
</div>
<div class="col-xs-4 col-xs-offset-1">
<h4 class="text-center">Заполните форму для участия в Beuchat Fest 2016</h4>
<br/>
<div class="row">
<div class="">
<form action="#" method="post" class="form form-vertical"><input type="hidden" name="csrfmiddlewaretoken" value="{{ csrf_token }}"> {{ form|bootstrap }}
<div class="form-group text-left">
<button type="submit" name="comment-send" class="btn btn-primary">Зарегистрироваться
</button>
</div>
</form>
</div>
</div>
</div>
</div>
{% endblock %}

@ -0,0 +1,16 @@
{% extends 'base.jinja' %} {% block title %} Регистрация на Beuchat Fest Казахстан 2016 {% endblock %} {% block meta_description
%} Регистрация на Beuchat Fest Казахстан 2016 {% endblock %} {% block meta_keywords %} Регистрация, Beuchat Fest, Beuchat,
Магазин, Интернет-Магазин, Батискаф-Казахстан {% endblock %} {% block content %}
<div class=" breadcrumbs">
<ol class="breadcrumb breadcrumb-arrow">
<li><a href="/">Главная</a></li>
<li class="active"><span>Регистрация на Beuchat Fest Казахстан 2016</span></li>
</ol>
</div>
<h1 class="">Регистрация прошла успешно!</h1>
<br/>
<div class="alert alert-success">
<strong>Спасибо, Вы успешно зарегистрированы на мероприятие Beuchat Fest 2016!</strong> <br><br>
</div>
{% endblock %}

@ -122,5 +122,7 @@ urlpatterns = (
url(r'^delivery/$', delivery, name='delivery'),
url(r'^contacts/$', contacts, name='contacts'),
url(r'^faq/$', faq, name='faq'),
url(r'^fest/$', fest, name='fest'),
url(r'^fest_success/$', fest_success, name='fest_success'),
url(r'^admin2517_garpun/', include(admin.site.urls)),
)

@ -1,5 +1,5 @@
from django.contrib import admin
from .models import Banner, Feedback
from .models import Banner, Feedback, FestUser
class BannerAdmin(admin.ModelAdmin):
@ -9,6 +9,18 @@ class BannerAdmin(admin.ModelAdmin):
class FeedbackAdmin(admin.ModelAdmin):
list_display = ('created', 'name', 'email', 'text', 'stars')
class FestUserAdmin(admin.ModelAdmin):
list_display = ('first_name', 'last_name', 'email', 'phone', 'age', 'country', 'city', 'passion')
# first_name = models.CharField(verbose_name='Имя', max_length=50, null=False, blank=False)
# last_name = models.CharField(verbose_name='Фамилия', max_length=50, null=False, blank=False)
# email = models.EmailField(verbose_name='Email-адрес', null=True, blank=True)
# phone = models.CharField(verbose_name='Номер телефона', null=False, blank=False, max_length=30)
# age = models.IntegerField(verbose_name='Возраст (лет)', null=False, blank=False, help_text=u'Девушки могут указывать 16 :)')
# country = models.CharField(verbose_name='Страна', null=False, blank=False, max_length=30)
# city = models.CharField(verbose_name='Город', null=False, blank=False, max_length=30)
# passion = models.IntegerField(verbose_name='Чем увлекаетесь?', null=False, blank=False, choices=PASSIONS, default=0)
admin.site.register(FestUser, FestUserAdmin)
admin.site.register(Banner, BannerAdmin)
admin.site.register(Feedback, FeedbackAdmin)

@ -1,12 +1,30 @@
from django import forms
from django.forms.widgets import RadioChoiceInput
from main.models import Feedback, STARS_CHOICES
from main.models import Feedback, FestUser, STARS_CHOICES
class FeedbackForm(forms.ModelForm):
stars = forms.IntegerField(widget=forms.RadioSelect(choices=STARS_CHOICES), label='Оценка')
stars = forms.IntegerField(widget=forms.RadioSelect(
choices=STARS_CHOICES), label='Оценка')
class Meta:
model = Feedback
fields = ['stars', 'name', 'email', 'text', ]
# widgets = {'stars': forms.RadioSelect(hidden=True)}
class FestUserForm(forms.ModelForm):
class Meta:
model = FestUser
fields = ('first_name', 'last_name', 'email', 'phone',
'age', 'country', 'city', 'passion')
# first_name = models.CharField(verbose_name='Имя', max_length=50, null=False, blank=False)
# last_name = models.CharField(verbose_name='Фамилия', max_length=50, null=False, blank=False)
# email = models.EmailField(verbose_name='Email-адрес', null=True, blank=True)
# phone = models.CharField(verbose_name='Номер телефона', null=False, blank=False, max_length=30)
# age = models.IntegerField(verbose_name='Возраст (лет)', null=False, blank=False, help_text=u'Девушки могут указывать 16 :)')
# country = models.CharField(verbose_name='Страна', null=False, blank=False, max_length=30)
# city = models.CharField(verbose_name='Город', null=False, blank=False, max_length=30)
# passion = models.IntegerField(verbose_name='Чем увлекаетесь?', null=False, blank=False, choices=PASSIONS, default=0)

@ -0,0 +1,29 @@
# -*- coding: utf-8 -*-
# Generated by Django 1.9.3 on 2016-07-15 18:57
from __future__ import unicode_literals
from django.db import migrations, models
class Migration(migrations.Migration):
dependencies = [
('main', '0011_productsupdate'),
]
operations = [
migrations.CreateModel(
name='FestUser',
fields=[
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
('first_name', models.CharField(max_length=50, verbose_name='Имя')),
('last_name', models.CharField(max_length=50, verbose_name='Фамилия')),
('email', models.EmailField(blank=True, max_length=254, null=True, verbose_name='Email-адрес')),
('phone', models.CharField(max_length=30, verbose_name='Номер телефона')),
('age', models.IntegerField(help_text='Девушки могут указывать 16 :)', verbose_name='Возраст (лет)')),
('country', models.CharField(max_length=30, verbose_name='Страна')),
('city', models.CharField(max_length=30, verbose_name='Город')),
('passion', models.IntegerField(choices=[(0, 'Дайвинг'), (1, 'Подводная охота'), (2, 'Фотография'), (3, 'Свежий воздух')], default=0, verbose_name='Чем увлекаетесь?')),
],
),
]

@ -45,5 +45,29 @@ class Feedback(models.Model):
return '{}: {}'.format(self.name, self.text)
PASSIONS = (
(0, 'Дайвинг'),
(1, 'Подводная охота'),
(2, 'Фотография'),
(3, 'Свежий воздух'),
)
class FestUser(models.Model):
first_name = models.CharField(verbose_name='Имя', max_length=50, null=False, blank=False)
last_name = models.CharField(verbose_name='Фамилия', max_length=50, null=False, blank=False)
email = models.EmailField(verbose_name='Email-адрес', null=True, blank=True)
phone = models.CharField(verbose_name='Номер телефона', null=False, blank=False, max_length=30)
age = models.IntegerField(verbose_name='Возраст (лет)', null=False, blank=False, help_text=u'Девушки могут указывать 16 :)')
country = models.CharField(verbose_name='Страна', null=False, blank=False, max_length=30)
city = models.CharField(verbose_name='Город', null=False, blank=False, max_length=30)
passion = models.IntegerField(verbose_name='Чем увлекаетесь?', null=False, blank=False, choices=PASSIONS, default=0)
def __str__(self):
return self.first_name + ' ' + self.last_name
class ProductsUpdate(models.Model):
created = models.DateTimeField('Дата и время', editable=False, auto_now=True)

@ -2,8 +2,8 @@ from django.contrib import messages
from django.core.mail import mail_managers
from django.http import JsonResponse
from django.shortcuts import render, redirect
from main.forms import FeedbackForm
from main.models import Banner, Feedback
from main.forms import FeedbackForm, FestUserForm
from main.models import Banner, Feedback, FestUser
from store.models import Product, Category, ProductVariation
@ -13,9 +13,9 @@ def index(request):
products = Product.objects.order_by('-pk')[:8]
c = dict(
products=products,
# aaa=[1,2,3,4,5,6,7,8,9,0],
banners=Banner.objects.filter(is_active=True),
products=products,
# aaa=[1,2,3,4,5,6,7,8,9,0],
banners=Banner.objects.filter(is_active=True),
)
return render(request, 'index.jinja', c)
@ -24,6 +24,18 @@ def index(request):
def advantages(request):
return render(request, 'advantages.jinja')
def fest(request):
form = FestUserForm(request.POST or None)
if request.method == 'POST' and form.is_valid():
form.save()
return redirect('/fest_success/')
c = dict(form=form)
return render(request, 'fest_register.html', c)
def fest_success(request):
return render(request, 'fest_success.html')
def payment(request):
return render(request, 'payment.jinja')

File diff suppressed because one or more lines are too long

@ -362,7 +362,7 @@ def get_kazpost_tarif(weight, to):
import requests
import re
url="http://rates.kazpost.kz/postratesws/postratesws.wsdl"
url="http://rates.kazpost.kz/postratesprod/postratesws.wsdl"
#headers = {'content-type': 'application/soap+xml'}
headers = {'content-type': 'text/xml'}
body = """<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:pos="http://webservices.kazpost.kz/postratesws">

Loading…
Cancel
Save