# -*- coding: utf-8 -*- from django import forms from theme.models import Theme from place_exposition.models import PlaceExposition from country.models import Country from multiupload.fields import MultiFileField, MultiFileInput from django.utils.translation import ugettext as _ choices = ((0, ''), (1.0, _(u'Ежегодно')), (2.0, _(u'2 раза в год')), (3.0, _(u'3 раза в год')), (4.0, _(u'4 раза в год')), (5.0, _(u'5 раз в год')), (0.5, _(u'Раз в 2 года')), ( 0.33, _(u'Раз в 3 года')), (0.25, _(u'Раз в 4 года'))) places = [(item.id, item.name) for item in PlaceExposition.objects.language().all()] places.insert(0,('', _(u'Не выбрано'))) class ExpoForm1(forms.Form): """ main information about exposition """ name = forms.CharField(max_length=255, widget=forms.TextInput(attrs={'placeholder': _(u"Введите название выставки")})) main_title = forms.CharField(max_length=255, widget=forms.TextInput(attrs={'placeholder': _(u"Краткое описание выставки (необязательно)")})) description = forms.CharField(widget=forms.Textarea(attrs={'placeholder': _(u"Полное описание выставки"), 'cols':30, 'rows':10})) date_start = forms.DateField(widget=forms.TextInput(attrs={'class':'data dateFrom', 'placeholder':_(u'дд.мм.гг')})) date_end = forms.DateField(widget=forms.TextInput(attrs={'class':'data dateTo','placeholder':_(u'дд.мм.гг')})) country = forms.ChoiceField(label=_(u'Страна'), choices=[(c.id, c.name) for c in Country.objects.all()], widget=forms.Select(attrs={'id':'id_country'})) theme = forms.MultipleChoiceField(label=_('Тематики'), choices=[(item.id, item.name) for item in Theme.objects.language().all()], widget=forms.SelectMultiple(attrs={'id':'id_theme'})) place = forms.ChoiceField(label=_(u'Место проведения'), required=False, choices=places, widget=forms.Select(attrs={'id':'id_place'})) city = forms.CharField(label=_(u'Город'), widget=forms.HiddenInput(attrs={'id':'id_city'})) tag = forms.CharField(label=_(u'Теги'), widget=forms.HiddenInput(attrs={'id':'id_tag'}), required=False) audience1 = forms.BooleanField(required=False) audience2 = forms.BooleanField(required=False) audience3 = forms.BooleanField(required=False) periodic = forms.ChoiceField(choices=choices, required=False) membership1 = forms.BooleanField(required=False) membership2 = forms.BooleanField(required=False) membership3 = forms.BooleanField(required=False) web_site = forms.URLField(required=False, widget=forms.TextInput(attrs={'placeholder': _(u"Веб-сайт (необязательно)")})) products = forms.CharField(widget=forms.Textarea(attrs={'placeholder': _(u"Экспонируемые продукты"), 'cols':30, 'rows':10})) time_start = forms.TimeField() time_end = forms.TimeField() logo = forms.ImageField(widget=forms.FileInput(attrs={'class':"button big icon-clip"}), required=False) class ExpoForm2(forms.Form): """ statistics """ found_year = forms.IntegerField() # ticket price pre_one_day = forms.FloatField(widget=forms.TextInput(attrs={'placeholder':_(u'на один день')})) pre_all_days = forms.FloatField(widget=forms.TextInput(attrs={'placeholder':_(u'на все дни')})) one_day = forms.FloatField(widget=forms.TextInput(attrs={'placeholder':_(u'на один день')})) all_days = forms.FloatField(widget=forms.TextInput(attrs={'placeholder':_(u'на все дни')})) # rent price equiped = forms.FloatField(widget=forms.TextInput(attrs={'placeholder':_(u'оборудованная площадь')})) unequiped = forms.FloatField(widget=forms.TextInput(attrs={'placeholder':_(u'необорудованная площадь')})) open_square = forms.FloatField(widget=forms.TextInput(attrs={'placeholder':_(u'открытая площадь')})) min_square = forms.FloatField() registration_depos = forms.FloatField() deadline_date = forms.DateField(widget=forms.TextInput(attrs={'placeholder':_(u'дд.мм.гг')})) class ExpoForm3(forms.Form): """ photos from last expositions """ attachments = MultiFileField(min_num=0, max_num=6, max_file_size=1024*1024*5, widget=MultiFileInput( attrs={'class':'button big icon-camera', 'value': _(u'выберите фотографии'), 'id': 'files'} ))