vhost static fix
[turniej.git] / apps / poetry / models.py
index 244538a..ef8bf94 100644 (file)
@@ -3,6 +3,7 @@ import os
 import subprocess
 from django.db import models
 from django.core.urlresolvers import reverse
+from django.conf import settings
 from poetry.utils import get_hash
 
 
@@ -29,7 +30,7 @@ class Poet(models.Model):
             stdout=subprocess.PIPE, stderr=subprocess.PIPE)
         os.chdir(curdir)
         stdout, stderr = proc.communicate()
-        text = stdout.decode("utf-8")[:1000]
+        text = unicode(stdout, "utf-8", errors="ignore")[:1000]
         slug = get_hash(text)
         title = ''
         if self.first_line_title:
@@ -44,6 +45,14 @@ class Poet(models.Model):
             )
         return poem
 
+    def make_for_contest(self):
+        assert not self.poem_set.filter(for_contest=True).exists()
+        for i in range(settings.POETRY_POEMS_FOR_CONTEST):
+            p = self.write()
+            p.for_contest = True
+            p.save()
+        return self.poem_set.filter(for_contest=True)
+
 
 class Poem(models.Model):
     slug = models.SlugField(max_length=50, db_index=True)