Skip to content

Vote table refresh

AyM requested to merge (removed):vote-table-refresh into develop

(je décris en français… ce serait trop long à faire en anglais pour moi)

Pour l’entête sticky, le tableau est coupé en 2 :

  • #t-act (actions pour voter, consulter le graph, modifier les colonnes) qui contient l’entête
  • et #t-res (résultats) qui contient le corps et le pied

Le scroll horizontal est synchronisé avec #t-res tbody comme référence.
Donc on est obligé de garder #t-res même si les résultats du sondage ne sont pas publique ou s’il n’y a pas encore eu de vote.
(lien vers l’article qui explique comment avoir du sticky + scroll horizontal)

Le formulaire de vote s’adapte à 3 cas de figure possibles, les options sont affichées :

  • au passage de la souris sur pc
  • au tap (focus), tap (click) sur mobile/tablette
  • ou tout le temps visible si on navigue au clavier Tout dépend des classes css placées en amont (mousable, focused, kb-only)

Le passage à la navigation clavier désactive le mode sticky. Il était compliqué de voter et scroller horizontalement sinon.
Le menu d’aide passe en position:fixed et les raccourcis en position:relative au dessus du bouton Enregistrer.
(À vérifier, mais normalement c’est censé être cette vue qui reste à l’impression)

J’ai mis à jour chart.js et déplacé toute sa config dans core.js. Ça évite de l’avoir en double sur vote_table_classic.tpl et vote_table_date.tpl.
Cette version permet plus de choses comme afficher/masquer des éléments du graphique depuis la légende (comme sur laue) donc j’ai ajouté les votes « Non » (avec une meilleure palette de couleurs aussi).
Dans la même moulinette js il y a un rappel des votants de chaque colonne en tooltip dans le pied (dans la limite du raisonnable).

J’ai ajouté des tooltips là où ça manquait (cellules en text-overflow: ellipsis), suivi de ligne, boutons peu explicite.

Sur l’aide, j’ai remplacé la modale par un dropdown, le bouton se trouve dans le coin gauche du tableau. J’ai fusionné poll_hint_admin.tpl et poll_hint.tpl
La légende permet d’afficher/masquer les résultats comme sur le graphique.

J’ai pu tester le rendu des pages mais pas les interactions poussées (voter, éditer…), il y a des erreurs dans les logs que je ne sais pas résoudre.
Il faudra ajouter aussi les traductions pour l’option « Je ne sais pas ».

Edited by Thomas

Merge request reports