correctif formulaire modif contact

This commit is contained in:
Arthur ZHU 2022-02-07 21:40:58 +01:00
parent 63292d4cd3
commit 442e1a35c9
2 changed files with 22 additions and 3 deletions

View File

@ -244,6 +244,8 @@ class ContactCreationForm(FlaskForm):
class ContactModificationForm(FlaskForm): class ContactModificationForm(FlaskForm):
hidden_contact_id = HiddenField()
hidden_entreprise_id = HiddenField()
nom = StringField("Nom", validators=[DataRequired(message=CHAMP_REQUIS)]) nom = StringField("Nom", validators=[DataRequired(message=CHAMP_REQUIS)])
prenom = StringField("Prénom", validators=[DataRequired(message=CHAMP_REQUIS)]) prenom = StringField("Prénom", validators=[DataRequired(message=CHAMP_REQUIS)])
telephone = StringField("Téléphone", validators=[Optional()]) telephone = StringField("Téléphone", validators=[Optional()])
@ -260,14 +262,28 @@ class ContactModificationForm(FlaskForm):
if not rv: if not rv:
return False return False
contact = EntrepriseContact.query.filter(
EntrepriseContact.id != self.hidden_contact_id.data,
EntrepriseContact.entreprise_id == self.hidden_entreprise_id.data,
EntrepriseContact.nom == self.nom.data,
EntrepriseContact.prenom == self.prenom.data,
).first()
validate = True
if contact is not None:
self.nom.errors.append("Ce contact existe déjà (même nom et prénom)")
self.prenom.errors.append("")
validate = False
if not self.telephone.data and not self.mail.data: if not self.telephone.data and not self.mail.data:
self.telephone.errors.append( self.telephone.errors.append(
"Saisir un moyen de contact (mail ou téléphone)" "Saisir un moyen de contact (mail ou téléphone)"
) )
self.mail.errors.append("Saisir un moyen de contact (mail ou téléphone)") self.mail.errors.append("Saisir un moyen de contact (mail ou téléphone)")
return False validate = False
return True return validate
class HistoriqueCreationForm(FlaskForm): class HistoriqueCreationForm(FlaskForm):

View File

@ -603,7 +603,10 @@ def edit_contact(id):
Permet de modifier un contact Permet de modifier un contact
""" """
contact = EntrepriseContact.query.filter_by(id=id).first_or_404() contact = EntrepriseContact.query.filter_by(id=id).first_or_404()
form = ContactModificationForm() form = ContactModificationForm(
hidden_entreprise_id=contact.entreprise_id,
hidden_contact_id=contact.id,
)
if form.validate_on_submit(): if form.validate_on_submit():
contact.nom = form.nom.data.strip() contact.nom = form.nom.data.strip()
contact.prenom = form.prenom.data.strip() contact.prenom = form.prenom.data.strip()