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

Vide le stockage local lors de l'envoi avec Ctrl+Entrée #6310

Merged
merged 1 commit into from
Jun 20, 2022

Conversation

Arnaud-D
Copy link
Contributor

Fix #6309.

Cette PR corrige un soucis en ajoutant le vidage du stockage local lors de l'envoi avec Ctrl+Entrée dans les formulaires de forum.

J'ai choisi une option qui est normalement compatible avec tous les navigateurs. J'envoie un événement "submit" et le dispatche à l'éditeur, ce qui simule la soumission du formulaire via le bouton. Voir cette page MDN pour des infos sur pourquoi ça fonctionne.

Il n'y a pas non plus besoin de vérifier que le formulaire n'est pas vide, parce que c'est comme si on cliquait sur le bouton, avec les mêmes vérifications.

Contrôle qualité

Astuce pour gagner du temps : changer le paramètre anti-spam spam_limit_seconds dans zds.py à une valeur plus basse (quelques secondes par exemple).

  • Non régression : envoyer un message sur le forum avec le bouton, constater qu'il est bien envoyé et sans erreur, et que la zone de texte est vide (et que le local storage aussi, par conséquent).
  • Correction du bug : envoyer un message sur le forum avec Ctrl+Entrée, constater qu'il est bien envoyé et sans erreur, et que la zone de texte (et le local storage) sont vides.

@Arnaud-D Arnaud-D added the C-Front Concerne l'interface du site label May 20, 2022
@coveralls
Copy link

coveralls commented May 20, 2022

Coverage Status

Coverage remained the same at 87.99% when pulling a32a2fc on Arnaud-D:ctrl_enter into 8784520 on zestedesavoir:dev.

@philippemilink philippemilink added the S-BUG Corrige un problème label Jun 14, 2022
Copy link
Member

@philippemilink philippemilink left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Le linter râle :

blabla/zds-site/assets/js/editor-new.js
  1005:25  error  'SubmitEvent' is not defined  no-undef

Chez moi (Debian Sid, Firefox 91.10.0esr), le Ctrl-Enter ne fonctionne pas :

Uncaught TypeError: r.dispatchEvent is not a function
    p editor-new.js:1006

❌ QA NOK

@Arnaud-D
Copy link
Contributor Author

Alors, pour la deuxième erreur, j'ai une correction. C'est rien en plus, je ne sais même pas comment j'ai pu me planter comme ça.

Par contre, je me rends compte que la technique que j'utilise est dépréciée dans Firefox (en fait c'est même un bug selon certains) et ne fonctionne pas dans Chrome. On ne peut pas lancer un submit avec des événements untrusted (lancés depuis un script comme dans mon cas). Il faut que je réfléchisse à une autre solution.

@Arnaud-D
Copy link
Contributor Author

Bon, normalement ça marche maintenant. J'ai fait la méthode bête et méchante ; ça m'apprendra à vouloir faire le malin avec un SubmitEvent. :D

Copy link
Member

@philippemilink philippemilink left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

QA OK ✔️

@philippemilink philippemilink merged commit f171924 into zestedesavoir:dev Jun 20, 2022
@Arnaud-D Arnaud-D deleted the ctrl_enter branch June 20, 2022 21:08
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
C-Front Concerne l'interface du site S-BUG Corrige un problème
Projects
Archived in project
Archived in project
Development

Successfully merging this pull request may close these issues.

Envoyer un formulaire sur le nouvel éditeur avec Ctrl+Entrée ne vide pas le stockage local
3 participants