X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=portal%2Fforms.py;h=6a23e784881f6af032d6defcc767aa625bceb41f;hb=a148aba915464d91abb7407b99131e11998e984c;hp=f49c7520c1723e94d41a46daf652d9ca3f47dafb;hpb=5780feb87f14d38f180230c0f30fd6e773cc3654;p=myslice.git diff --git a/portal/forms.py b/portal/forms.py index f49c7520..6a23e784 100644 --- a/portal/forms.py +++ b/portal/forms.py @@ -27,23 +27,64 @@ from portal.models import PendingUser, PendingSlice #from crispy_forms.layout import Submit from django.utils.translation import ugettext_lazy as _ +# xxx painful, but... +# bootstrap3 requires the fields to be tagged class='form-control' +# my first idea was to add this in the view template of course, BUT +# I can't find a way to access the 'type=' value for a given field +# I've looked rather deeply out there but to no avail so far +# so as we have a demo coming up soon, and until we can come with a less intrusive way to handle this... +# +# initial version was +#class ContactForm(forms.Form): +# first_name = forms.CharField() +# last_name = forms.CharField() +# affiliation = forms.CharField() +# subject = forms.CharField(max_length=100) +# message = forms.CharField(widget=forms.Textarea) +# email = forms.EmailField() +# cc_myself = forms.BooleanField(required=False) + class ContactForm(forms.Form): - first_name = forms.CharField() - last_name = forms.CharField() - affiliation = forms.CharField() - subject = forms.CharField(max_length=100) - message = forms.CharField(widget=forms.Textarea) - email = forms.EmailField() - cc_myself = forms.BooleanField(required=False) + first_name = forms.CharField(widget=forms.TextInput(attrs={'class':'form-control'})) + last_name = forms.CharField(widget=forms.TextInput(attrs={'class':'form-control'})) + affiliation = forms.CharField(widget=forms.TextInput(attrs={'class':'form-control'})) + email = forms.EmailField(widget=forms.TextInput(attrs={'class':'form-control'})) + subject = forms.CharField(max_length=100,widget=forms.TextInput(attrs={'class':'form-control'})) + message = forms.CharField(widget=forms.Textarea(attrs={'class':'form-control'})) + cc_myself = forms.BooleanField(required=False,widget=forms.CheckboxInput(attrs={'class':'form-control'})) class SliceRequestForm(forms.Form): - slice_name = forms.CharField() - authority_hrn = forms.ChoiceField(choices=[(1, 'un')]) - number_of_nodes = forms.DecimalField() - type_of_nodes = forms.CharField() - purpose = forms.CharField(widget=forms.Textarea) - email = forms.EmailField() - cc_myself = forms.BooleanField(required=False) +# slice_name = forms.CharField() +# authority_hrn = forms.ChoiceField(choices=[(1, 'un')]) +# number_of_nodes = forms.DecimalField() +# type_of_nodes = forms.CharField() +# purpose = forms.CharField(widget=forms.Textarea) +# email = forms.EmailField() +# cc_myself = forms.BooleanField(required=False) + + slice_name = forms.CharField( + widget=forms.TextInput(attrs={'class':'form-control'}), + help_text="Enter a name for the slice you wish to create") + authority_hrn = forms.ChoiceField( + widget = forms.Select(attrs={'class':'form-control'}), + choices = [], + help_text = "Please select an authority responsible for vetting your slice") + number_of_nodes = forms.DecimalField( + widget = forms.TextInput(attrs={'class':'form-control'}), + help_text = "Enter the number of nodes you expect to request (informative only)") + type_of_nodes = forms.CharField( + widget = forms.TextInput(attrs={'class':'form-control'}), + help_text = "Enter the type of nodes you expect to request (informative only)") + purpose = forms.CharField( + widget = forms.Textarea(attrs={'class':'form-control'}), + help_text = "Enter the purpose of your experiment (informative only)") + email = forms.EmailField( + widget = forms.TextInput(attrs={'class':'form-control'}), + help_text = "Enter your email address") + cc_myself = forms.BooleanField( + widget = forms.CheckboxInput(attrs={'class':'form-control'}), + required = False, + help_text = "Please indicate whether you would like to be CC'ed to the request email") def __init__(self, *args, **kwargs): initial = kwargs.get('initial', {}) @@ -62,5 +103,8 @@ class SliceRequestForm(forms.Form): if authority_hrn:# and authority_hrn[0] not in (c[0] for c in authority_hrn): # XXX This does not work, the choicefield is not updated... #self.fields['authority_hrn'].choices.extend(authority_hrn) - self.fields['authority_hrn'] = forms.ChoiceField( choices=authority_hrn) + self.fields['authority_hrn'] = forms.ChoiceField( + widget = forms.Select(attrs={'class':'form-control'}), + choices = authority_hrn, + help_text = "Please select an authority responsible for vetting your slice")