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'%(string)s' % { + document.get_valid_image() + template = u'%(string)s' + except: + template = u'%(string)s' + + try: + return mark_safe(template % { 'url': reverse('document_preview', args=[document.pk]), 'thumbnail': reverse('document_thumbnail', args=[document.pk]), 'static_url': settings.STATIC_URL,