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

Demande confirmation à l'utilisateur pour quitter la page si il a une fiche non sauvegardée #114

Closed
wants to merge 9 commits into
base: develop
from

Conversation

Projects
None yet
2 participants
@JocelynDelalande

JocelynDelalande commented Feb 26, 2018

… entre autres, car on a aussi au menu (toujours dans la vue patient):

  • sauvegarde auto de tous les onglets (sauf celui de consult, cf #113) quand on quitte la page en cliquant sur un lien (ça n'était le cas qu'au changement d'onglet, pas au changement de page).
  • ré-organisation de code pour la sauvegarde auto au changement d'onglet

image

(nb: sur un navigateur normal, vous aurez les OK / Cancel en Français).

@JocelynDelalande JocelynDelalande changed the title from Demande confirmation à l'utilisateur si il a une fiche non sauvegardée to Demande confirmation à l'utilisateur pour quitter la page si il a une fiche non sauvegardée Feb 26, 2018

@jbgury

jbgury approved these changes Mar 2, 2018

@jbgury

This comment has been minimized.

Contributor

jbgury commented Mar 2, 2018

En testant le bloc d'édition de formulaire reste présent après avoir été affiché une fois.

Reproduction

  • Se rendre sur une fiche patient
  • Revenir au dashboard en cliquant sur le titre du produit. Le bloc gestionnaire d'édition de formulaire reste affiché.
@JocelynDelalande

This comment has been minimized.

JocelynDelalande commented Mar 2, 2018

En testant le bloc d'édition de formulaire reste présent après avoir été affiché une fois.

Reproduction

Se rendre sur une fiche patient
Revenir au dashboard en cliquant sur le titre du produit. Le bloc gestionnaire d'édition de formulaire reste affiché.

@jbgury Je n'arrive pas à reproduire cette erreur (peut-être est-ce car j'ai rebasé sur develop) ; y arrives tu toujours sur cette version rebasé de ton côté ?

En revanche, il semblerait qu'il y a un autre bug (message de confirmation de fermeture en double), je passe donc la PR en WIP, et j'essaierais de débuguer ça demain.

  • Supprimer le message de confirmation affiché deux (ou plus) fois.
@JocelynDelalande

This comment has been minimized.

JocelynDelalande commented Mar 2, 2018

Merci beaucoup de la review et du test attentif en tout cas :-)

@JocelynDelalande

This comment has been minimized.

JocelynDelalande commented Mar 5, 2018

Je pense que j'ai réparé les messages de confirmation multiples. @jbgury est-ce que tu peux vérifier si ton cas d'erreur est encore reproductible ? Moi je n'y arrive toujours pas :x.

JocelynDelalande added a commit to JocelynDelalande/Libreosteo that referenced this pull request Jun 7, 2018

Fix false-positive unsaved data confirmation dialog
angular-xeditable offers no guarantee at handling correctly the dirty <form>
status.

Thus, now rely only the dirty status on individual fields to trigger or not the
unsaved data user confirmation dialog.

ref libreosteo#113 libreosteo#114
@JocelynDelalande

This comment has been minimized.

JocelynDelalande commented Jun 7, 2018

Il y avait un petit bug (confirmation demandée inutilement dans certains cas), c'est corrigé !

J'ai longuement manipulé cette feature en développant #83, je pense que ça ne fonctionne pas trop mal :)

@jbgury est-ce que tu as toujours le comportement problématique dont tu parlais ?

(nb: cette PR est incluse dans #83)

JocelynDelalande added a commit to JocelynDelalande/Libreosteo that referenced this pull request Jun 15, 2018

Fix false-positive unsaved data confirmation dialog
angular-xeditable offers no guarantee at handling correctly the dirty <form>
status.

Thus, now rely only the dirty status on individual fields to trigger or not the
unsaved data user confirmation dialog.

ref libreosteo#113 libreosteo#114

JocelynDelalande added a commit to JocelynDelalande/Libreosteo that referenced this pull request Aug 22, 2018

Fix false-positive unsaved data confirmation dialog
angular-xeditable offers no guarantee at handling correctly the dirty <form>
status.

Thus, now rely only the dirty status on individual fields to trigger or not the
unsaved data user confirmation dialog.

ref libreosteo#113 libreosteo#114

JocelynDelalande added some commits Feb 26, 2018

Re-implement tab change detection with events
I Believe this is clearer and cleaner than using MutationObserver. It also
makes it more generic (pave the way for handling router-view change the same way).

ref #70
Only handle relevant tab change event
Only if it is related to current form tab.

Using `:visible` is quite a hack. Properly handling that would require that the
tab itself $broadcast from its scope (narrowing the receivers list). Currently,
its `PatientCtrl` who issues $broadcast.
Refactor unsaved tab/form code and allow to prompt user
Make it more generic, pave the way for #87
Ask confirmation before leaving page with unsaved data
As commented in the patch, we can do little on browser page quit (no autosave),
so this is barely a confirmation message.

fix #115
Avoid repeating closing event handling for unsaved stuff
- avoid handling several $locationChangeStart on same click.
- avoir handling $locationChangeStart and uiTabChange on same click.
Make EditFormManager capable of actioning several forms
At once, all visible forms.

Also refactored slightly and documented.
Fix false-positive unsaved data confirmation dialog
angular-xeditable offers no guarantee at handling correctly the dirty <form>
status.

Thus, now rely only the dirty status on individual fields to trigger or not the
unsaved data user confirmation dialog.

ref #113 #114

JocelynDelalande added a commit to JocelynDelalande/Libreosteo that referenced this pull request Nov 8, 2018

Fix false-positive unsaved data confirmation dialog
angular-xeditable offers no guarantee at handling correctly the dirty <form>
status.

Thus, now rely only the dirty status on individual fields to trigger or not the
unsaved data user confirmation dialog.

ref libreosteo#113 libreosteo#114
@JocelynDelalande

This comment has been minimized.

JocelynDelalande commented Nov 8, 2018

Je ferme cette PR car elle est contenue dans #83 et que la fusionner mettrait le bazar…

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment