Système d’inscription à Wanewsletter

Les inscriptions, confirmations, désinscriptions et changements de format peuvent se faire par le biais de trois mécanismes possibles:

  • Via le formulaire par défaut (actuellement source:trunk/subscribe.php)
  • Via un formulaire généré avec l’outil idoine disponible dans la section outils de l’administration
  • Via le système de scan d’une boîte mail dédiée à cet usage (obsolète ?)

Le ticket ticket:1 centralise les tickets ouverts, entrées présentes dans le wiki, etc concernant le nouveau système d’inscriptions à venir dans Wanewsletter 2.3. Les nouvelles fonctionnalités au programme sont :

  • Confirmation même si le compte est activé, si la liste demande toujours confirmation (déjà fait)
  • Inscription à plusieurs listes en même temps (ticket:10)
  • Réduction de la taille des liens par l’utilisation d’un code fourni à l’inscription et spécifique au couple abo_id-liste_id, abo_id-liste_id2, etc, de la table abo_liste

Copie en provenance du TODO

Mise en place

  • À l’inscription :
    • Les variables reçues sont: action, email et liste_id
    • De là, ajout dans la table abonnes et ajouts dans la table abo_liste autant de fois que de listes choisies
    • Envoi du mail d’inscription ou confirmation, c’est selon
    • Envoi du mail d’alerte aux admins concernés (si inscription sans confirmation)
    • Update des statistiques
  • À la confirmation :
    • Réception d’une variable, le code, associé aux couples abo_id-liste_id1, abo_id-liste_id2, … de la table abo_liste concernés
    • Passage de confirmed = 1 sur ces tuples (pour ceux avec confirmed = 0)
    • Envoi du mail d’alertes aux admins concernés
    • Update des stats
    • update des codes pour chaque couple abo_id-liste_id1, abo_id-liste_id2, etc (code différent pour chaque) pour une désinscription ultérieure éventuelle
  • À la désinscription :
    • Les variables reçues sont :
      • action, email, liste : Dans ce cas, envoi du mail de confirmation de désinscription
      • code : Désinscription de l’abonné de la liste concernée et envoi des mails d’alerte aux admins concernés