view gpp/forums/management/commands/forum_cleanup.py @ 532:ff67946fd4b0

For #242, move the updating of the POTD sequence into a new signals module. When photos are deleted from the admin changelist in bulk, the individual delete() functions on the photo objects is not called. However, the post_delete signal is called for each object.
author Brian Neal <bgneal@gmail.com>
date Sun, 25 Dec 2011 04:15:32 +0000
parents 7e19180b128d
children
line wrap: on
line source
"""
forum_cleanup.py - A management command to cleanup forum model objects. Right
now this entails deleting old forum and topic last visit records.

"""
import datetime

from django.core.management.base import NoArgsCommand, CommandError

from forums.models import ForumLastVisit, TopicLastVisit
import forums.unread


class Command(NoArgsCommand):
    help = "This command deletes old forum and topic last visit records."

    def handle_noargs(self, **opts):

        now = datetime.datetime.now()
        threshold = now - forums.unread.THRESHOLD * 2

        # delete old topic last visit records
        TopicLastVisit.objects.filter(last_visit__lt=threshold).delete()

        # delete old forum visit records
        ForumLastVisit.objects.filter(end_date__lt=threshold).delete()