Fix sorting
[wolnelektury.git] / src / catalogue / models / book.py
index d7c6f01..375c79a 100644 (file)
@@ -38,9 +38,9 @@ bofh_storage = BofhFileSystemStorage()
 class Book(models.Model):
     """Represents a book imported from WL-XML."""
     title = models.CharField('tytuł', max_length=32767)
-    sort_key = models.CharField('klucz sortowania', max_length=120, db_index=True, editable=False)
+    sort_key = models.CharField('klucz sortowania', max_length=120, db_index=True, db_collation='C', editable=False)
     sort_key_author = models.CharField(
-        'klucz sortowania wg autora', max_length=120, db_index=True, editable=False, default='')
+        'klucz sortowania wg autora', max_length=120, db_index=True, db_collation='C', editable=False, default='')
     slug = models.SlugField('slug', max_length=120, db_index=True, unique=True)
     common_slug = models.SlugField('wspólny slug', max_length=120, db_index=True)
     language = models.CharField('kod języka', max_length=3, db_index=True, default=app_settings.DEFAULT_LANGUAGE)
@@ -815,8 +815,8 @@ class Book(models.Model):
     def update_stats(self):
         stats = self.wldocument2().get_statistics()['total']
         self.pages = round(
-            stats['verses_with_fn'] / 30 +
-            stats['chars_out_verse_with_fn'] / 1800)
+            stats.get('verses_with_fn', 0) / 30 +
+            stats.get('chars_out_verse_with_fn', 0) / 1800)
         self.read_time = round(self.get_time())
         self.save(update_fields=['pages', 'read_time'])
         if self.parent is not None: