polloptionmodel.py 849 B

123456789101112131415161718192021222324
  1. from django.db import models
  2. from misago.signals import move_thread, move_thread, move_forum_content
  3. class PollOption(models.Model):
  4. poll = models.ForeignKey('Poll', related_name="option_set")
  5. forum = models.ForeignKey('Forum')
  6. thread = models.ForeignKey('Thread')
  7. name = models.CharField(max_length=255)
  8. votes = models.PositiveIntegerField(default=0)
  9. class Meta:
  10. app_label = 'misago'
  11. def move_forum_content_handler(sender, **kwargs):
  12. PollOption.objects.filter(forum=sender).update(forum=kwargs['move_to'])
  13. move_forum_content.connect(move_forum_content_handler, dispatch_uid="move_forum_polls_options")
  14. def move_thread_handler(sender, **kwargs):
  15. PollOption.objects.filter(thread=sender).update(forum=kwargs['move_to'])
  16. move_thread.connect(move_thread_handler, dispatch_uid="move_thread_polls_options")