benkeks / discourse-democracy

Discourse plugin extending polls with proxy voting and quora
MIT License
0 stars 2 forks source link

DiscourseDemocracy

DiscourseDemocracy is adds proxy voting and quora for polls.

Installation

Follow Install a Plugin how-to from the official Discourse Meta, using git clone https://github.com/benkeks/discourse-democracy.git as the plugin command.

Usage

Enhanced Polls

Enabling the plugin will change poll results to display absolute numbers of votes instead of percentages.

For example, the following code generates a poll with proxy voting and a 25-vote quroum for Yes.

[poll type=regular results=always name=poll1 public=true chartType=bar]
# Should we do X? [delegate=1.0]
* Yes [min=25]
* No
* Abstain
[/poll]

Here, a poll where proxy votes count for half a direct vote and difference to 10 participation votes is added to Abstain.

[poll type=regular results=always name=poll1 public=true chartType=bar]
# Should we do Y? [delegate=0.5]
* Yes
* No
* Abstain [fill=10]
[/poll]

Naming Proxies

Every user can name a proxy who may cast votes on their behalf (in [delegate=x.y] polls) in their profile at /my/delegations. Under this route for other users, logged-in users may also see whose votes the user carries.

The delegations are not transitive. That is, votes delegated to some user cannot be passed on by the user.

Direct votes dominate indirect ones. So if a user votes in a poll where their proxy votes too, only the direct vote counts and the proxied vote is shadowed.

Changes to the delegations after the proxy has voted in a poll do not affect the count in the poll. (But if the proxy re-casts their vote, the changed delegations will take effect.)

Limitations

Feedback

If you have issues or suggestions for the plugin, please bring them up on Discourse Meta.