Alternative Voting MOD Changelog
A special Thank You to Pedro Lamarao, aka Thoth39, who started this MOD.
Also thanks to Idoric who is at the origin of the thread that started it all.
Known Bugs
More up-to-date information about existing bugs can be found in the announcement topics in the Election Method Implementation forum. Please report any bug you may find in the Agora, in the same forum.
- Check for consistent, multilanguage support. Even though we have made efforts to use the $lang variable everywhere, there are still some strings left that are hard coded in the templates, especially those linking to the documentation which exists only in English. When the MOD will be translated, those strings will become apparent and dealt with accordingly.
- check that a name is not entered twice in a poll(non MOD-specific bug)
- phpbb informs only when trying to post the poll that we entered too many options not when we are actually doing so.(non MOD-specific bug)
Road Map
Future features implementations, coming more or less in this order:
- control panel: check box to view nb of votes.
- Have different maximum option values for different election methods
- Enhanced, more convenient new poll posting. add a few rows at a time up to limit.(non MOD-specific bug)
- With big condorcet ballots (20, 30, 40 or more candidates) it'd be nice to view our vote, with candidates printed in ranking order, giving us a chance to change the vote before committing. Note: since version 0.18, this could be easily implemented. For now, just tick remember my vote, and you can view your ballot and modify it straight away.
- Nomination feature: add a name to an ongoing approval poll.
- Have an option to show more information on how the result was calculated (show SSD defeat matrix).
- In Condorcet voting, calculate winner according to different algorythms.
- Calculate the IDW, or the Smith Set.
- Allow moderator to close ongoing polls from forum moderation panel.
- When previewing a new post, preview the poll at the same time.
And also, maybe, in a more distant future:
- More than one poll in a topic, allowing for more in-depth analysis of the results (like, "50% of the respondants from such a country approve of..., of which 35% also approve of...").
Patch Changelog
| date | version | type | author | notes |
| 18 jul 2005 | 0.27 phpBB 2.0.16 | Security | Augustin | At last, under popular demand (one person!), I have upgraded my installation to the latest phpBB official released security update, 2.0.16. Now, I can reopen my board, which has been closed for the last few months. |
| 3 dec 2004 | 0.26 | bugfix | Augustin | In the original phpBB, a poll couldn't be modified if people had started voting. Obviously. In the MOD, this didn't work for Condorcet polls, because the original code was adding the number of votes cast for each candidate, which was always NULL for Condorcet polls. Now, we check the time the last vote was cast. If no vote was cast yet, the time is NULL and the poll can be modified. When modifying a poll, the poll type is remembered and properly displayed in the poll entry form (posting_poll_body.tpl). |
| 2 dec 2004 | 0.25 phpBB 2.0.11 | security | Augustin | This mod was originally based on phpBB 2.0.5, soon upgraded to 2.0.6. Since then, many security fixes have been applied to the core phpBB engine. I have now upgraded the MOD to the latest phpBB version, 2.0.11. The old patch didn't work completely as expected, but now everything seems to be working fine. |
| 2 dec 2004 | 0.24 | code fix | Augustin | In order to facilitate future translation, all the English strings have been moved from lang_main.php to a new file called lang_election_methods.php. People wishing to translate this MOD into other languages, need only looking at this file, which is not very big... |
| 29 nov 2004 | 0.23 | feature | Augustin | When viewing the results of a Condorcet poll, all the candidates are now ranked from the overall Condorcet winner down to the last candidate. The winners are calculated recursively according to the Cloneproof Condorcet SSD (Schwartz Sequential Dropping) voting algorithm. |
| 29 nov 2004 | 0.22 | feature | Augustin | In Approval and Plurality polls, the result is now ordered from the highest vote getter downwards. |
| 21 sep 2004 | 0.21 | bugfix | Augustin | In Condorcet, candidates who are omitted are ranked one step lower than people who are ranked last. When modifying a ballot whereby a candidate was ranked last and one was omitted, the two are displayed having the same ranking (last). This doesn't affect the ballots previously entered or the way the ballots were counted. It's just that the ballot presented to the voter for revision is not exactly the one they cast. The easy solution to that bug would have been to leave blank the spaces where the name of the omitted candidates would have been. The better solution adopted was to recalculate the rankings of all the candidates, so that there is no candidate's name missing and so that people can see the real meaning of omitting candidates. |
| 21 sep 2004 | 0.20 | feature | Augustin | A useful little feature whereby in viewforum.php, we have the possibility to have one more column with the number of votes for each topic and the date the last vote was cast. This features depends on three conditions:
|
| 19 sep 2004 | 0.19 | feature | Augustin | In viewforum.php, the type of the poll is presented in brakets (like this: [Condorcet]) for each topic. There is no need to add this information in the topic title anymore. |
| 18 sep 2004 | 0.18 | feature | Augustin | This is an important new feature, and the only one so far which was actually requested. Voters now have the choice to have their vote remembered so that they can modify it at a later time. This was necessary because the board is educative in nature. People are not familiar with this kind of voting, so they should try to get it right by trial and error. Also, the first people who vote are at a desadvantage compared with the people who vote later because they cannot see the results of the poll before voting. Read also about privacy and coding issues in this page for developpers. |
| 23 Aug 2004 | 0.17 | feature | Augustin | In some places in the subSilver template files, I have added links to relevant documentation. The documentation itself is not complete, so I have only added links to the existing condorcet matrix, ballot pages and to the documentation home page. |
| 23 Aug 2004 | 0.16 | bugfix | Augustin | More than a bugfix, this is a features fix. So far, there was two options for condorcet polls: strict (full ranking) or traditional Condorcet. It seems that the Election Method experts don't care that much for full-ranked Condorcet. Since this is an educative board designed for people who have no prior exposure to Alternative voting methods, it's probably best to keep things simple, and especially avoid unecessary complications with Condorcet Voting. Therefore, the strict Condorcet voting method is temporarily disabled, leaving us with only one type of Condorcet voting. The option has been disabled in templates/subSilver/posting_poll_body.tpl. |
| 22 Mar 2004 | 0.15 | bugfix | Augustin | In Approval voting, the percentage for each choice was not calculated properly. For example, imagine that the first voter to vote in such a poll chooses two options among many. Each of these two options would then show 50% (half of all the choices made, each voter making many) instead of 100% (all the voters chose that option). |
| 29 Feb 2004 | 0.14 | useability fix | Augustin | On a day that comes only once every four years, and one day after the historical day of 228 2004 in Taiwan, I made this useability fix I am quite happy about. It's been a while that I've been trying to get the right layout for condorcet ballots, especially for ballots with a large number of candidates. The poll here with 45 candidates was quite a one to handle. The previous design needed 250 lines of tabulated text on the screen for the whole ballot to be presented. It now fits in 45 lines with a handy design that allow the voter to conveniently rank the candidates starting from the top (most prefered) to the bottom (least prefered), the preselected rankings allow for a quick voting procedure but still allow enough flexibility to rank several candidates equally. Not all candidates have to be entered in the ballot. This new convenient design scales well for small as well as large ballot. It may well be the definite design. |
| 27 Feb 2004 | 0.13 | bugfix | Augustin | Another fix designed to handle condorcet polls with a large number of candidates. The table with 10 radio buttons per line turned out to be quite heavy to handle by the browser. I still favor radio buttons to pulldown menus because they are easier to handle by the user when voting and they show graphically the relative position of the candidates. It is however definitely not a solution for polls with more than 10 candidates. There is now a breakup: with up to ten candidates, the simple condorcet ballot is presented with radio buttons, otherwise pull down menus are used to rank each candidate (i.e. one pull down menu per candidate). The ballot for Full ranking Condorcet has not changed at all: they were already using pull down menus. |
| 20 Feb 2004 | 0.12 | bugfix | Augustin | With the number of candidates ranging above a dozen, the condorcet ballot can get pretty ugly on the screen. To remedy this, I put the ranking radio buttons in a table so that it is nicely presented in rows of tens. With big ballots (20, 30, 40 or more candidates) it'd be nice to view our vote, with candidates printed in ranking order, giving us a chance to change the vote before committing. |
| 20 Feb 2004 | 0.11 | Feature | Augustin | The condorcet matrix now highlights the SSD-beatpath matrix using different background colors. The SSD-beatpath matrix is used to calculate the winner in the election. |
| 19 Feb 2004 | 0.10 | Feature | Augustin | The board now offers two variants of Condorcet voting: first, the traditional Condorcet voting where the voter is free to rank several candidates in the same place and Condorcet full-ranking voting where the candidates must strictly be ordered from first to last. Deprecated: see 0.16 and also code support issues regarding Condorcet full ranking. |
| 16 Feb 2004 | 0.09 | bugfix | Augustin | A small bug whereby a SQL message error would appear when trying to view the results of a condorcet poll where nobody had voted yet. |
| 16 Feb 2004 | 0.08 | bugfix | Augustin | In viewtopic.php and posting.php, the poll-handling code was getting very important. For readability issues, I have put them in different files: viewtopic_election-methods.php and posting_election_method.php. This change is only cosmetic from the coder's point of view but ensure a more readable code that will better accomodate future development. |
| 07 Feb 2004 | 0.07 | bugfix | Augustin | The names of the candidates used to be displayed on the top of the matrix. With full names with the party affiliation, though, this created an unsightly matrix that wouldn't fit within the margin of the browser. Now, the names are numbered on the left side and only the number show at the top. |
| 04 Feb 2004 | 0.06 | Bugfix | Augustin | As new options are entered in the poll, phpbb remembers which election method was selected. |
| 04 Fev 2004 | 0.05 | Feature | Augustin | In a condorcet voting, the winner is now computed from the matrix, according to the Cloneproof Condorcet SSD (Schwartz Sequential Dropping) voting algorithm. The Condorcet SSD algorithm is known to be equivalent to the Condorcet Beatpath Winner algorithm, and it is considered to be the state of the art single-winner voting algorithm. |
| 03 Fev 2004 | 0.04 | Bugfix | Augustin | In condorcet voting, a voter could cast a truncated or unvalid vote (ranking the same candidate several times). Now, the ballot is checked for validity before being saved. |
| 02 Fev 2004 | 0.03 | Bugfix | Augustin | When viewing a Condorcet vote, the result was not displayed at all with MySQL 4: only a matrix full of zeros was displayed. This bug previously did not affect board using MySQL 3 which is handled differently by phpbb. This bug was particularly incidious and gave me a major headache over a few days! |
| 29 Jan 2004 | 0.02 phpBB 2.0.6 | Bugfix | Augustin | In approval voting, when voting for the last candidate, the last choice was not taken into account. |
| 01 Jul 2003 | 0.01 phpBB 2.0.5 | Feature | Pedro Lamarao | Original patch written by Pedro Lamarao, a.k.a. Thoth39. This first patch prepared the switches in the code needed to handle different types of elections. His contribution was essential and determining for this project. Wihout him, this phpBB MOD would not have been born. |
