Allow blank source in cover.
[redakcja.git] / apps / cover / views.py
index 0c29209..4bb6d50 100644 (file)
@@ -25,8 +25,8 @@ def preview(request, book, chunk=None, rev=None):
     If chunk and rev number are given, use version from given revision.
     If rev is not given, use publishable version.
     """
     If chunk and rev number are given, use version from given revision.
     If rev is not given, use publishable version.
     """
-    import Image
-    from librarian.cover import WLCover
+    from PIL import Image
+    from librarian.cover import DefaultEbookCover
     from librarian.dcparser import BookInfo
 
     chunk = Chunk.get(book, chunk)
     from librarian.dcparser import BookInfo
 
     chunk = Chunk.get(book, chunk)
@@ -45,7 +45,7 @@ def preview(request, book, chunk=None, rev=None):
         info = BookInfo.from_string(xml)
     except:
         return HttpResponseRedirect(os.path.join(settings.STATIC_URL, "img/sample_cover.png"))
         info = BookInfo.from_string(xml)
     except:
         return HttpResponseRedirect(os.path.join(settings.STATIC_URL, "img/sample_cover.png"))
-    cover = WLCover(info)
+    cover = DefaultEbookCover(info)
     response = HttpResponse(mimetype=cover.mime_type())
     image = cover.image().resize(PREVIEW_SIZE, Image.ANTIALIAS)
     image.save(response, cover.format)
     response = HttpResponse(mimetype=cover.mime_type())
     image = cover.image().resize(PREVIEW_SIZE, Image.ANTIALIAS)
     image.save(response, cover.format)
@@ -56,10 +56,10 @@ def preview(request, book, chunk=None, rev=None):
 @require_POST
 def preview_from_xml(request):
     from hashlib import sha1
 @require_POST
 def preview_from_xml(request):
     from hashlib import sha1
-    import Image
+    from PIL import Image
     from os import makedirs
     from lxml import etree
     from os import makedirs
     from lxml import etree
-    from librarian.cover import WLCover
+    from librarian.cover import DefaultEbookCover
     from librarian.dcparser import BookInfo
 
     xml = request.POST['xml']
     from librarian.dcparser import BookInfo
 
     xml = request.POST['xml']
@@ -68,7 +68,7 @@ def preview_from_xml(request):
     except:
         return HttpResponse(os.path.join(settings.STATIC_URL, "img/sample_cover.png"))
     coverid = sha1(etree.tostring(info.to_etree())).hexdigest()
     except:
         return HttpResponse(os.path.join(settings.STATIC_URL, "img/sample_cover.png"))
     coverid = sha1(etree.tostring(info.to_etree())).hexdigest()
-    cover = WLCover(info)
+    cover = DefaultEbookCover(info)
 
     cover_dir = 'cover/preview'
     try:
 
     cover_dir = 'cover/preview'
     try:
@@ -125,7 +125,7 @@ def add_image(request):
             if ff.is_valid():
                 form = forms.ImageAddForm(ff.cleaned_data)
         else:
             if ff.is_valid():
                 form = forms.ImageAddForm(ff.cleaned_data)
         else:
-            form = forms.ImageAddForm(request.POST)
+            form = forms.ImageAddForm(request.POST, request.FILES)
             if form.is_valid():
                 obj = form.save()
                 return HttpResponseRedirect(obj.get_absolute_url())
             if form.is_valid():
                 obj = form.save()
                 return HttpResponseRedirect(obj.get_absolute_url())