summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNishanth Amuluru2010-11-30 15:51:23 +0530
committerNishanth Amuluru2010-11-30 15:51:23 +0530
commitc8cc4c4506eb09acc1c39ca35af7b5a051711d40 (patch)
treed244a7364842daf6922fc269c74bc1bceab1132c
parentdd38157ef29591f0e5168533a88389eb87360896 (diff)
downloadscipycon-c8cc4c4506eb09acc1c39ca35af7b5a051711d40.tar.gz
scipycon-c8cc4c4506eb09acc1c39ca35af7b5a051711d40.tar.bz2
scipycon-c8cc4c4506eb09acc1c39ca35af7b5a051711d40.zip
Added six fields corresponding to accomodation in the accomodation model and made corresponding changes to view and form
--HG-- extra : rebase_source : 1b2f2122b774f7ef503fc9c1b78a045e44dfec6c
-rw-r--r--project/development.py2
-rw-r--r--project/scipycon/registration/forms.py48
-rw-r--r--project/scipycon/registration/models.py13
-rw-r--r--project/templates/registration/submit-registration.html24
4 files changed, 73 insertions, 14 deletions
diff --git a/project/development.py b/project/development.py
index eb8a205..1196ebb 100644
--- a/project/development.py
+++ b/project/development.py
@@ -24,7 +24,7 @@ INSTALLED_APPS = (
'project.scipycon.talk',
'tagging',
'robots',
- 'south',
+ #'south',
)
DATABASE_ENGINE = 'sqlite3'
diff --git a/project/scipycon/registration/forms.py b/project/scipycon/registration/forms.py
index e3cc464..d2c639b 100644
--- a/project/scipycon/registration/forms.py
+++ b/project/scipycon/registration/forms.py
@@ -94,12 +94,26 @@ class AccommodationForm(forms.ModelForm):
sex = self.cleaned_data['sex']
accommodation_required = self.cleaned_data['accommodation_required']
- accommodation_days = self.cleaned_data['accommodation_days']
+ accommodation_days = sum(filter([a1, a2, a3, a4, a5, a6]))
+
+ a1 = self.cleaned_data['accomodation_on_1st']
+ a2 = self.cleaned_data['accomodation_on_2nd']
+ a3 = self.cleaned_data['accomodation_on_3rd']
+ a4 = self.cleaned_data['accomodation_on_4th']
+ a5 = self.cleaned_data['accomodation_on_5th']
+ a6 = self.cleaned_data['accomodation_on_6th']
acco.sex = sex
acco.accommodation_required = accommodation_required
- acco.accommodation_days = accommodation_days if (
- accommodation_days) else 0
+ acco.accommodation_days = accomodation_days
+
+ acco.accomodation_on_1st = a1
+ acco.accomodation_on_2nd = a2
+ acco.accomodation_on_3rd = a3
+ acco.accomodation_on_4th = a4
+ acco.accomodation_on_5th = a5
+ acco.accomodation_on_6th = a6
+
acco.save()
@@ -114,19 +128,35 @@ class AccommodationForm(forms.ModelForm):
sex = self.cleaned_data['sex']
accommodation_required = self.cleaned_data['accommodation_required']
- accommodation_days = self.cleaned_data['accommodation_days']
- if accommodation_required and (not sex or not accommodation_days
- or accommodation_days == 0):
+ a1 = self.cleaned_data['accomodation_on_1st']
+ a2 = self.cleaned_data['accomodation_on_2nd']
+ a3 = self.cleaned_data['accomodation_on_3rd']
+ a4 = self.cleaned_data['accomodation_on_4th']
+ a5 = self.cleaned_data['accomodation_on_5th']
+ a6 = self.cleaned_data['accomodation_on_6th']
+
+ selected_a_date = any([a1, a2, a3, a4, a5, a6])
+
+ if accommodation_required and (not sex or not selected_a_date):
+ #or accommodation_days == 0):
raise forms.ValidationError(
- u"If accommodation is required both gender and number of "
- "days for which accommodation is required is mandatory.")
+ u"If accommodation is required please specify gender and"
+ " select the days number for which accommodation is required.")
return super(AccommodationForm, self).clean()
class Meta:
model = Accommodation
- fields = ('accommodation_required', 'sex', 'accommodation_days')
+ fields = ('accommodation_required',
+ 'sex',
+ 'accomodation_on_1st',
+ 'accomodation_on_2nd',
+ 'accomodation_on_3rd',
+ 'accomodation_on_4th',
+ 'accomodation_on_5th',
+ 'accomodation_on_6th',
+ )
class PaymentForm(forms.ModelForm):
diff --git a/project/scipycon/registration/models.py b/project/scipycon/registration/models.py
index 90211b4..b6af489 100644
--- a/project/scipycon/registration/models.py
+++ b/project/scipycon/registration/models.py
@@ -73,6 +73,19 @@ class Accommodation(base_models.ScopedBase):
verbose_name="Accommodation required",
help_text="Check if you need accommodation.")
+ accomodation_on_1st = models.BooleanField(default=False,
+ verbose_name="First day")
+ accomodation_on_2nd = models.BooleanField(default=False,
+ verbose_name="Second day")
+ accomodation_on_3rd = models.BooleanField(default=False,
+ verbose_name="Third day")
+ accomodation_on_4th = models.BooleanField(default=False,
+ verbose_name="Fourth day")
+ accomodation_on_5th = models.BooleanField(default=False,
+ verbose_name="Fifth day")
+ accomodation_on_6th = models.BooleanField(default=False,
+ verbose_name="Sixth day")
+
accommodation_days = models.IntegerField(
default=0, blank=True,
verbose_name="Number of days",
diff --git a/project/templates/registration/submit-registration.html b/project/templates/registration/submit-registration.html
index 7c238b0..a2b92a3 100644
--- a/project/templates/registration/submit-registration.html
+++ b/project/templates/registration/submit-registration.html
@@ -7,16 +7,32 @@
$(document).ready(function(){
if (!$('#id_accommodation_required').is(':checked')) {
- $('#id_accommodation_days').attr('disabled', 'disabled');
$('#id_sex').attr('disabled', 'disabled');
+ $('#id_accomodation_on_1st').attr('disabled', 'disabled');
+ $('#id_accomodation_on_2nd').attr('disabled', 'disabled');
+ $('#id_accomodation_on_3rd').attr('disabled', 'disabled');
+ $('#id_accomodation_on_4th').attr('disabled', 'disabled');
+ $('#id_accomodation_on_5th').attr('disabled', 'disabled');
+ $('#id_accomodation_on_6th').attr('disabled', 'disabled');
}
$('#id_accommodation_required').change(function() {
if (!$('#id_accommodation_required').is(':checked')) {
- $('#id_accommodation_days').attr('disabled', 'disabled');
$('#id_sex').attr('disabled', 'disabled');
+ $('#id_accomodation_on_1st').attr('disabled', 'disabled');
+ $('#id_accomodation_on_2nd').attr('disabled', 'disabled');
+ $('#id_accomodation_on_3rd').attr('disabled', 'disabled');
+ $('#id_accomodation_on_4th').attr('disabled', 'disabled');
+ $('#id_accomodation_on_5th').attr('disabled', 'disabled');
+ $('#id_accomodation_on_6th').attr('disabled', 'disabled');
} else {
- $('#id_accommodation_days').removeAttr('disabled');
- $('#id_sex').removeAttr('disabled');
+ $('#id_accommodation_days').removeAttr('disabled');
+ $('#id_sex').removeAttr('disabled');
+ $('#id_accomodation_on_1st').removeAttr('disabled', 'disabled');
+ $('#id_accomodation_on_2nd').removeAttr('disabled', 'disabled');
+ $('#id_accomodation_on_3rd').removeAttr('disabled', 'disabled');
+ $('#id_accomodation_on_4th').removeAttr('disabled', 'disabled');
+ $('#id_accomodation_on_5th').removeAttr('disabled', 'disabled');
+ $('#id_accomodation_on_6th').removeAttr('disabled', 'disabled');
}
});