Résolution d'une issue 2 : #324 (et travail préparatoire pour l'issue #64)

Allow facultative email collecting
Now that !266 (merged) allows collecting user emails, we could allow admin to choose if filling email must be required.
https://framagit.org/framasoft/framadate/issues/324

Contrôler l’identité des sondés
Le sondé saisie une adresse de messagerie, framadate envoie un lien de confirmation à cette adresse avant que la réponse n’apparaisse au niveau des résultats ; les adresses des personnes ne seraient visibles que par l’auteur du sondage pour éliminer les réponses ’farfelue’. https://framagit.org/framasoft/framadate/issues/61

Résoudre ces deux issues permet de poursuivre le travail que j’ai réalisé en Résolution d'une issue 1 : #38.

Le champ collectusersmail devient un entier à la place d’un booléen pour avoir la correspondance suivante :

  • 0 : pas de proposition d’enregistrer l’email
  • 1 : enregistrement d’email proposé
  • 2 : enregistrement d’email requis
  • 3 : enregistrement d’email avec adresse valide requise pour voter, l’envoi du formulaire déclenchant l’envoi d’un email avec un lien pour valider le vote
  • Ajout de constantes CollectMail (analogue à Editable) : NOCOLLECT=0, COLLECT=1, COLLECTREQUIRED=2 et COLLECTREQUIREDVERIFIED=3 * Ajout fichier app/classes/Framadate/Collectmail.php
    • MAJ classe Form
    • Ajout méthode dans InputService.php (filtre des valeurs correctes pour collectusersmail)
    • MAJ fichier app/inc/constants.php
  • MAJ de la création d’un sondage
    • MAJ createpoll.tpl * MAJ createpoll.php
    • MAJ createpoll.js * MAJ PollRepository.php (méthode insertPoll) * MAJ de l’administration d’un sondage * MAJ pollinfo.tpl
  • MAJ du vote
    • MAJ votetableclassic.tpl
    • MAJ votetabledate.tpl
  • MAJ du fichier de traduction (en.json)

L’option 3 (enregistrement d’email avec adresse valide requise pour voter, l’envoi du formulaire déclenchant l’envoi d’un email avec un lien pour valider le vote) n’est pas encore implémentée (l’option n’est pas sélectionnable à la création d’un sondage).
Son implémentation nécessite en effet l’utilisation du service d’envoi de mails (qui est désactivé au sein de notre installation), voilà pourquoi le travail reste préparatoire à la résolution de l’issue #61.

  • Lors de la création d’un sondage : paramètres optionnels et avertissement

 Nouveaux paramètres et avertissement dans la création d'un sondage

  • Lors de l’administration d’un sondage : informations et avertissement

 Nouveaux paramètres et avertissement affichés dans les infos d'un sondage

  • txs/contrib/framadate_p18/resolution_d_une_deuxieme_issue.txt
  • de 127.0.0.1