events.py 806 B

123456789101112131415161718192021222324252627282930313233
  1. from django.utils import timezone
  2. from .models import Post
  3. def record_event(request, thread, event, context=None, commit=True):
  4. time_now = timezone.now()
  5. event_post = Post.objects.create(
  6. category=thread.category,
  7. thread=thread,
  8. poster=request.user,
  9. poster_name=request.user.username,
  10. poster_ip=request.user_ip,
  11. original='-',
  12. parsed='-',
  13. posted_on=time_now,
  14. updated_on=time_now,
  15. is_event=True,
  16. event_type=event,
  17. event_context=context,
  18. )
  19. thread.set_last_post(event_post)
  20. if commit:
  21. thread.save()
  22. if not (thread.is_hidden and thread.is_unapproved):
  23. thread.category.set_last_thread(thread)
  24. if commit:
  25. thread.category.save()
  26. return event_post