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

[WIP] Le texte de l’éditeur persiste #4660

Closed
wants to merge 3 commits into
base: dev
from

Conversation

Projects
None yet
5 participants
@motet-a
Member

motet-a commented Sep 24, 2017

Sauvegarde le texte de l’éditeur dans le localStorage.

Les entrées sont écrites en utilisant une sorte de cache LRU de façon
à supprimer automatiquement les plus anciennes.

Ne fonctionne que sur les éditeurs (avec la classe .md-editor), ne
fonctionne pas sur tous les <input type="text"> ou <textarea>.

Ne fonctionne pas avec la plupart les boutons de l’éditeur actuel, mais je pense que
c’est un petit détail étant donné que ces boutons n’entraînent pas de modification
significative du texte.

Fix #4237.

Numéro du ticket concerné (optionnel) : #4237

Contrôle qualité

  1. Allez sur une page avec un (ou plusieurs) éditeur de texte ;
  2. écrivez du texte dans ces éditeurs ;
  3. naviguez, fermez l’onglet, faites ce que vous voulez ;
  4. retournez sur la page de départ, vous devriez retrouver votre texte.

À faire

  • Oublier lors de la validation d’un formulaire
  • Revert le refactoring du template HTML introduit par erreur

@motet-a motet-a self-assigned this Sep 24, 2017

@zestedesavoir zestedesavoir deleted a comment from coveralls Sep 24, 2017

@artragis artragis added this to the Version de développement milestone Sep 24, 2017

@Situphen

This comment has been minimized.

Show comment
Hide comment
@Situphen

Situphen Sep 24, 2017

Contributor

Alors ce genre de fonctionnalités ne me dérange pas mais il faut faire attention car il y a pas mal de cas à gérer. Si c'est bien géré c'est nickel mais si c'est mal géré c'est largement pire qu'avant. Par exemple :

  • Bob modifie une section d'un tutoriel et que son navigateur l'enregistre,
  • Alice vient un peu plus tard et modifie la même section,
  • Bob revient sur cette section et bam, la sauvegarde écrase dans l'éditeur ce qu'Alice avait écrit, Bob enregistre, cata.

Pour cette exemple il faut vérifier si l'éditeur est vide avant de mettre la sauvegarde. Voire peut-être afficher un message demandant à l'utilisateur s'il veut utiliser la sauvegarde (avec la date ?)

Il y a peut-être d'autres cas à gérer, donc prudence :)

Contributor

Situphen commented Sep 24, 2017

Alors ce genre de fonctionnalités ne me dérange pas mais il faut faire attention car il y a pas mal de cas à gérer. Si c'est bien géré c'est nickel mais si c'est mal géré c'est largement pire qu'avant. Par exemple :

  • Bob modifie une section d'un tutoriel et que son navigateur l'enregistre,
  • Alice vient un peu plus tard et modifie la même section,
  • Bob revient sur cette section et bam, la sauvegarde écrase dans l'éditeur ce qu'Alice avait écrit, Bob enregistre, cata.

Pour cette exemple il faut vérifier si l'éditeur est vide avant de mettre la sauvegarde. Voire peut-être afficher un message demandant à l'utilisateur s'il veut utiliser la sauvegarde (avec la date ?)

Il y a peut-être d'autres cas à gérer, donc prudence :)

@motet-a motet-a changed the title from Le texte de l’éditeur persiste to [WIP] Le texte de l’éditeur persiste Sep 25, 2017

@motet-a

This comment has been minimized.

Show comment
Hide comment
@motet-a

motet-a Sep 25, 2017

Member

J’avais complètement oublié ça.

Je ne pense pas qu’il y ai besoin d’afficher un message, mais je pense que ton exemple ferais un très bon test e2e maintenant qu’on peut en faire avec Selenium. Je rajoute ça.

Member

motet-a commented Sep 25, 2017

J’avais complètement oublié ça.

Je ne pense pas qu’il y ai besoin d’afficher un message, mais je pense que ton exemple ferais un très bon test e2e maintenant qu’on peut en faire avec Selenium. Je rajoute ça.

@motet-a

This comment has been minimized.

Show comment
Hide comment
@motet-a

motet-a Sep 25, 2017

Member

@Situphen Je viens de corriger ça et de rajouter un gros test e2e (vite fait) pour tester ton scénario. On va voir ce qu’en dit Travis.

Member

motet-a commented Sep 25, 2017

@Situphen Je viens de corriger ça et de rajouter un gros test e2e (vite fait) pour tester ton scénario. On va voir ce qu’en dit Travis.

@zestedesavoir zestedesavoir deleted a comment from coveralls Sep 25, 2017

@zestedesavoir zestedesavoir deleted a comment from coveralls Sep 25, 2017

@zestedesavoir zestedesavoir deleted a comment from coveralls Sep 25, 2017

@zestedesavoir zestedesavoir deleted a comment from coveralls Sep 25, 2017

@zestedesavoir zestedesavoir deleted a comment from coveralls Sep 25, 2017

@motet-a motet-a added the QA svp label Sep 26, 2017

@motet-a motet-a changed the title from [WIP] Le texte de l’éditeur persiste to Le texte de l’éditeur persiste Sep 26, 2017

@zestedesavoir zestedesavoir deleted a comment from coveralls Oct 3, 2017

@zestedesavoir zestedesavoir deleted a comment from coveralls Oct 3, 2017

@zestedesavoir zestedesavoir deleted a comment from coveralls Oct 3, 2017

@gcodeur

This comment has been minimized.

Show comment
Hide comment
@gcodeur

gcodeur Oct 3, 2017

Member

Il y a un scénario que je trouve un peu gênant : si on crée un nouvel article en entrant une introduction et une conclusion, on les retrouvera la prochaine fois qu'on créera un article.

Pour gérer ça, pourquoi ne pas effacer l'enregistrement lors de l'envoi ?

Member

gcodeur commented Oct 3, 2017

Il y a un scénario que je trouve un peu gênant : si on crée un nouvel article en entrant une introduction et une conclusion, on les retrouvera la prochaine fois qu'on créera un article.

Pour gérer ça, pourquoi ne pas effacer l'enregistrement lors de l'envoi ?

@zestedesavoir zestedesavoir deleted a comment from coveralls Oct 7, 2017

@zestedesavoir zestedesavoir deleted a comment from coveralls Oct 7, 2017

@zestedesavoir zestedesavoir deleted a comment from coveralls Oct 7, 2017

@zestedesavoir zestedesavoir deleted a comment from coveralls Oct 8, 2017

@zestedesavoir zestedesavoir deleted a comment from coveralls Oct 8, 2017

@zestedesavoir zestedesavoir deleted a comment from coveralls Oct 8, 2017

@zestedesavoir zestedesavoir deleted a comment from coveralls Oct 8, 2017

@zestedesavoir zestedesavoir deleted a comment from coveralls Oct 8, 2017

@zestedesavoir zestedesavoir deleted a comment from coveralls Oct 12, 2017

@zestedesavoir zestedesavoir deleted a comment from coveralls Oct 12, 2017

@zestedesavoir zestedesavoir deleted a comment from coveralls Oct 12, 2017

@zestedesavoir zestedesavoir deleted a comment from coveralls Oct 12, 2017

@zestedesavoir zestedesavoir deleted a comment from coveralls Oct 12, 2017

@zestedesavoir zestedesavoir deleted a comment from coveralls Oct 12, 2017

@zestedesavoir zestedesavoir deleted a comment from coveralls Oct 12, 2017

@zestedesavoir zestedesavoir deleted a comment from coveralls Oct 12, 2017

@zestedesavoir zestedesavoir deleted a comment from coveralls Oct 12, 2017

@zestedesavoir zestedesavoir deleted a comment from coveralls Oct 12, 2017

@zestedesavoir zestedesavoir deleted a comment from coveralls Oct 12, 2017

@motet-a motet-a removed this from the Version de développement milestone Oct 22, 2017

@zestedesavoir zestedesavoir deleted a comment from coveralls Oct 31, 2017

@zestedesavoir zestedesavoir deleted a comment from coveralls Oct 31, 2017

@zestedesavoir zestedesavoir deleted a comment from coveralls Oct 31, 2017

@motet-a motet-a changed the title from Le texte de l’éditeur persiste to [WIP] Le texte de l’éditeur persiste Dec 16, 2017

@coveralls

This comment has been minimized.

Show comment
Hide comment
@coveralls

coveralls Dec 16, 2017

Coverage Status

Coverage remained the same at 89.531% when pulling 26efb1a on motet-a:persistence-editeur-bis into 81baa78 on zestedesavoir:dev.

coveralls commented Dec 16, 2017

Coverage Status

Coverage remained the same at 89.531% when pulling 26efb1a on motet-a:persistence-editeur-bis into 81baa78 on zestedesavoir:dev.

@zestedesavoir zestedesavoir deleted a comment from coveralls Dec 16, 2017

@artragis

This comment has been minimized.

Show comment
Hide comment
@artragis

artragis Dec 16, 2017

Contributor

Du coup pourquoi c'est encore en wip?

Contributor

artragis commented Dec 16, 2017

Du coup pourquoi c'est encore en wip?

@motet-a

This comment has been minimized.

Show comment
Hide comment
@motet-a

motet-a Dec 16, 2017

Member

En fait c’est juste parce que les tests que j’ai rajouté ne passent pas sur la CI pour une raison étrange. Faudrait qu’on puisse prendre un screenshot pour pouvoir débugger mais c’est compliqué 😛

Member

motet-a commented Dec 16, 2017

En fait c’est juste parce que les tests que j’ai rajouté ne passent pas sur la CI pour une raison étrange. Faudrait qu’on puisse prendre un screenshot pour pouvoir débugger mais c’est compliqué 😛

find_element('input[type=checkbox][name=subcategory]').click()
license_select = Select(find_element('#id_licence'))
license_select.options[-1].click()

This comment has been minimized.

@artragis

artragis Dec 18, 2017

Contributor

je pense qu'il te manque un licence_select.click() avant de cliquer sur l'option

@artragis

artragis Dec 18, 2017

Contributor

je pense qu'il te manque un licence_select.click() avant de cliquer sur l'option

This comment has been minimized.

@artragis

artragis Dec 29, 2017

Contributor

Je crois que je sais pourquoi. L'API officielle c'est license_select.selectByIndex(len(license_select.options));.

@artragis

artragis Dec 29, 2017

Contributor

Je crois que je sais pourquoi. L'API officielle c'est license_select.selectByIndex(len(license_select.options));.

motet-a added some commits Sep 24, 2017

Le texte de l’éditeur persiste
Sauvegarde le texte de l’éditeur dans le localStorage.

Les entrées sont écrites en utilisant une sorte de cache LRU de façon
à supprimer automatiquement les plus anciennes.

Ne fonctionne que sur les éditeurs (avec la classe `.md-editor`), ne
fonctionne pas sur tous les `<input type="text">` ou `<textarea>`.

Ne fonctionne pas avec la plupart les boutons de l’éditeur actuel,
mais je pense que c’est un petit détail étant donné que ces boutons
n’entraînent pas de modification significative du texte.

Ajoute un gros test e2e un peu sale pour être sûr que des champs de
formulaire préremplis ne soient pas remplacés par cette
fonctionnalité.

Fix #4237.

=== Contrôle qualité ===

  1. Allez sur une page avec un (ou plusieurs) éditeur de texte ;
  2. écrivez du texte dans ces éditeurs ;
  3. naviguez, fermez l’onglet, faites ce que vous voulez ;
  4. retournez sur la page de départ, vous devriez retrouver votre texte.
@coveralls

This comment has been minimized.

Show comment
Hide comment
@coveralls

coveralls Dec 29, 2017

Coverage Status

Coverage remained the same at 89.531% when pulling 719c9da on motet-a:persistence-editeur-bis into f5e3376 on zestedesavoir:dev.

coveralls commented Dec 29, 2017

Coverage Status

Coverage remained the same at 89.531% when pulling 719c9da on motet-a:persistence-editeur-bis into f5e3376 on zestedesavoir:dev.

@artragis artragis referenced this pull request Sep 12, 2018

Open

Le texte editeur persiste #5067

3 of 3 tasks complete
@artragis

This comment has been minimized.

Show comment
Hide comment
@artragis

artragis Sep 12, 2018

Contributor

Cette PR aurait mérité plus d'attention de ma part, j'ai donc repris le travail dans #5067 comme il n'y a plus qu'à modifier les tests, ça devrait aller :)

Contributor

artragis commented Sep 12, 2018

Cette PR aurait mérité plus d'attention de ma part, j'ai donc repris le travail dans #5067 comme il n'y a plus qu'à modifier les tests, ça devrait aller :)

@artragis artragis closed this Sep 12, 2018

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