forums.py 2.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354
  1. from django.utils import timezone
  2. from misago.models import Forum, Thread, Post
  3. from misago.utils.fixtures import load_monitor_fixture
  4. from misago.utils.strings import slugify
  5. def load():
  6. Forum(token='annoucements', name='annoucements', slug='annoucements', type='forum').insert_at(None, save=True)
  7. Forum(token='private', name='private', slug='private', type='forum').insert_at(None, save=True)
  8. Forum(token='reports', name='reports', slug='reports', type='forum').insert_at(None, save=True)
  9. root = Forum(token='root', name='root', slug='root')
  10. root.insert_at(None, save=True)
  11. cat = Forum(type='category', name='First Category', slug='first-category')
  12. cat.insert_at(root, save=True)
  13. forum = Forum(type='forum', name='First Forum', slug='first-forum', threads=1, posts=1)
  14. forum.insert_at(cat, save=True)
  15. Forum(type='redirect', name='Project Homepage', slug='project-homepage', redirect='http://misago-project.org').insert_at(cat, position='last-child', save=True)
  16. Forum.objects.populate_tree(True)
  17. now = timezone.now()
  18. thread = Thread.objects.create(
  19. forum=forum,
  20. name='Welcome to Misago!',
  21. slug=slugify('Welcome to Misago!'),
  22. start=now,
  23. last=now,
  24. )
  25. post = Post.objects.create(
  26. forum=forum,
  27. thread=thread,
  28. user_name='MisagoProject',
  29. ip='127.0.0.1',
  30. agent='',
  31. post='Welcome to Misago!',
  32. post_preparsed='Welcome to Misago!',
  33. date=now,
  34. )
  35. thread.start_post = post
  36. thread.start_poster_name = 'MisagoProject'
  37. thread.start_poster_slug = 'misagoproject'
  38. thread.last_post = post
  39. thread.last_poster_name = 'MisagoProject'
  40. thread.last_poster_slug = 'misagoproject'
  41. thread.save(force_update=True)
  42. forum.last_thread = thread
  43. forum.last_thread_name = thread.name
  44. forum.last_thread_slug = thread.slug
  45. forum.last_thread_date = thread.last
  46. forum.last_poster = thread.last_poster
  47. forum.last_poster_name = thread.last_poster_name
  48. forum.last_poster_slug = thread.last_poster_slug
  49. forum.save(force_update=True)
  50. load_monitor_fixture({'threads': 1, 'posts': 1})