fix for files with no dc
authorRadek Czajka <radoslaw.czajka@nowoczesnapolska.org.pl>
Thu, 22 Jul 2010 15:01:49 +0000 (17:01 +0200)
committerRadek Czajka <radoslaw.czajka@nowoczesnapolska.org.pl>
Thu, 22 Jul 2010 15:01:49 +0000 (17:01 +0200)
apps/catalogue/models.py
lib/librarian

index 8c83faa..dd251c1 100644 (file)
@@ -17,7 +17,7 @@ from newtagging.models import TagBase, tags_updated
 from newtagging import managers
 from catalogue.fields import JSONField
 
-from librarian import dcparser, html, epub
+from librarian import dcparser, html, epub, NoDublinCore
 from mutagen import id3
 
 
@@ -406,9 +406,12 @@ class Book(models.Model):
 
             # Create EPUB
             epub_file = StringIO()
-            epub.transform(book.xml_file, epub_file)
-            book.epub_file.save('%s.epub' % book.slug, ContentFile(epub_file.getvalue()), save=False)
-            FileRecord(slug=book.slug, type='epub', sha1=sha1(epub_file.getvalue()).hexdigest()).save()
+            try:
+                epub.transform(book.xml_file, epub_file)
+                book.epub_file.save('%s.epub' % book.slug, ContentFile(epub_file.getvalue()), save=False)
+                FileRecord(slug=book.slug, type='epub', sha1=sha1(epub_file.getvalue()).hexdigest()).save()
+            except NoDublinCore:
+                pass
 
             # Extract fragments
             closed_fragments, open_fragments = html.extract_fragments(book.html_file.path)
index 4edcff3..5b17465 160000 (submodule)
@@ -1 +1 @@
-Subproject commit 4edcff3a9e2a4bb2ecb7ab228e5bf37dd28d7e14
+Subproject commit 5b174651e7cadaa9c353cd247fbfcde41b012f3a