A content type, workflow, and portlet for conducting online polls, for anonymous and logged-in users.
Table of Contents
A content type, workflow and portlet for conducting online polls, both for anonymous and logged-in users.
- Polls can be opened for anonymous users to vote;
- If an open poll is allowed for anonymous but is inside a private folder, nobody can vote. Therefore the poll's parent folder needs to be published before opening the poll in order for this field to take effect;
- Voting can take place either in the object or in a voting portlet;
- The voting portlet can show the latest open poll or ab specific open poll and closed polls;
- Users can see partial results of the poll;
- Results can be shown using a bar chart, a pie chart, or just by number of votes;
- Polls can have relations with other content in the site.
The workflow associated with polls has the following states: Private, Pending review, Open and Closed.
- Polls are created in Private state, so only Owner, Manager, Editor or Site Administrator roles can modify them);
- When a poll is Private it can be sent to Pending review or directly to Open state, if the user has the proper role (Reviewer, Manager, Site Administrator);
- When a poll is Pending review it can be edited by Manager, Editor, Reviewer or Site Administrator roles;
- A poll in Pending review can be sent to Open, with "Review portal content" permission, or to Private, with "Request review" permission;
- When the poll is Open people can only vote; nobody can modify the poll in any way;
- An Open poll can be sent to Private or Closed state by Reviewer, Manager or Site Administrator roles;
- When an Open poll is sent to Private, all votes are removed to avoid data manipulation;
- When a poll is Closed nobody can modify it, nor can anyone vote on it; there is no way to reopen a closed poll.
To enable this product in a buildout-based installation:
Edit your buildout.cfg and add collective.polls to the list of eggs to install:
[buildout] ... eggs = collective.polls
If you are using Plone 4.1 you may need to extend a Dexterity known good set (KGS) to make sure that you get the right versions of the packages that make up Dexterity:
[buildout] ... extends = http://good-py.appspot.com/release/dexterity/1.2.1
After updating the configuration you need to run ''bin/buildout'', which will take care of updating your system.
Go to the 'Site Setup' page in a Plone site and click on the 'Add-ons' link.
Check the box next to ''collective.polls'' and click the 'Activate' button.
Note: You may have to empty your browser cache and save your resource registries in order to see the effects of the product installation.
Because you have to know where your towel is.
- Tested for Plone 4.3 compatibility. [ericof, hvelarde]
- Anonymous voters can now vote again on a reopened poll (fixes #35). [ericof]
- Remove cmf.ManagePortal permission when editing the portlets. [flecox]
- Fix refreshing the portlet. Previously no html would be returned when the portlet was defined on a default page. The refresh would fail with a ComponentLookupError when used inside a panel of collective.panels. [maurits]
- Fixing jQuery bug when doing AJAX call in portlet. [flecox]
- Test compatibility with Plone 4.3. [hvelarde]
- Bump up version of collective.z3cform.widgets dependency to 1.0b3. [hvelarde]
- Declare Pillow as a package dependency. [hvelarde]
- Add Dutch translation. [fredvd]
- Fixed permissions checks for anonymous users when a poll is at the root level of the site (fixes #61). [vincentpsarga]
- EnhancedTextLinesFieldWidget widget was updated; new features (like inline editing and reordering) are now available. [hvelarde]
- Added the 'open' transition to the 'closed' state, that way, polls can be re-opened after they were closed (closes #53). [frapell]
- Multiple poll charts can be rendered in one page. [Quimera]
- Multiple poll portlets can be rendered in one page. [Quimera]
- Updated Brazilian Portuguese translation. [rafahela]
- Add translation functionality for the 'Others' string and translate it to German. [eschmutz]
- Fixed translation strings for actions on poll workflow; updated Spanish and Brazilian Portuguese translations. [hvelarde]
- Update German translations. [tschanzt]
- allow_anonymous field is always shown (fixes #51). [hvelarde]
- Some refactoring on tests was done; we now test for CSS installation and removal. [hvelarde]
- DataGridField widget was replaced with EnhancedTextLinesFieldWidget. [flecox, hvelarde]
- Fix UnicodeDecodeError in PossiblePolls vocabulary when we have a poll with umlauts in the title. [elioschmutz]
- Add German translation. [elioschmutz]
- Tested for Plone 4.2 compatibility. [hvelarde]
- Updated Dexterity version requirement (we want to use latest version to avoid any issues). [hvelarde]
- Added a nice hack to include both README.txt and README.rst in the package declaration. [hvelarde]
- Pie chart is now shown when all votes go to one option (issue #27). [flecox]
- Ajax load of partial results on portlet (issue #37). [Quimera]
- Updated Brazilian Portuguese translation. [ericof]
- Added option to control if portlet shows closed polls when no open ones are available (issue #32). [ericof]
- Added validation for Poll options (issue #31). [ericof]
- Add a subscriber to erase votes when poll is sent back to revision (issue #33). [ericof]
- Fix Anonymous permissions to View and Vote on polls. [ericof]
- Modify workflows and permissions to be consistent with the ones used in Plone. [ericof]
- Fixed MANIFEST.in file. [nueces]
- Renamed the workflow state to 'Opened' instead of 'Published' (issue #26). [frapell]
- Updated tests and translations. [frapell]
- Added the pieChart to the portlet (issue #23). [frapell]
- Made the poll redirect to the place where the vote was casted (issue #22). [frapell]
- Updated Spanish translation. [hvelarde]
- Fixed permissions on private and pending states (issue #20). [hvelarde]
- Initial release.
[X] Unit tests
[ ] End-user documentation
[X] Internal documentation (documentation, interfaces, etc.)
[ ] Existed and maintained for at least 6 months
[X] Installs and uninstalls cleanly
[X] Code structure follows best practice
Released Apr 10, 2013 — tested with Plone 4.1, Plone 4.2
- Get collective.polls for all platforms
- If you are using Plone 3.2 or higher, you probably want to install this product with buildout. See our tutorial on installing add-on products with buildout for more information.
|1.4||Apr 10, 2013||More about this release…||
|1.3.1||Mar 27, 2013||More about this release…||
|1.3||Jan 14, 2013||More about this release…||
|1.2||Sep 17, 2012||More about this release…||GPLv2||final|
|1.1||Aug 14, 2012||More about this release…||GPL||final|
|1.0rc2||Feb 20, 2012||Maintenance release. More about this release…||
|1.0rc1||Jan 10, 2012||Initial release of collective.polls More about this release…||
|1.0.1||May 08, 2012||More about this release…||GPL||final|
|1.0||May 02, 2012||Bug fix and Plone 4.2 compatibility tested. More about this release…||