diff --git a/apps/documents/models.py b/apps/documents/models.py
index efdd6a6841..d4bb53f274 100644
--- a/apps/documents/models.py
+++ b/apps/documents/models.py
@@ -248,10 +248,13 @@ class Document(models.Model):
document_file = document_save_to_temp_dir(self, self.checksum)
return convert(document_file, output_filepath=cache_file_path, page=page, transformations=transformations)
+ def get_valid_image(self, size=DISPLAY_SIZE, page=DEFAULT_PAGE_NUMBER, zoom=DEFAULT_ZOOM_LEVEL, rotation=DEFAULT_ROTATION):
+ image_cache_name = self.get_image_cache_name(page=page)
+ return convert(image_cache_name, cleanup_files=False, size=size, zoom=zoom, rotation=rotation)
+
def get_image(self, size=DISPLAY_SIZE, page=DEFAULT_PAGE_NUMBER, zoom=DEFAULT_ZOOM_LEVEL, rotation=DEFAULT_ROTATION):
try:
- image_cache_name = self.get_image_cache_name(page=page)
- return convert(image_cache_name, cleanup_files=False, size=size, zoom=zoom, rotation=rotation)
+ return self.get_valid_image(size=size, page=page, zoom=zoom, rotation=rotation)
except UnknownFileFormat:
return get_icon_file_path(self.file_mimetype)
except UnkownConvertError:
diff --git a/apps/documents/widgets.py b/apps/documents/widgets.py
index 56657bfcef..b875aade25 100644
--- a/apps/documents/widgets.py
+++ b/apps/documents/widgets.py
@@ -6,7 +6,13 @@ from django.core.urlresolvers import reverse
def document_thumbnail(document):
try:
- return mark_safe(u'
' % {
+ document.get_valid_image()
+ template = u'
'
+ except:
+ template = u'
'
+
+ try:
+ return mark_safe(template % {
'url': reverse('document_preview', args=[document.pk]),
'thumbnail': reverse('document_thumbnail', args=[document.pk]),
'static_url': settings.STATIC_URL,