Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Feat/store and autocomplete data #4

Open
wants to merge 8 commits into
base: master
Choose a base branch
from

Conversation

theblackhole
Copy link

@theblackhole theblackhole commented Oct 17, 2020

Ajout d'une système permettant d'enregistrer et restaurer automatiquement les données du formulaire

But :
Gain de temps, surtout quand la raison est la même tous les soirs (exemple : sortir un animal de compagnie).
Après avoir utilisé le formulaire une première fois, il n'y a plus qu'à appuyer sur "Générer l'attestation" pour les suivantes.

Demo : https://autocovid19.oa.r.appspot.com/

Fonctionnalités introduites par cette PR :

  • enregistrement chiffré des données du formulaire dans le localStorage à la génération du pdf (utilisation de la lib secure-ls pour le stockage des données chiffrées)
  • récupération des données chiffrées à l'ouverture du formulaire avec autocompletion des champs (profile et choix raison)
  • autocompletion de la date de sortie (avec date et heure actuelle)
  • ajout d'une checkbox pour choisir ou non d'enregister les données et d'un lien pour effacer les données enregistrées :
    • si la checkbox est décochée, les données sont effacées du localStorage mais pas du formulaire
    • si le lien pour effacer les données est cliqué, les données sont effacées du localStorage et du formulaire

Divers/Dev :

  • Ajout des IDE Jetbrains au .gitignore
  • Modification du fichier .editorconfig afin de correspondre au format du fichier index.html (4 espaces pour l'indentation sur index.html alors que l'editorconfig en indiquait 2)

Bien sûr, selon vos besoins je peux adapter cette PR (par exemple en n'enregistrant pas certains champs comme la raison, ou retirer l'autocompletion avec l'heure actuelle pour ne garder que la date, ou encore retirer les changements de l'.editorconfig). Mais personnellement, pour des raisons pratiques (j'ai un chien à sortir tous les soirs, donc toujours la même raison à chaque fois), je préfère utiliser ma propre version et compte la proposer à mon entourage dès qu'elle sera publiée.

Idées d'évolution dans un second temps avec maj UI/UX :

  • si données trouvées en localStorage, alors au lieu d'afficher le formulaire, on affiche un résumé rapide et on a un bouton génération / modification à portée de main (pour éviter de scroll le formulaire à chaque fois) : le wording est à définir, mais ça pourrait être quelque chose du style "Souhaitez-vous générer une attestation pour [prenom + nom], pour une sortie le [date + heure] ayant pour motif [motif] ?".
    • "Oui, générer mon attestation" => génération directe comme actuellement
    • "Non, changer le motif de sortie" => affichage des radios de choix du motif uniquement + bouton génération
    • "Non, changer la date/heure de sortie" => affichage de date+heure sortie uniquement + bouton génération
    • "Non, faire une attestation pour une autre personne" => effacement du localstorage puis ouverture du formulaire vide
    • "Non, effacer mes données stockées" => effacement du localstorage et du formulaire + texte confirmation

@theblackhole
Copy link
Author

@theblackhole theblackhole force-pushed the feat/store-and-autocomplete-data branch from 4f3961d to 099802c Compare October 20, 2020 19:07
@theblackhole
Copy link
Author

(Petit rebase pour résoudre les conflits de la PR #6)

@theblackhole
Copy link
Author

theblackhole commented Oct 20, 2020

En vérifiant ma PR après ce rebase, je viens de voir que -conformément aux instructions de l'editorconfig- les fichiers sur lequels j'ai travaillé ont eu leurs sauts de ligne convertis au format Unix (LF) au lieu de Windows (CRLF) précédemment.
C'est une bonne pratique pour une collaboration cross-plateform d'avoir des sauts de lignes LF mais par contre ça rend les changements difficiles à voir sur github car toutes les lignes sont modifiées (CRLF > LF).

Souhaitez-vous que je convertisse à nouveau en CRLF pour faire ressortir uniquement les changements apportés par cette feature ?

@theblackhole
Copy link
Author

Pour info l'instance de demo, https://autocovid19.oa.r.appspot.com/ , pointe dorénavant sur la nouvelle attestation de confinement (version adaptée par @tar-gezed sur attestation-deplacement-derogatoire-q4-2020#58)

Pour retrouver l'ancienne demo qui pointe sur l'ancienne attestation couvre-feu, c'est à cette adresse : https://1-0-0-rc3-dot-autocovid19.oa.r.appspot.com/

Je garde cette issue ouverte dans le cas où la situation sanitaire s'améliorerait et qu'on reviendrait vers un système de couvre-feu au lieu de confinement total :) (sauf si un nouveau repo est encore créé à cette occasion hahaha)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant