Commit e315f025 authored by Vincent Le gallic's avatar Vincent Le gallic

Correction du formulaire d'inscription : on fournit le montant à mettre sur...

Correction du formulaire d'inscription : on fournit le montant à mettre sur note en € (et pas en centimes) + Suppression du champ "id" du formulaire des Bouton (il est dans l'url)
parent 9cbdb84c
......@@ -251,7 +251,6 @@ class FrenchFloatField(forms.FloatField):
class BoutonForm(forms.Form):
"""Formulaire pour créer ou modifier un bouton"""
id = forms.IntegerField(required=False, widget=forms.HiddenInput)
label = forms.CharField(label="Label")
montant = FrenchFloatField(label="Montant")
destinataire = forms.ChoiceField()
......@@ -261,7 +260,7 @@ class BoutonForm(forms.Form):
# Pour initialiser le formulaire, on veut que le solde soit passé en euros
if 'initial' in kwargs.keys():
if 'montant' in kwargs['initial'].keys():
kwargs['initial']['montant'] = kwargs['initial']['montant']/100.0
kwargs['initial']['montant'] = kwargs['initial']['montant'] / 100.0
forms.Form.__init__(self, *args, **kwargs)
def clean(self):
out = forms.Form.clean(self)
......@@ -315,7 +314,7 @@ class InscriptionForm(forms.Form):
wei = forms.BooleanField(label="Inscription au WEI", required=False)
annee = forms.IntegerField(label="Année d'inscription (année courante si non précisée)", required=False)
# partie paiement
on_note = forms.IntegerField(label="Montant à mettre sur la note", required=False, initial=0)
on_note = FrenchFloatField(label="Montant à mettre sur la note", required=False, initial=0)
type_de_paiement = forms.ChoiceField(label="Type de paiement", choices=[("cheque", "Chèque"), ("especes", "Espèces"), ("virement", "Virement bancaire"), ("soge", "Société Générale")])
pay_nom = forms.CharField(label="Nom¹ (pour le paiement)", required=False)
pay_prenom = forms.CharField(label="Prénom¹ (pour le paiement)", required=False)
......@@ -333,7 +332,9 @@ class InscriptionForm(forms.Form):
failed = [dicoparam[key] for key in ["pay_nom", "pay_prenom", "pay_banque"] if not(out.has_key(key)) or out[key] in [None, ""]]
if failed:
raise forms.ValidationError(u"Pour un paiement par %s vous devez préciser les champs %s." % (dicotyp[typ], u", ".join(failed)))
if not out.has_key("on_note") or (out["on_note"] == None):
if out.has_key("on_note") and type(out["on_note"]) == float:
out["on_note"] = int(100 * out["on_note"])
else:
out["on_note"] = 0
if out.has_key("report_period") and (out["report_period"] == None):
del out["report_period"]
......@@ -346,9 +347,8 @@ class PhotoForm(forms.Form):
def clean(self):
"""On n'autorise pas les photos trop grosses."""
out = forms.Form.clean(self)
print out
if out.has_key("photo"):
photo = out["photo"]
if photo != None and photo.size > settings.MAX_PHOTO_SIZE:
raise forms.ValidationError(u"Photo trop volumineuse (%s octets), maximum %s" % (photo.size, settings.MAX_PHOTO_SIZE))
return out
\ No newline at end of file
return out
......@@ -1383,7 +1383,9 @@ def boutons(request, idbouton=None, delete=None):
if idbouton == None: # c'est donc un ajout
sock.write('create_bouton %s' % json.dumps(form.cleaned_data))
else: # c'est une modification
sock.write('update_bouton %s' % json.dumps(form.cleaned_data))
data = form.cleaned_data
data["id"] = idbouton
sock.write('update_bouton %s' % json.dumps(data))
out = full_read(sock)
retcode = out["retcode"]
if retcode == 103:
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment