django-moderator 1.1.3
Django Bayesian inference based comment moderation app.
License: BSD

Django Moderator
================
**Django community trained Bayesian inference based comment moderation app.**

.. contents:: Contents
    :depth: 5

``django-moderator`` integrates Django's comments framework classify comments into one of four categories, *ham*, *spam*, *reported* or *unsure*.

Users classify comments as *reported* using a *report abuse* mechanic. Staff users can then classify these *reported* comments as *ham* or *spam*.

Comments classified as *spam* will have their ``is_removed`` field set to ``True`` and as such will no longer be visible in comment listings.

Comments *reported* by users will have their ``is_removed`` field set to ``True`` and as such will no longer be visible in comment listings.

Comments classified as *ham* or *unsure* will remain unchanged and as such will be visible in comment listings.

``django-moderator`` also implements a user friendly admin interface for efficiently moderating comments.


Installation
------------

#. Install or add ``django-moderator`` to your Python path.

#. Add ``moderator`` to your ``INSTALLED_APPS`` setting.

#. Configure ``django-likes`` as described `here <http://pypi.python.org/pypi/django-likes>`_.

#. Configure ``django-celery`` and add ``moderator.tasks`` to the ``CELERY_IMPORTS = (..., 'moderator.tasks')``

#. Add a ``MODERATOR`` setting to your project's ``settings.py`` file. This setting specifies what classifier storage backend to use (see below) and also classification thresholds::

    MODERATOR = {
        'ABUSE_CUTOFF': 3,
    }

   `ABUSE_CUTOFF`` value of ``3`` as in this example specifies that any comment receiving ``3`` or more abuse reports will be classified as *reported*, awaiting further manual staff user classification.

#. Optionally, if you want an additional **moderate** object tool on admin change views, configure ``django-apptemplates`` as described `here <http://pypi.python.org/pypi/django-apptemplates>`_ , include ``moderator`` as an ``INSTALLED_APP`` before ``django.contrib.admin`` and add ``moderator.admin.AdminModeratorMixin`` as a base class to those admin classes you want the tool available for.

Additional Settings
-------------------
#. By default moderator comment replies are posted chronologically **after** the comment being replied to. If however you need replies to be posted **before** the comment being replied to(for example if you display your comments reverse cronologically), you can specify ``REPLY_BEFORE_COMMENT`` as ``True``, i.e.::

    MODERATOR = {
        ...
        'REPLY_BEFORE_COMMENT': True,
        ...
    }


Authors
=======

Praekelt Foundation
-------------------
* Shaun Sephton
* Milton Madanda
* Simon de Haan

Changelog
=========
1.1.3 (2014-08-29)
------------------
#. Ensure admin doesn't break when content_type not match

1.1.2 (2014-04-24)
------------------
#. Ensure SecretBallot doesn't override default manager for Comments

1.1.1 (2014-02-12)
------------------
#. Show is removed column  in comments

1.1.0 (2014-02-12)
------------------
#. Ensure spam comments are listed in SpamComments

1.0.9 (2014-02-03)
------------------
#. Allow filtering of comments by username - fix param error

1.0.8 (2014-02-03)
------------------
#. Allow filtering of comments by username

1.0.7 (2014-01-16)
------------------
#. Ensure reported comments are listed in admin

1.0.6 (2014-01-15)
------------------
#. Fix migrations - ensure comment replies are not lost

1.0.5 (2014-01-15)
------------------
#. Set current user as the default user for CommentReply

1.0.4 (2014-01-14)
------------------
#. Remove dependency to spambayes (redundant)

1.0.3 (2013-12-04)
------------------
#. Fixed error when selecting multiple comments for replying in admin

1.0.2 (2013-11-28)
------------------
#. Only report abuse for comments

1.0.1 (2013-11-22)
------------------
#. Fix canned responses showing for all sites and not just selected site

1.0.0 (2013-11-21)
------------------
#. *MAJOR* Remove Bayesian filtering. Only rely on manual moderation and user abuse reports

0.1.4 (2013-08-23)
------------------
#. Remove check for abuse previously reported.

0.1.3 (2013-03-07)
------------------
#. Include fixtures.

0.1.2 (2013-03-07)
------------------
#. Include fixtures.

0.1.1 (2013-03-07)
------------------
#. Added elivated abuse reporting functionality.

0.1.0 (2013-03-07)
------------------
#. Realtime classification option.
#. Mark spam with reply action.
#. Post replies before comment option.

0.0.9 (2013-02-18)
------------------
#. Further speed optimizations.

0.0.8 (2013-02-18)
------------------
#. Admin speed optimizations.
#. Add moderator reply admin action.

0.0.7 (2013-01-28)
------------------
#. Added moderate admin change view tool.

0.0.6 (2013-01-24)
------------------
#. Added site field for canned replies and filter accordingly on comment admin views.

0.0.5 (2012-12-03)
------------------
#. Added ``traincommentclassifier`` management command.
#. Admin proxy model additions to clearly group comments.
#. Various optimizations.

0.0.4 (2012-08-29)
------------------
#. Migration to add moderator_commentreply model.

0.0.3 (2012-08-29)
------------------
#. Include templates.

0.0.2 (2012-08-29)
------------------
#. Wide range of changes allowing for reporting of abusive comments by users.

0.0.1 (2012-05-23)
------------------
#. Initial release