Skip to content
GitLab
Projects Groups Topics Snippets
  • /
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in
  • G gestioCOF
  • Project information
    • Project information
    • Activity
    • Labels
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributor statistics
    • Graph
    • Compare revisions
  • Issues 76
    • Issues 76
    • List
    • Boards
    • Service Desk
    • Milestones
  • Merge requests 16
    • Merge requests 16
  • Deployments
    • Deployments
    • Releases
  • Monitor
    • Monitor
    • Incidents
  • Analytics
    • Analytics
    • Value stream
    • Repository
  • Wiki
    • Wiki
  • Snippets
    • Snippets
  • Activity
  • Graph
  • Create a new issue
  • Commits
  • Issue Boards
Collapse sidebar
  • Klub Dev ENSKlub Dev ENS
  • gestioCOF
  • Issues
  • #237
Closed
Open
Issue created Nov 07, 2019 by Antonin Reitz@areitzMaintainer

K-Psul : envoi d'un mail (explicatif) à la création de trigramme

A la création d'un trigramme, associé à un clipper, il est largement souhaitable que le clipper en question reçoive un mail attestant de la création d'un trigramme avec divers renseignements.

  • La personne doit savoir quel trigramme a été choisi, la date à laquelle il a été créé.
  • Il doit y avoir une explication sur la politique des données de la K-Fêt : quelles données, pendant quelle durée sont-elles stockées, comment les récupérer, comment les supprimer.
  • Il doit y avoir un lien vers l'historique des consommations (non formaté et graphique), un lien vers une page où il est possible de télécharger ses consommations, ainsi qu'un lien vers une page où il est possible de supprimer ses consommations.

Suggestion d'implémentation

  • Écrire le mail à envoyer dans un fichier kfet/templates/kfet/mails/account_creation.txt. Il est possible d'utiliser le moteur de templates de Django, par exemple :
Salut {{ account.name }},

Ton compte K-Fêt a été créé le {{ account.created_at }} avec le trigramme {{ account.trigramme }}
...

La 3e étape du tuto Django parle un peu des templates https://docs.djangoproject.com/en/3.0/intro/tutorial03/. Voir https://docs.djangoproject.com/en/3.0/topics/templates/#the-django-template-language pour plus d'info sur le langage de template.

  • Les liens à envoyer sont trouvables dans kfet/urls.py :

    • Historique personnel https://cof.ens.fr/gestion/k-fet/accounts/TRIGRAMME. Django peut générer l'url tout seul avec reverse("kfet.account.read", args=(account.trigramme,))
    • Modifier ses données personnelles : reverse("kfet.account.edit", args=(account.trigramme,))
    • Supprimer son compte : reverse("kfet.account.delete", args=(account.trigramme,))
    • historique au format json, on verra plus tard, pour l'instant c'est compliqué il faut faire une requête POST. Et puis ça pourrait être mieux formaté peut-être ?
    • La doc relative à la résolution des urls à l'aide de reverse : https://docs.djangoproject.com/en/3.0/topics/http/urls/#reverse-resolution-of-urls
  • Dans le modèle Account du fichier kfet/models.py ajouter une méthode send_creation_email qui se charge d'envoyer cet email. Quelques pointeurs :

    • La doc des mails https://docs.djangoproject.com/en/3.0/topics/email/
    • La fonction render_to_string peut être utilisée pour générer le mail à partir du template https://docs.djangoproject.com/en/3.0/topics/templates/#django.template.loader.render_to_string. Par exemple
from django.template.loader import render_to_string
rendered = render_to_string('kfet/mails/account_creation.txt', {'account': ...})
  • J'hésite :
    • soit appeler send_creation_email à la fin de la méthode save du modèle Account (dans la même classe)
    • soit appeler send_creation_email dans la vue account_create dans kfet/views.py
Edited Dec 04, 2020 by Martin Pepin
To upload designs, you'll need to enable LFS and have an admin enable hashed storage. More information
Assignee
Assign to
Time tracking