follow-up from voting tool
Open Questions
Bugs / serious problems
-
Dates/times can be a problem if the client is in a different timezone. In the backend, all dates are in CET. Clients should convert their dates to CET before sending them (when creating/editing polls) and convert received dates from CET to local time before displaying them. -
Polls can be created to start and even end in the past. This must be prevented by the backend and frontend validation. -> some unit tests would be good -
'creation_timestamp' is not included in the seed testing data -
Can there be an overflow or accidental restriction of the invitations? Berlin noticed that the number of invited people ("Foodsaver mit Stammbezirk") might have been too low. -
The scope "only ambassadors / admins" doesn't invite anyone when used in a working group (we have deactivated the function for now). This is probably caused by the query in VotingGateway::getAmbassadorsIDsOfSubregions
-
option texts are cut after 206 characters (see https://beta.foodsharing.de/?page=poll&id=881) -
option "only verified" does not work: non-verified foodsharers are able to vote (see https://beta.foodsharing.de/?page=poll&id=880 and https://beta.foodsharing.de/?page=bezirk&bid=2937&sub=forum&tid=122211&pid=817581#post-817581) -
when editing a poll, the number of options is limited to 10. If the poll had more than 10 options, some of them will be removed. (https://foodsharing.de/?page=bezirk&bid=2296&sub=forum&tid=144801&pid=834809#post-834809) -
do not select slider values by default (in score-voting) or set them to 0 instead of -3 -
Show also the result from -3 to +3 (and add the + while voting and in result)
Frontend updates
-
Invert the direction of the sliders again, so that the numbers increase to the right (see discussion in https://foodsharing.de/?page=bezirk&bid=2296&sub=forum&tid=144801&pid=869551#post-869551) -
Show a notification "The order of the following options is the same for everyone" during voting in addition to the "The order is random" ("Die Reihenfolge der folgenden zur Auswahl stehenden Optionen ist fest vorgegeben und für alle Abstimmenden gleich") -
in the results for score voting: show the sum in addition to the average (https://foodsharing.de/?page=bezirk&bid=2296&sub=forum&tid=144801&pid=826309#post-826309) -
make it more difficult to accidentally send the poll creation form multiple times (https://foodsharing.freshdesk.com/a/tickets/1650) or: in case of an error show information that the poll might have been created -
markdown for description text -
show in poll overview table if I'm allowed to vote -
make it more visible in a poll (maybe on the top) if I'm allowed to vote -
show number of people who were eligible to vote in the final results or even in the ongoing poll -
show number of people who will be eligible to vote when/before creating a poll -
add menu item to groups menu -
shuffle the options of a poll (in the frontend) to avoid a position effect (see #975 (comment 427722227) below) and display a short text explaining this -
remove scope "only store managers" from form when creating a poll in a work group, since work groups don't have stores -
make texts gender-neutral -
show confirm dialog before submitting a new poll -
move metadata (start and end date, poll type, ...) above description text ( !1780 (merged)) -
make "you have already voted" text more visible (coloured background?) and maybe replace the "voting is anonymous" text with it ( !1780 (merged)) -
thumb voting: use a different colour for selected values. Light green and dark green are not easy to distinguish. ( !1780 (merged)) -
add a button that allows orga to delete polls (backend function is already implemented) -
change default colour of vue-sliders in score-voting (https://ej2.syncfusion.com/vue/documentation/slider/how-to/customize-slider-bar/) and of the bootstrap alert components to something more foodsharing-ish -
frontend validation: ( !1854 (merged)) -
no longer works properly when an option is added or removed. [from MR]( !1633 (comment 404305566) -
does not properly work for the end date: the form cannot be submitted if the end date is invalid (that's how it's supposed to be), but the error text below the end date chooser is not shown )
-
-
add a description above the sliders in score-voting ( #975 (comment 434430217)) -
add instructions and/or hints in the UI to make it easier to use. This could be -
a long text explaining the usage in detail -> https://wiki.foodsharing.de/Abstimmungs-Modul -
tooltip texts (maybe over an icon next to UI elements?) that explain them a bit -
display an explanation why people are not allowed to vote, especially if they entered a region after a poll was created -
mention that options are shuffled in the frontend ( #975 (comment 427722227)) -
make the different scopes more clear: Who exactly would be able to vote? Are sub-regions added as well? ... -
...
-
-
make the region name in a poll a link to the region -
result tables for scopes "thumbs" and "score voting" do not show the average but the sum because the denominator is missing -> either divide it by the number of votes or change the column title -
use paginated results in polls table if the number of polls becomes too large ( !2385 (merged)) -
the order of the thumb buttons is not the same as in the scope description ( !1868 (merged) ) -
Form validation when creating a poll: all options are shown as invalid (red border) if only one of them is invalid. -
allow markdown for the texts of the options
Further improvements
-
set the minimal number of options to 1 for score and thumb voting (https://foodsharing.de/?page=bezirk&bid=2296&sub=forum&tid=144801&pid=833456#post-833456) -
bell notifications when a poll will start or when it has ended (in the nightly maintenance?) -
possible notification by e-mail -
display ongoing polls on the dashboard -
[ ] consensus with +10 and -10 -
Shouldn't it be possible for the creator to change a vote before the vote has started? ( !1786 (merged)) -
allow multiple-choice vote with restricted number of crosses, e.g. select 4 of 10 -
automatically remove "new poll" bell notification when I voted in that poll -
allow multiple questions per poll: this would need a restructuring of the whole data model with a poll containing multiple questions, each questions containing multiple options, and two new tables fs_question
andfs_question_has_option
-
the scope "Alle Betriebsverantwortlichen aus dem Bezirk / der Gruppe" sounds like everyone with a finished BV-quiz would be allowed to vote. Either the text needs to make clear that it is only active BVs from stores or we could support both options. In a work group only the first option would not useful. -
The 'new poll'-bells don't have an expiration date yet. Should they have one? -
add more validations in the backend: - restrict a poll's date, e.g. can not be set in a year from now future
- check that a vote should be at least x days long
-
allow polls for stores: - add a new optional (default=null) field
store_id
to thefs_poll
- add new scopes to the 'new poll' form and the enum class: 'everyone in the store', 'only active members of the store', 'only jumpers'. If one of those is selected a dropdown should be visible for selecting a store in the region. The invitation process for each scope needs to be added.
- backend checks: if one of those scopes is selected the poll needs to have a valid
store_id
- permissions: admins of 'AG Abstimmungen' should be able to select all stores of the region, managers of stores should be able to select only those. This also needs to be checked when submitting a poll.
- The poll page should contain a link to the store.
- On a store's page: add a possibility (dropdown list/popup/...) to show a list of links to the store's polls. This is especially important as stores can "move" to a different district. In that case a poll would stay associated with the old district but the store contains links to it.
- optional: add a reminder for an ongoing poll to the store's wall (only show it if the person did not vote yet). This fulfils the same role as the bell notifications but is displayed more obvious in the store.
- add a new optional (default=null) field
-
Allow disabling the random shuffling of options when creating a poll. (https://foodsharing.de/?page=bezirk&bid=2937&sub=forum&tid=122211&pid=691561#post-691561) !1986 (merged) -
it shouldn't be possible to create a poll where multiple options have the same text -
add a preview mode before submitting a new poll
Data Privacy
- Gather all open points and make one update to the DS when it is finalized
- What happens if a person's profile is deleted from the platform but the person was an option in a poll? Does the poll have to be deleted?
Additional discussions: https://beta.foodsharing.de/?page=bezirk&bid=2296&sub=forum&tid=144801&pid=1251262
Edited by Martin Goldenbaum