Metadata-Version: 2.0
Name: collective.polls
Version: 1.8.1
Summary: A content type, workflow, and portlet for conducting online polls, for anonymous and logged-in users.
Home-page: https://github.com/collective/collective.polls
Author: Franco Pellegrini
Author-email: frapell@ravvit.net
License: UNKNOWN
Keywords: plone dexterity polls
Platform: UNKNOWN
Classifier: Development Status :: 5 - Production/Stable
Classifier: Environment :: Web Environment
Classifier: Framework :: Plone
Classifier: Framework :: Plone :: 4.2
Classifier: Framework :: Plone :: 4.3
Classifier: Intended Audience :: End Users/Desktop
Classifier: Intended Audience :: System Administrators
Classifier: License :: OSI Approved :: GNU General Public License v2 (GPLv2)
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: JavaScript
Classifier: Programming Language :: Python
Classifier: Programming Language :: Python :: 2.7
Classifier: Topic :: Office/Business :: News/Diary
Classifier: Topic :: Software Development :: Libraries :: Python Modules
Requires-Dist: AccessControl
Requires-Dist: Products.CMFCore
Requires-Dist: Products.CMFPlone (>=4.2)
Requires-Dist: Products.GenericSetup
Requires-Dist: collective.z3cform.widgets (>=1.0b3)
Requires-Dist: five.grok
Requires-Dist: plone.api
Requires-Dist: plone.app.dexterity[grok,relations]
Requires-Dist: plone.app.portlets
Requires-Dist: plone.app.referenceablebehavior
Requires-Dist: plone.directives.dexterity
Requires-Dist: plone.memoize
Requires-Dist: plone.portlets
Requires-Dist: plone.uuid
Requires-Dist: setuptools
Requires-Dist: zope.component
Requires-Dist: zope.i18nmessageid
Requires-Dist: zope.interface
Requires-Dist: zope.schema
Provides-Extra: test
Requires-Dist: collective.cover; extra == 'test'
Requires-Dist: mock; extra == 'test'
Requires-Dist: plone.app.robotframework; extra == 'test'
Requires-Dist: plone.app.testing[robot] (>=4.2.2); extra == 'test'
Requires-Dist: plone.dexterity; extra == 'test'
Requires-Dist: plone.testing; extra == 'test'
Requires-Dist: robotsuite; extra == 'test'

****************
collective.polls
****************

.. contents:: Table of Contents

Life, the Universe, and Everything
----------------------------------

A content type, workflow and portlet for conducting online polls, for
anonymous and logged-in users.

Mostly Harmless
---------------

.. image:: http://img.shields.io/pypi/v/collective.polls.svg
   :target: https://pypi.python.org/pypi/collective.polls

.. image:: https://img.shields.io/travis/collective/collective.polls/master.svg
    :target: http://travis-ci.org/collective/collective.polls

.. image:: https://img.shields.io/coveralls/collective/collective.polls/master.svg
    :target: https://coveralls.io/r/collective/collective.polls

Got an idea? Found a bug? Let us know by `opening a support ticket`_.

.. _`opening a support ticket`: https://github.com/collective/collective.polls/issues

Don't Panic
-----------

Installation
^^^^^^^^^^^^

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.2 you need to add the following also::

    [versions]
    ...
    collective.js.jqueryui = 1.8.16.9

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.

Features
^^^^^^^^

- 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

Workflow description
^^^^^^^^^^^^^^^^^^^^

The workflow associated with polls has the following states: 'Private',
'Pending review', 'Open' and 'Closed'.

- Polls are created in 'Private' state; only Owner, Manager, Editor or Site
  Administrator roles can modify them.

- When a poll is in 'Private' state it can be sent to 'Pending review' or
  directly to 'Open' state, if the user has the proper role (Reviewer, Manager
  or Site Administrator).

- When a poll is in 'Pending review' state it can be edited by Manager,
  Editor, Reviewer or Site Administrator roles.

- A poll in 'Pending review' state can be sent to 'Open' state, with "Review
  portal content" permission, or to Private, with "Request review" permission.

- When the poll is 'Open' users 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 in 'Closed' state nobody can modify it, nor can anyone vote
  on it; a closed poll can always be reopened by usera with proper
  permissions.

Not entirely unlike
-------------------

`Plone PoPoll`_
    A very old an unmaintained product, PoPoll includes a poll tool that
    allows member or anonymous to vote for one or more answers. A portlet is
    provided. It can be configured to display the last poll, or the first poll
    of a folder. After the vote statistics screens are shown.

.. _`Plone PoPoll`: http://plone.org/products/plonepopoll

Share and Enjoy
---------------

``collective.polls`` would not have been possible without the contribution of
the following people:

- Franco Pellegrini
- Héctor Velarde
- Érico Andrei
- Rafahela Bazzanella
- Silvestre Huens
- Elio Schmutz
- Timon Tschanz
- Maurits van Rees
- Jean-Michel FRANCOIS
- Rodrigo Ferreira de Souza
- `WebDesignerDepot`_ (icon)

You can find an updated list of package contributors on `GitHub`_.

Development sponsored by Open Multimedia and `Simples Consultoria`_.

.. _`WebDesignerDepot`: http://www.webdesignerdepot.com/
.. _`GitHub`: https://github.com/collective/collective.polls/contributors
.. _`Simples Consultoria`: http://www.simplesconsultoria.com.br/

Changelog
---------

There's a frood who really knows where his towel is.

1.8.1 (2015-12-11)
^^^^^^^^^^^^^^^^^^

- The display of poll results was refactored to avoid issues with reverse proxies like Varnish;
  updates are now handled client-side using AJAX calls (closes `#96`_).
  [rodfersou]


1.8 (2015-11-24)
^^^^^^^^^^^^^^^^

- Add link to show partial results of an open poll (closes `#93`_).
  [rodfersou]

- Poll tile now displays the results of the poll after a vote has been cast (closes `#90`_).
  [rodfersou]


1.7 (2015-08-25)
^^^^^^^^^^^^^^^^^^

- Add Poll tile for collective.cover.
  [hvelarde]


1.6.2 (2015-03-11)
^^^^^^^^^^^^^^^^^^

- Add upgrade step to remove missing resource from JS registry (fixes `#83`_).
  [hvelarde]

- Update German translation.
  [mbaechtold]

- Added Czech translation
  [naro]


1.6.1 (2014-08-19)
^^^^^^^^^^^^^^^^^^

- Remove ``@@legendothers_translation.js`` because it is not used anywhere.
  [rafaelbco]


1.6 (2014-05-01)
^^^^^^^^^^^^^^^^

- Add a default value to the voting portlet ``poll`` parameter. This fixes an
  issue happening when importing ``portlets.xml`` assignments.
  [ericof]

- Remove unnecesary code in portlet (closes `#73`_).
  [nueces]

- In portlet link back to poll page (closes `#47`_).
  [marcosfromero]


1.5 (2013-12-17)
^^^^^^^^^^^^^^^^

- Make the add-on aware of subsites (INavigationRoot) [rafaelbco]

- Implement show_total for the portlet (closes `#64`_). [marcosfromero]

- Depend on plone.api.
  [hvelarde]

- Remove dependency on unittest2; package is not going to be tested under
  Python 2.6 anymore.
  [hvelarde]

- Drop support for Plone 4.1. [hvelarde]

- Add French translation. [toutpt]


1.4 (2013-04-10)
^^^^^^^^^^^^^^^^^^

- 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]


1.3.1 (2013-03-27)
^^^^^^^^^^^^^^^^^^

- 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]


1.3 (2013-01-14)
^^^^^^^^^^^^^^^^

- 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]


1.2 (2012-09-16)
^^^^^^^^^^^^^^^^

- 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]


1.1 (2012-08-14)
^^^^^^^^^^^^^^^^^^

- 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]


1.0.1 (2012-05-08)
^^^^^^^^^^^^^^^^^^

- Fix UnicodeDecodeError in PossiblePolls vocabulary when we have a
  poll with umlauts in the title. [elioschmutz]

- Add German translation. [elioschmutz]


1.0 (2012-05-02)
^^^^^^^^^^^^^^^^

- 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]


1.0rc2 (2012-02-20)
^^^^^^^^^^^^^^^^^^^

- 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]

- Fixed javascript registry uninstall and tests. [hvelarde]


1.0rc1 (2012-01-10)
^^^^^^^^^^^^^^^^^^^

- Initial release.

.. _`#35`: https://github.com/collective/collective.polls/issues/35
.. _`#47`: https://github.com/collective/collective.polls/issues/47
.. _`#51`: https://github.com/collective/collective.polls/issues/51
.. _`#53`: https://github.com/collective/collective.polls/issues/53
.. _`#61`: https://github.com/collective/collective.polls/issues/61
.. _`#64`: https://github.com/collective/collective.polls/issues/64
.. _`#73`: https://github.com/collective/collective.polls/issues/73
.. _`#83`: https://github.com/collective/collective.polls/issues/83
.. _`#90`: https://github.com/collective/collective.polls/issues/90
.. _`#93`: https://github.com/collective/collective.polls/issues/93
.. _`#96`: https://github.com/collective/collective.polls/issues/96


