Permettre la finalisation d’un sondage par l’administrateur
Une fois la décision prise, mettre un bouton : Sondage finalisé
Cette fonctionnalité me paraît d’abord tout à fait pertinente pour Framadate. Ensuite, il s’agit d’un travail de développement à mon sens intéressant (car touche à de nombreux fichiers à différents niveaux du projet) et suffisamment complexe.
Les deux premiers points sont à traiter, le troisième est encore en réflexion.
Pour résoudre cette issue (les deux premiers points), il est indispensable de la scinder en plusieurs sous-problèmes.
La décomposition sera donc la suivante :
Ajout d’une fonctionnalité admin “Close the poll“
Une fois un sondage fermé, plus aucune modification ne peut lui être apportée, c’est à dire :
closed
à la table poll
(attribut booléen (TINYINT
), par défault à FALSE
(0
))AddColumnclosedInpoll.php
* Appel à ce nouveau fichier dans le fichier
migration.php
* MAJ de la méthode
update($poll) de la classe
PollRepository (pour prendre en compte le nouvel attribut)
* Ajout de l’affichage du nouveau paramètre
closed dans
pollinfo.tpl
(côté admin et public)Close the poll
dans pollinfo.tpl (côté admin)
* Ajout d’un script de confirmation de fermeture de sondage :
closepoll.tpl
(si confirmation, passage de la valeur de closed
à TRUE
(1
))pollinfo.tpl,
votetableclassic.tpl et
votetable_date.tpl
: prise en compte de la valeur de closed
dans l’affichage ou non des fonctionnalités (cf description)en.json
)Ajout de deux fonctionnalités admin ”Select the choice made” et “Explain the choice“
Une fois un sondage fermé, il est possible de sélectionner le choix retenu (ce choix est unique) par l’administrateur du sondage : une icône apparaît au dessus de chacune des colonnes pour la sélection. La valeur de ce choix est accessible dans les informations sur le sondage, côté admin et côté public.
Implémentation de ”Select the choice made“
adminchoice à la table
poll (attribut chaîne de caractères (
VARCHAR), par défault à
”” (la chaîne vide))
* Ajout d’un fichier de migration :
AddColumnadminchoiceInpoll.php
* Appel à ce nouveau fichier dans le fichier
migration.php
* MAJ de la méthode
update($poll) de la classe
PollRepository (pour prendre en compte le nouvel attribut)
* Ajout de l’affichage côté admin et côté public de
adminchoice
dans pollinfo.tpl (si le sondage est fermé)
* Ajout de l’affichage côté admin de boutons check au dessus de chaque colonne pour sélectionner un choix dans
votetableclassic.tpl et
votetabledate.tpl (si le sondage est fermé)
* Ajout du traitement du clic sur le bouton check pour modifier la valeur de
adminchoice
dans adminstuds.php
en.json
)Implémentation de “Explain the choice“
adminchoiceexp
à la table poll
(attribut chaîne de caractères (VARCHAR
), par défault à ””
(la chaîne vide))AddColumnadminchoiceexpInpoll.php
* Appel à ce nouveau fichier dans le fichier
migration.php
* MAJ de la méthode
update($poll) de la classe
PollRepository (pour prendre en compte le nouvel attribut)
* Ajout de l’affichage côté admin et côté public de
adminchoiceexp dans
pollinfo.tpl
(si le sondage est fermé)adminchoiceexp
(si le sondage est fermé)adminchoiceexp
dynamiquement dans adminstuds.js
adminchoiceexp
dans adminstuds.php
en.json
)