Commit Graph

38 Commits

Author SHA1 Message Date
Peter J. Holzer a9a778b4c3 Add links to votes 2024-10-19 19:17:21 +02:00
Peter J. Holzer ac2e4f0b62 Improve layout on narrow (e.g. mobile portrait) screens 2024-10-15 23:49:09 +02:00
Peter J. Holzer 47d318782b Merge branch 'range' 2024-10-15 01:21:09 +02:00
Peter J. Holzer 652bd7a07a Add title to template 2024-10-15 01:20:03 +02:00
Peter J. Holzer b0b656dd9d Add weights 2024-10-15 01:13:53 +02:00
Peter J. Holzer 63ac71cf9a Specify preference on a 0..100 scale 2024-10-06 13:37:30 +02:00
Peter J. Holzer b92f8490a1 Import flask.flash 2023-10-04 18:08:56 +02:00
Peter J. Holzer a147032c61 Merge branch 'master' of git.hjp.at:hjp/meeat 2023-10-04 18:05:26 +02:00
Peter J. Holzer f8226fa5a2 Implememen backwards runoff 2023-10-04 18:04:52 +02:00
Peter J. Holzer b88b0724c7 Merge branch 'master' of git.hjp.at:hjp/meeat 2023-05-14 13:17:01 +02:00
Peter J. Holzer aa9e609446 Add option direction to definition of runoff
If we're going to call it with a second parameter we should also define
it to expect one ;-)
2023-05-14 13:15:58 +02:00
Peter J. Holzer 187718f360 Weight ballots by their their best option
If the only options left are ones where a person can't make it, their
ballot shouldn't influence the result any more. Similarily when there
are only options which are questionable that ballot should have a lower
weight.

We do this by attaching a weight to each option, where real
choices get a weight of 1 and pseudo-choices (like "none of the
above") get a lower weight (theoretically that should be 0, but let's
keep that configurable). When constructing the ballots each vote gets a
monotonically decreasing weight. As options are eliminated in each
round, the weight of the ballot is recalculated as the maximum weight of
all remaining options. So this starts at 1 for all ballots, but drops as
more favourable options are eliminated, possibly down to 0 where a
ballot ceases to have an effect.
2023-05-14 12:59:11 +02:00
Peter J. Holzer 34f361a4a6 Reverse direction of instant runoff 2023-05-12 21:38:52 +02:00
Peter J. Holzer 977ecf9d07 Create meet from json file 2022-12-24 13:05:46 +01:00
Peter J. Holzer a4026460a2 Remove outline from logo 2022-12-08 14:43:04 +01:00
Peter J. Holzer b5ec8b5007 Merge branch 'master' of git.hjp.at:hjp/meeat 2022-12-08 14:37:36 +01:00
Peter J. Holzer 752491c991 Add real logo this time 2022-12-08 14:37:09 +01:00
Peter J. Holzer 134b117d44 Merge branch 'master' of git.hjp.at:hjp/meeat 2022-12-08 14:17:32 +01:00
Peter J. Holzer a5e32526cc Make logging configurable 2022-12-08 14:17:19 +01:00
Peter J. Holzer a078ef14b5 Add logo 2022-12-08 14:15:20 +01:00
Peter J. Holzer 537c2ba4b5 Show voters and order 2022-12-08 14:12:52 +01:00
Peter J. Holzer c45e514bfc Handle ballots of uneven length 2022-11-29 20:55:23 +01:00
Peter J. Holzer d1ffb55f08 Merge branch 'master' of git.hjp.at:hjp/meeat 2022-11-13 21:40:23 +01:00
Peter J. Holzer a163976b1d Make session permanent (90 days, actually) 2022-11-13 21:39:37 +01:00
Peter J. Holzer bad50c51cf Display all votes 2022-11-13 21:37:54 +01:00
Peter J. Holzer b6db3f0ea9 List people who already voted 2022-11-09 00:04:07 +01:00
Peter J. Holzer 37ed14e1d6 Use all positions to determine order
Since we expect very few votes there is a high probability that several
candidates will be not be ranked first by anybody. Which one is
eliminated is essentially random, so it could happen that a candidate
which is ranked second by everybody (and therefore would probably be the
winner) is eliminated in the first round and never considered again.
To prevent this, we sort by all ranks in order. So among those with the
same number of first ranks the one with the most second ranks wins, if
those are also the same we use the third rank etc. This should ensure
that each round really eliminates the worst candidate (ties are still
possible, but only if the votes at all ranks are the same - in which
case no objective distinction is left and random choice is acceptable).
2022-11-08 23:16:38 +01:00
Peter J. Holzer 182b292bc1 Fix log message 2022-11-08 22:43:58 +01:00
Peter J. Holzer 6edca66f7e Display interim results 2022-11-07 23:06:51 +01:00
Peter J. Holzer 41d545d191 Merge branch 'master' of git.hjp.at:hjp/meeat 2022-11-07 21:43:25 +01:00
Peter J. Holzer d4b551dc1a Start on layout 2022-11-07 21:42:24 +01:00
Peter J. Holzer e21caec1e2 Activate sortables only once 2022-11-07 21:41:17 +01:00
Peter J. Holzer 0877d7678f Make blue-background-class true ;-) 2022-11-07 21:40:20 +01:00
Peter J. Holzer 049a8d0d70 Test instant runoff algorithm 2022-11-07 21:06:14 +01:00
Peter J. Holzer 93730d95fb Fix vote update 2022-11-05 12:09:00 +01:00
Peter J. Holzer 8143c6286f Fix URL in confirmation mail 2022-11-05 11:47:46 +01:00
Peter J. Holzer 760cac56b2 Fix requirements 2022-11-05 11:47:22 +01:00
Peter J. Holzer 65a19eb756 Implement basic voting 2022-11-05 09:51:32 +01:00