With this plugin you can offer your visitors a poll, where each user can vote for one (or more) choices. I tried to implement all their features into one plugin:

  • duplicate votes can be prevented by IP or voting can only be allowed for logged in users
  • logged in users can edit their vote afterwards
  • a poll can be closed
  • a poll can be moved to another page without loosing its data
  • well documented code
<doodle
  title="What do you like best?"
  auth="none|ip|user"
  adminUsers="user1|user2"
  adminGroups="group1|group2"
  voteType="single|multi"
  fieldwidth="auto|123px"
  closed="true|false" 
  showMode="all|own"
  showSum="true|false"
  userlist="vertical|horizontal"
  printname="both|fullname|username"
>
   * Option 1 
   * Option 2 **some wikimarkup** \\ is __allowed__!
   * Option 3
</doodle>
  • The title is also used as “key” for the plugin's data file under /data/meta
  • adminUsers and members of the adminGroups can always edit any entry
  • voteType=“single” shows round checkboxes where only one can be chosen
  • voteType=“multi” lets users check any number of square boxes
  • fieldwidth (optional) defines the width of every option column, valid options: auto or like 123px
  • If closed=“true” is set, then users cannot vote anymore. The result of the vote will still be shown.
  • If userlist=“vertical” the usernames are displayed in Rows
  • If userlist=“horizontal” the usernames are displayed in Columns
  • If showMode=“own” the users can only see there own votes. Users of Admingroup can see everything.
  • If showSum=“false” the sum line is not displayed any more.
  • If printname=“both” the fullname and the username will be displayed for Votes
  • If closed=“YYYY-MM-DD hh:mm:ss” is set, users can't vote or change their vote after the defined timestamp. Uses mysql datetime representation. You can leave out values beginning from the right if you don't need the timestamp to be that specific.

Only the title and at least one option are required. Do not change the options and their order, after the first vote has been casted! You may move the whole doodle to another page, whenever you want.