|
@@ -0,0 +1,22 @@
|
|
|
|
+from django.core.management.base import BaseCommand
|
|
|
|
+from misago.markdown import post_markdown
|
|
|
|
+from misago.models import Post
|
|
|
|
+
|
|
|
|
+class Command(BaseCommand):
|
|
|
|
+ help = 'Reparse markdown for all forum posts'
|
|
|
|
+
|
|
|
|
+ def handle(self, *args, **options):
|
|
|
|
+ count = 0
|
|
|
|
+ total = Post.objects.count()
|
|
|
|
+ last = 0
|
|
|
|
+
|
|
|
|
+ self.stdout.write('\nReparsing posts...')
|
|
|
|
+ for post in Post.objects.iterator():
|
|
|
|
+ md, post.post_preparsed = post_markdown(post.post)
|
|
|
|
+ post.save(force_update=True)
|
|
|
|
+ count += 1
|
|
|
|
+ progress = (count * 100 / total)
|
|
|
|
+ if not progress % 10 and progress > last and progress < 100:
|
|
|
|
+ self.stdout.write('Reparsed %s out of %s posts...' % (count, total))
|
|
|
|
+ last = progress
|
|
|
|
+ self.stdout.write('\n%s posts have been reparsed.\n' % count)
|