2378 Commits

Author SHA1 Message Date
Wolf-Bastian Poettner
d2cc936392 Ensure filling in "none" when a tag has not been found 2020-02-17 21:05:34 +00:00
Wolf-Bastian Poettner
7200f3c0c5 Prevent index out of bounds for tag lists 2020-02-17 21:05:31 +00:00
Wolf-Bastian Poettner
354c833108 Ensure documents directory still exists after nested deletion 2020-02-17 19:49:47 +00:00
Wolf-Bastian Pöttner
bbcfba2405 Update src/documents/models.py
Co-Authored-By: Pit <pitkley@googlemail.com>
2020-02-17 20:45:43 +01:00
Wolf-Bastian Poettner
7391f5c1a2 Tags in filenames can now either be found by key (in case - or _ are
used as delimeter) or by index. Added some more tests.
2020-02-01 20:58:44 +00:00
Wolf-Bastian Poettner
86de7847cf Avoid TOCTOU error by rather catching an exception than checking
beforehand
2020-02-01 20:13:05 +00:00
Wolf-Bastian Poettner
a5518a307c Unified PAPERLESS_DIRECTORY_FORMAT and PAPERLESS_FILENAME_FORMAT into
one configuration setting
2020-02-01 20:09:36 +00:00
Wolf-Bastian Poettner
64c1a74821 Refactored delete_empty_directory into try_delete_empty_directories and
implemented feature to ensure, that all created and now empty
directories are really deleted
2020-02-01 20:03:20 +00:00
Wolf-Bastian Poettner
ac10f81696 Made filename_to_path a static method 2020-02-01 14:18:33 +00:00
Wolf-Bastian Poettner
f1a62a4b28 Removed unnecessary check 2020-02-01 14:14:13 +00:00
Wolf-Bastian Poettner
94e1ebc407 Added comment to update_document 2020-02-01 14:12:58 +00:00
Wolf-Bastian Poettner
597057c3cf Removed duplicate check if instance.filename 2020-02-01 13:54:15 +00:00
Wolf-Bastian Poettner
985350d715 Refactored source_filename_new into generate_source_filename and
create_source_directory
2020-02-01 13:52:27 +00:00
Wolf-Bastian Poettner
8ab4ac1b98 Removed try-catch around os.makedirs and used exist_ok=True instead 2020-02-01 13:26:49 +00:00
Wolf-Bastian Poettner
c0f1250608 Removed unused function many_to_list 2020-02-01 13:25:23 +00:00
Johann Bauer
cea6dcce23 Warn if consume directory contains subdirectories
.
2020-01-04 01:09:54 +01:00
Wolf-Bastian Poettner
94feaef5c4 Check if document file exist before deletion 2019-12-27 14:25:38 +00:00
Wolf-Bastian Poettner
6d93889801 Add unit tests for filename feature 2019-12-27 14:25:38 +00:00
Wolf-Bastian Poettner
f65b90122e Added tool to rename all documents according to the lastest filename
format
2019-12-27 14:25:38 +00:00
Wolf-Bastian Poettner
d1a54d6576 Allows to configure directory and filename formats for documents stored in paperless
Default configuration is as before (incrementing numbers), but additional fields can be added at will
2019-12-27 14:25:38 +00:00
Daniel Quinn
882c3b7083 Merge pull request #542 from grembo/master
Allow configuring transformations to be applied to the filename before
2019-09-09 20:53:45 +01:00
Michael Gmelin
658e73d79a Add unit test for PAPERLESS_FILENAME_PARSE_TRANSFORMS feature. 2019-09-08 20:58:13 +02:00
Michael Gmelin
9ff467eb9b Address review comments by @danielquinn 2019-09-08 17:00:02 +02:00
Michael Gmelin
14b81c613c Allow configuring transformations to be applied to the filename before
parsing. The motivation was that files produced by a Brother scanner
wouldn't match paperless' expectations. At most one transformation
is applied (first matching). It won't affect the filename on disk.

This is generic enough so that it is useful for various purposes.
In my case it allows me to use the different hardware buttons on
the scanner to use different profiles, feeding one instance of
paperless with documents of multiple entities and tagging them
accordingly.

Example:

PAPERLESS_FILENAME_PARSE_TRANSFORMS=[{"pattern":"^([a-z]+)_(\\d{8})_(\\d{6})_([0-9]+)\\.", "repl":"\\2\\3Z - \\4 - \\1."},{"pattern":"^([a-z]+)_([0-9]+)\\.", "repl":" - \\2 - \\1."}]
2019-08-31 15:01:25 +02:00
Florian Gabsteiger
dac1e9533a Adjust requirements 2019-08-07 21:38:54 +02:00
Florian Gabsteiger
5d9c3ed520 Add http to cors origin whitelist as this is required with new version 2019-08-06 12:26:14 -09:00
Florian Gabsteiger
59e556a830 Activate whitenoise and static file compression and caching 2019-07-24 13:26:28 -09:00
Jonas Winkler
8cb25069d7 layout changes, removed irrelevant test cases 2019-05-23 18:25:23 +02:00
Jonas Winkler
5dda05d712 Merge branch 'master' into dev 2019-05-21 13:06:16 +02:00
Dominik von Allmen
308d75f34d Update change_storage_type.py 2019-04-02 14:12:00 +02:00
domphonallmen
156282915e avoid error when decrypting files with non-ascii character 2019-04-02 11:38:00 +02:00
Stéphane Brunner
3fab354a6e Strip the thumbnails 2019-03-17 16:37:47 +01:00
jenspfeifle
5c40da1a48 make pycodestyle happy 2019-03-03 20:41:17 +01:00
JensPfeifle
078d66b077 try to run convert, but fall back on gs if needed 2019-03-03 20:31:52 +01:00
JensPfeifle
4c64ea0404 Add GS_BINARY to settings to avoid harcoded call of "gs" 2019-03-03 20:31:52 +01:00
Pit
99718bcf17 Fix quoting in call to run_convert
Co-Authored-By: JensPfeifle <jens@pfeifle.tech>
2019-03-03 20:31:52 +01:00
JensPfeifle
3dfd0253ed remove unnecessary env arg in Popen 2019-03-03 20:31:52 +01:00
Jens Pfeifle
6ab21afeb6 fix parse error of some documents by using gs 2019-03-03 20:31:52 +01:00
Daniel Quinn
4a5b0b6454 Update dependencies & add djangoql 2019-01-27 13:39:56 +00:00
Daniel Quinn
5ecdb37f56 pep8 2019-01-27 12:52:15 +00:00
Daniel Quinn
e286ef1b95 Merge pull request #483 from tsia/patch-1
added fields to the correspondent and tag REST API
2019-01-27 12:50:42 +00:00
Daniel Quinn
8fce947283 Merge pull request #481 from CkuT/cache-control
Add Cache-Control header for thumbnails
2019-01-27 12:46:32 +00:00
Stéphane Brunner
711c0925e1 Add and configure DjangoQL 2019-01-26 22:15:28 +01:00
tsia
d43bd3610b added fields to the correspondent and tag REST API 2019-01-22 20:51:20 +01:00
CkuT
64d7add519 Add Cache-Control header for thumbnails
This drastically optimizes admin interface loading by telling the browser to cache thumbnails. The max-age recommendation is 1 year according to rfc2616
Closes #411
2019-01-21 20:59:40 +01:00
Jonas Winkler
acc144de62 Merge branch 'master' into dev 2019-01-21 15:07:49 +01:00
syntonym
e99bbb4e02 Catches OSError on IMAP connection error
When something goes wrong with the imaplib.IMAP4_SSL connection (like the host is
temporarely down or the DNS does not resolve) it generates an OSError which is currently
not catched and handled. Now OSErrors are translated to MailFetcherErrors which get
logged and the IMAP connection is retried in the next IMAP check.

Fixes #474
2019-01-14 19:08:59 +01:00
Daniel Quinn
a79e92299d Merge pull request #471 from khrise/added-missing-column-to-rest-api
Exposing documents' "added" timestamp via Rest API.
2019-01-04 11:36:38 +00:00
khrise
8626f46536 Exposing documents' "added" timestamp via Rest API. 2019-01-03 20:23:34 +00:00
Daniel Quinn
892134b88d Merge pull request #453 from jonaswinkler/patch-1
Update 0022_auto_20181007_1420.py
2018-12-30 18:27:27 +00:00