self._send_progress(70, 100, 'WORKING',
MESSAGE_GENERATING_THUMBNAIL)
thumbnail = document_parser.get_optimised_thumbnail(
- self.path, mime_type)
+ self.path, mime_type, self.filename)
text = document_parser.get_text()
date = document_parser.get_date()
try:
thumb = parser.get_optimised_thumbnail(
- document.source_path, document.mime_type)
+ document.source_path,
+ document.mime_type,
+ document.get_public_filename()
+ )
shutil.move(thumb, document.thumbnail_path)
finally:
def get_archive_path(self):
return self.archive_path
- def get_thumbnail(self, document_path, mime_type):
+ def get_thumbnail(self, document_path, mime_type, file_name=None):
"""
Returns the path to a file we can use as a thumbnail for this document.
"""
raise NotImplementedError()
- def get_optimised_thumbnail(self, document_path, mime_type):
- thumbnail = self.get_thumbnail(document_path, mime_type)
+ def get_optimised_thumbnail(self,
+ document_path,
+ mime_type,
+ file_name=None):
+ thumbnail = self.get_thumbnail(document_path, mime_type, file_name)
if settings.OPTIMIZE_THUMBNAILS:
out_path = os.path.join(self.tempdir, "thumb_optipng.png")
class DummyParser(DocumentParser):
- def get_thumbnail(self, document_path, mime_type):
+ def get_thumbnail(self, document_path, mime_type, file_name=None):
# not important during tests
raise NotImplementedError()
_, self.fake_thumb = tempfile.mkstemp(suffix=".png", dir=scratch_dir)
self.archive_path = archive_path
- def get_optimised_thumbnail(self, document_path, mime_type):
+ def get_optimised_thumbnail(self, document_path, mime_type, file_name=None):
return self.fake_thumb
def parse(self, document_path, mime_type, file_name=None):
class CopyParser(DocumentParser):
- def get_thumbnail(self, document_path, mime_type):
+ def get_thumbnail(self, document_path, mime_type, file_name=None):
return self.fake_thumb
- def get_optimised_thumbnail(self, document_path, mime_type):
+ def get_optimised_thumbnail(self, document_path, mime_type, file_name=None):
return self.fake_thumb
def __init__(self, logging_group, progress_callback=None):
class FaultyParser(DocumentParser):
- def get_thumbnail(self, document_path, mime_type):
+ def get_thumbnail(self, document_path, mime_type, file_name=None):
# not important during tests
raise NotImplementedError()
super(FaultyParser, self).__init__(logging_group)
_, self.fake_thumb = tempfile.mkstemp(suffix=".png", dir=scratch_dir)
- def get_optimised_thumbnail(self, document_path, mime_type):
+ def get_optimised_thumbnail(self, document_path, mime_type, file_name=None):
return self.fake_thumb
def parse(self, document_path, mime_type, file_name=None):
)
-def fake_get_thumbnail(self, path, mimetype):
+def fake_get_thumbnail(self, path, mimetype, file_name):
return os.path.join(os.path.dirname(__file__), "examples", "no-text.png")
def test_get_optimised_thumbnail(self):
parser = DocumentParser(None)
- parser.get_optimised_thumbnail("any", "not important")
+ parser.get_optimised_thumbnail("any", "not important", "document.pdf")
@mock.patch("documents.parsers.DocumentParser.get_thumbnail", fake_get_thumbnail)
@override_settings(OPTIMIZE_THUMBNAILS=False)
def test_get_optimised_thumb_disabled(self):
parser = DocumentParser(None)
- path = parser.get_optimised_thumbnail("any", "not important")
- self.assertEqual(path, fake_get_thumbnail(None, None, None))
+ path = parser.get_optimised_thumbnail("any", "not important", "document.pdf")
+ self.assertEqual(path, fake_get_thumbnail(None, None, None, None))
class TestParserAvailability(TestCase):
)
return result
- def get_thumbnail(self, document_path, mime_type):
+ def get_thumbnail(self, document_path, mime_type, file_name=None):
return make_thumbnail_from_pdf(
document_path, self.tempdir, self.logging_group)
logging_name = "paperless.parsing.text"
- def get_thumbnail(self, document_path, mime_type):
+ def get_thumbnail(self, document_path, mime_type, file_name=None):
def read_text():
with open(document_path, 'r') as src:
logging_name = "paperless.parsing.tika"
- def get_thumbnail(self, document_path, mime_type):
+ def get_thumbnail(self, document_path, mime_type, file_name=None):
if not self.archive_path:
- self.archive_path = self.convert_to_pdf(document_path)
+ self.archive_path = self.convert_to_pdf(document_path, file_name)
return make_thumbnail_from_pdf(
self.archive_path, self.tempdir, self.logging_group)