threadreadmodel.py 790 B

123456789101112131415161718192021222324
  1. from django.db import models
  2. from misago.forums.signals import move_forum_content
  3. from misago.threads.signals import move_thread
  4. class ThreadRecord(models.Model):
  5. user = models.ForeignKey('User')
  6. forum = models.ForeignKey('Forum')
  7. thread = models.ForeignKey('Thread')
  8. updated = models.DateTimeField()
  9. class Meta:
  10. app_label = 'misago'
  11. def move_forum_content_handler(sender, **kwargs):
  12. ThreadRecord.objects.filter(forum=sender).update(forum=kwargs['move_to'])
  13. move_forum_content.connect(move_forum_content_handler, dispatch_uid="move_forum_threads_reads")
  14. def move_thread_handler(sender, **kwargs):
  15. ThreadRecord.objects.filter(thread=sender).delete()
  16. move_thread.connect(move_thread_handler, dispatch_uid="move_thread_reads")