annotate gpp/forums/management/commands/forum_cleanup.py @ 445:e9f203c5f5bb

Attempting to fix #218; update the topic last visit time with 'now' when viewing the last page of a topic, otherwise use the creation time of the last post on the page.
author Brian Neal <bgneal@gmail.com>
date Wed, 08 Jun 2011 00:24:41 +0000
parents 7e19180b128d
children
rev   line source
bgneal@307 1 """
bgneal@307 2 forum_cleanup.py - A management command to cleanup forum model objects. Right
bgneal@307 3 now this entails deleting old forum and topic last visit records.
bgneal@307 4
bgneal@307 5 """
bgneal@307 6 import datetime
bgneal@307 7
bgneal@307 8 from django.core.management.base import NoArgsCommand, CommandError
bgneal@307 9
bgneal@307 10 from forums.models import ForumLastVisit, TopicLastVisit
bgneal@307 11 import forums.unread
bgneal@307 12
bgneal@307 13
bgneal@307 14 class Command(NoArgsCommand):
bgneal@307 15 help = "This command deletes old forum and topic last visit records."
bgneal@307 16
bgneal@307 17 def handle_noargs(self, **opts):
bgneal@307 18
bgneal@307 19 now = datetime.datetime.now()
bgneal@307 20 threshold = now - forums.unread.THRESHOLD * 2
bgneal@307 21
bgneal@307 22 # delete old topic last visit records
bgneal@307 23 TopicLastVisit.objects.filter(last_visit__lt=threshold).delete()
bgneal@307 24
bgneal@307 25 # delete old forum visit records
bgneal@307 26 ForumLastVisit.objects.filter(end_date__lt=threshold).delete()