Metadata-Version: 2.0
Name: collective.contentalerts
Version: 0.4.post1
Summary: An add-on for Plone to get alerts about content
Home-page: https://github.com/collective/collective.contentalerts
Author: Gil Forcada
Author-email: gilforcada@gmail.com
License: GPL version 2
Keywords: Python Plone
Platform: UNKNOWN
Classifier: Environment :: Web Environment
Classifier: Framework :: Plone
Classifier: Framework :: Plone :: 4.3
Classifier: Programming Language :: Python
Classifier: Programming Language :: Python :: 2.7
Classifier: Operating System :: OS Independent
Classifier: License :: OSI Approved :: GNU General Public License v2 (GPLv2)
Requires-Dist: plone.api
Requires-Dist: plone.app.contentrules
Requires-Dist: plone.app.registry
Requires-Dist: plone.contentrules
Requires-Dist: plone.registry
Requires-Dist: plone.stringinterp
Requires-Dist: Products.GenericSetup
Requires-Dist: setuptools
Requires-Dist: Zope2
Requires-Dist: zope.component
Requires-Dist: zope.formlib
Requires-Dist: zope.i18nmessageid
Requires-Dist: zope.interface
Requires-Dist: zope.publisher
Requires-Dist: zope.schema
Provides-Extra: test
Requires-Dist: Acquisition; extra == 'test'
Requires-Dist: plone.app.contenttypes[test] (<1.2); extra == 'test'
Requires-Dist: plone.app.discussion; extra == 'test'
Requires-Dist: plone.app.testing; extra == 'test'
Requires-Dist: plone.browserlayer; extra == 'test'
Requires-Dist: plone.testing; extra == 'test'
Requires-Dist: Products.CMFPlone; extra == 'test'
Requires-Dist: Products.MailHost; extra == 'test'
Requires-Dist: Products.statusmessages; extra == 'test'

.. This README is meant for consumption by humans and pypi. Pypi can render rst files so please do not use Sphinx features.
   If you want to learn more about writing documentation, please check out: http://docs.plone.org/about/documentation_styleguide_addons.html
   This text does not appear on pypi or github. It is a comment.

.. image:: https://secure.travis-ci.org/collective/collective.contentalerts.png?branch=master
    :target: http://travis-ci.org/collective/collective.contentalerts
    :alt: Travis

.. image:: https://coveralls.io/repos/collective/collective.contentalerts/badge.svg?branch=master&service=github
    :target: https://coveralls.io/github/collective/collective.contentalerts?branch=master
    :alt: Coveralls

========================
collective.contentalerts
========================
Get alerts whenever a (custom list of) word is found on a content object,
be that object any content type (Dexterity or Archetypes).

Can be used to:

- moderate: used as a blacklist.
- highlight: used as a whitelist.

The basic idea is to use the power of `plone.app.contentrules`_ to inspect
content being generated by users for certain words.

Upon that, regular `plone.app.contentrules`_ actions can be triggered:
send an email, notify the user...

Features
--------
- manage a list of words that will be used to search (blacklist/whitelist)
- integration with  `plone.app.contentrules`_:

  - a condition to look for stop words
  - string substitutions to add on emails the snippets where the stop words
    where found (one for documents and one for comments)

- standalone utility
- provide different word lists if you need them,
  either a general one (plone.registry based) or on a per contentrule basis
- look for stop words on comments, dexterity and archetypes content types
- apply a marker interface to objects that are found to have stop words

Where it searches on
--------------------
collective.contentalerts searches either on the comments' text,
on ``getText()`` (for Archetypes based content types) or
on ``text`` (for Dexterity based content types).

Standalone usage
----------------
While the main integration within Plone is via a p.a.contentrules condition,
``collective.contentalerts`` can also be used as a standalone utility.

Just get the utility (``collective.contentalerts.interfaces.IAlert``) and use
the provided methods.

Examples
--------
This add-on can be seen in action at the following sites:

- *Still not*

Documentation
-------------
Full documentation for end users can be found in the "docs" folder.

Translations
------------
This product has been translated into:

- *Still not*

Installation
------------
Install collective.contentalerts by adding it to your buildout::

   [buildout]

    ...

    eggs =
        collective.contentalerts


and then running "bin/buildout"

Contribute
----------
- Issue Tracker: https://github.com/collective/collective.contentalerts/issues
- Source Code: https://github.com/collective/collective.contentalerts

Support
-------
If you are having issues, please let us know.

License
-------
The project is licensed under the GPLv2.

Credits
-------

`der Freitag`_ sponsored the creation of this add-on.


.. _plone.app.contentrules:  https://pypi.python.org/pypi/plone.app.contentrules
.. _der Freitag:  https://www.freitag.de

Contributors
============

- Gil Forcada, gilforcada@gmail.com

Changelog
=========

0.4.post1 (2015-08-31)
----------------------
- Add German translation.
  [staeff]

0.4.post0 (2015-08-19)
----------------------
- Create wheels as well.

0.4 (2015-08-19)
----------------
- Add a browser view to remove the IHasStopWords marker interface on a per object basis.
  [gforcada]

0.3.1 (2015-08-17)
------------------
- Make sure that the ``IHasStopWords`` marker interface is indexed on the catalog.
  [gforcada]

0.3.post0 (2015-08-15)
----------------------
- Fix package URL.
  [gforcada]

0.3 (2015-08-14)
----------------
- Correctly split stop words text so that it takes into account different line endings.
  [gforcada]

- Ignore empty lines on stop words to not produce unexpected results.
  [gforcada]

0.2 (2015-08-14)
----------------
- Split string subtitutions in two: ``text_alert`` and ``comment_alert``.
  [gforcada]

0.1 (2015-08-14)
----------------
- Initial release.
  [gforcada]

- Fix package structure:

  - remove unneeded parts
  - add travis and coveralls badges

  [gforcada]

- Add a ``plone.registry`` to keep the general stop words list.
  [gforcada]

- Add a control panel configlet to edit the stop words list.
  [gforcada]

- Add more code analysis checks, dependency tracker and MANIFEST check
  [gforcada]

- Add utility to search for stop words on a given text
  [gforcada]

- Add a plone.app.contentrules condition: ``collective.contentalerts.TextAlert``
  [gforcada]

- Add a string substitution: ``text_alert``. To be used to compose emails on a contentrule
  [gforcada]

- Apply a marker interface to the objects that are found to have a stop words.
  [gforcada]



