mirror of
https://github.com/paperless-ngx/paperless-ngx.git
synced 2025-07-28 18:24:38 -05:00
Merge remote-tracking branch 'origin/dev' into dev
This commit is contained in:
@@ -7,7 +7,7 @@ from dateutil.parser import isoparse
|
||||
from django.conf import settings
|
||||
from whoosh import highlight, classify, query
|
||||
from whoosh.fields import Schema, TEXT, NUMERIC, KEYWORD, DATETIME, BOOLEAN
|
||||
from whoosh.highlight import Formatter, get_text, HtmlFormatter
|
||||
from whoosh.highlight import HtmlFormatter
|
||||
from whoosh.index import create_in, exists_in, open_dir
|
||||
from whoosh.qparser import MultifieldParser
|
||||
from whoosh.qparser.dateparse import DateParserPlugin
|
||||
@@ -147,12 +147,10 @@ def remove_document_from_index(document):
|
||||
|
||||
class DelayedQuery:
|
||||
|
||||
@property
|
||||
def _query(self):
|
||||
def _get_query(self):
|
||||
raise NotImplementedError()
|
||||
|
||||
@property
|
||||
def _query_filter(self):
|
||||
def _get_query_filter(self):
|
||||
criterias = []
|
||||
for k, v in self.query_params.items():
|
||||
if k == 'correspondent__id':
|
||||
@@ -185,16 +183,32 @@ class DelayedQuery:
|
||||
else:
|
||||
return None
|
||||
|
||||
@property
|
||||
def _query_sortedby(self):
|
||||
# if not 'ordering' in self.query_params:
|
||||
return None, False
|
||||
def _get_query_sortedby(self):
|
||||
if 'ordering' not in self.query_params:
|
||||
return None, False
|
||||
|
||||
# o: str = self.query_params['ordering']
|
||||
# if o.startswith('-'):
|
||||
# return o[1:], True
|
||||
# else:
|
||||
# return o, False
|
||||
field: str = self.query_params['ordering']
|
||||
|
||||
sort_fields_map = {
|
||||
"created": "created",
|
||||
"modified": "modified",
|
||||
"added": "added",
|
||||
"title": "title",
|
||||
"correspondent__name": "correspondent",
|
||||
"document_type__name": "type",
|
||||
"archive_serial_number": "asn"
|
||||
}
|
||||
|
||||
if field.startswith('-'):
|
||||
field = field[1:]
|
||||
reverse = True
|
||||
else:
|
||||
reverse = False
|
||||
|
||||
if field not in sort_fields_map:
|
||||
return None, False
|
||||
else:
|
||||
return sort_fields_map[field], reverse
|
||||
|
||||
def __init__(self, searcher: Searcher, query_params, page_size):
|
||||
self.searcher = searcher
|
||||
@@ -211,13 +225,13 @@ class DelayedQuery:
|
||||
if item.start in self.saved_results:
|
||||
return self.saved_results[item.start]
|
||||
|
||||
q, mask = self._query
|
||||
sortedby, reverse = self._query_sortedby
|
||||
q, mask = self._get_query()
|
||||
sortedby, reverse = self._get_query_sortedby()
|
||||
|
||||
page: ResultsPage = self.searcher.search_page(
|
||||
q,
|
||||
mask=mask,
|
||||
filter=self._query_filter,
|
||||
filter=self._get_query_filter(),
|
||||
pagenum=math.floor(item.start / self.page_size) + 1,
|
||||
pagelen=self.page_size,
|
||||
sortedby=sortedby,
|
||||
@@ -227,14 +241,18 @@ class DelayedQuery:
|
||||
surround=50)
|
||||
page.results.formatter = HtmlFormatter(tagname="span", between=" ... ")
|
||||
|
||||
if not self.first_score and len(page.results) > 0:
|
||||
if (not self.first_score and
|
||||
len(page.results) > 0 and
|
||||
sortedby is None):
|
||||
self.first_score = page.results[0].score
|
||||
|
||||
if self.first_score:
|
||||
page.results.top_n = list(map(
|
||||
lambda hit: (hit[0] / self.first_score, hit[1]),
|
||||
page.results.top_n
|
||||
))
|
||||
page.results.top_n = list(map(
|
||||
lambda hit: (
|
||||
(hit[0] / self.first_score) if self.first_score else None,
|
||||
hit[1]
|
||||
),
|
||||
page.results.top_n
|
||||
))
|
||||
|
||||
self.saved_results[item.start] = page
|
||||
|
||||
@@ -243,8 +261,7 @@ class DelayedQuery:
|
||||
|
||||
class DelayedFullTextQuery(DelayedQuery):
|
||||
|
||||
@property
|
||||
def _query(self):
|
||||
def _get_query(self):
|
||||
q_str = self.query_params['query']
|
||||
qp = MultifieldParser(
|
||||
["content", "title", "correspondent", "tag", "type"],
|
||||
@@ -261,8 +278,7 @@ class DelayedFullTextQuery(DelayedQuery):
|
||||
|
||||
class DelayedMoreLikeThisQuery(DelayedQuery):
|
||||
|
||||
@property
|
||||
def _query(self):
|
||||
def _get_query(self):
|
||||
more_like_doc_id = int(self.query_params['more_like_id'])
|
||||
content = Document.objects.get(id=more_like_doc_id).content
|
||||
|
||||
|
@@ -106,6 +106,12 @@ class Command(BaseCommand):
|
||||
help="Specify the ID of a document, and this command will only "
|
||||
"run on this specific document."
|
||||
)
|
||||
parser.add_argument(
|
||||
"--no-progress-bar",
|
||||
default=False,
|
||||
action="store_true",
|
||||
help="If set, the progress bar will not be shown"
|
||||
)
|
||||
|
||||
def handle(self, *args, **options):
|
||||
|
||||
@@ -140,7 +146,8 @@ class Command(BaseCommand):
|
||||
handle_document,
|
||||
document_ids
|
||||
),
|
||||
total=len(document_ids)
|
||||
total=len(document_ids),
|
||||
disable=options['no_progress_bar']
|
||||
))
|
||||
except KeyboardInterrupt:
|
||||
print("Aborting...")
|
||||
|
@@ -57,6 +57,12 @@ class Command(BaseCommand):
|
||||
"do not belong to the current export, such as files from "
|
||||
"deleted documents."
|
||||
)
|
||||
parser.add_argument(
|
||||
"--no-progress-bar",
|
||||
default=False,
|
||||
action="store_true",
|
||||
help="If set, the progress bar will not be shown"
|
||||
)
|
||||
|
||||
def __init__(self, *args, **kwargs):
|
||||
BaseCommand.__init__(self, *args, **kwargs)
|
||||
@@ -81,9 +87,9 @@ class Command(BaseCommand):
|
||||
raise CommandError("That path doesn't appear to be writable")
|
||||
|
||||
with FileLock(settings.MEDIA_LOCK):
|
||||
self.dump()
|
||||
self.dump(options['no_progress_bar'])
|
||||
|
||||
def dump(self):
|
||||
def dump(self, progress_bar_disable=False):
|
||||
# 1. Take a snapshot of what files exist in the current export folder
|
||||
for root, dirs, files in os.walk(self.target):
|
||||
self.files_in_export_dir.extend(
|
||||
@@ -124,8 +130,11 @@ class Command(BaseCommand):
|
||||
"json", User.objects.all()))
|
||||
|
||||
# 3. Export files from each document
|
||||
for index, document_dict in tqdm.tqdm(enumerate(document_manifest),
|
||||
total=len(document_manifest)):
|
||||
for index, document_dict in tqdm.tqdm(
|
||||
enumerate(document_manifest),
|
||||
total=len(document_manifest),
|
||||
disable=progress_bar_disable
|
||||
):
|
||||
# 3.1. store files unencrypted
|
||||
document_dict["fields"]["storage_type"] = Document.STORAGE_TYPE_UNENCRYPTED # NOQA: E501
|
||||
|
||||
|
@@ -36,6 +36,12 @@ class Command(BaseCommand):
|
||||
|
||||
def add_arguments(self, parser):
|
||||
parser.add_argument("source")
|
||||
parser.add_argument(
|
||||
"--no-progress-bar",
|
||||
default=False,
|
||||
action="store_true",
|
||||
help="If set, the progress bar will not be shown"
|
||||
)
|
||||
|
||||
def __init__(self, *args, **kwargs):
|
||||
BaseCommand.__init__(self, *args, **kwargs)
|
||||
@@ -70,7 +76,7 @@ class Command(BaseCommand):
|
||||
# Fill up the database with whatever is in the manifest
|
||||
call_command("loaddata", manifest_path)
|
||||
|
||||
self._import_files_from_manifest()
|
||||
self._import_files_from_manifest(options['no_progress_bar'])
|
||||
|
||||
print("Updating search index...")
|
||||
call_command('document_index', 'reindex')
|
||||
@@ -111,7 +117,7 @@ class Command(BaseCommand):
|
||||
f"does not appear to be in the source directory."
|
||||
)
|
||||
|
||||
def _import_files_from_manifest(self):
|
||||
def _import_files_from_manifest(self, progress_bar_disable):
|
||||
|
||||
os.makedirs(settings.ORIGINALS_DIR, exist_ok=True)
|
||||
os.makedirs(settings.THUMBNAIL_DIR, exist_ok=True)
|
||||
@@ -123,7 +129,10 @@ class Command(BaseCommand):
|
||||
lambda r: r["model"] == "documents.document",
|
||||
self.manifest))
|
||||
|
||||
for record in tqdm.tqdm(manifest_documents):
|
||||
for record in tqdm.tqdm(
|
||||
manifest_documents,
|
||||
disable=progress_bar_disable
|
||||
):
|
||||
|
||||
document = Document.objects.get(pk=record["pk"])
|
||||
|
||||
|
@@ -10,10 +10,16 @@ class Command(BaseCommand):
|
||||
|
||||
def add_arguments(self, parser):
|
||||
parser.add_argument("command", choices=['reindex', 'optimize'])
|
||||
parser.add_argument(
|
||||
"--no-progress-bar",
|
||||
default=False,
|
||||
action="store_true",
|
||||
help="If set, the progress bar will not be shown"
|
||||
)
|
||||
|
||||
def handle(self, *args, **options):
|
||||
with transaction.atomic():
|
||||
if options['command'] == 'reindex':
|
||||
index_reindex()
|
||||
index_reindex(progress_bar_disable=options['no_progress_bar'])
|
||||
elif options['command'] == 'optimize':
|
||||
index_optimize()
|
||||
|
@@ -13,9 +13,20 @@ class Command(BaseCommand):
|
||||
This will rename all documents to match the latest filename format.
|
||||
""".replace(" ", "")
|
||||
|
||||
def add_arguments(self, parser):
|
||||
parser.add_argument(
|
||||
"--no-progress-bar",
|
||||
default=False,
|
||||
action="store_true",
|
||||
help="If set, the progress bar will not be shown"
|
||||
)
|
||||
|
||||
def handle(self, *args, **options):
|
||||
|
||||
logging.getLogger().handlers[0].level = logging.ERROR
|
||||
|
||||
for document in tqdm.tqdm(Document.objects.all()):
|
||||
for document in tqdm.tqdm(
|
||||
Document.objects.all(),
|
||||
disable=options['no_progress_bar']
|
||||
):
|
||||
post_save.send(Document, instance=document)
|
||||
|
@@ -57,6 +57,12 @@ class Command(BaseCommand):
|
||||
"set correspondent, document and remove correspondents, types"
|
||||
"and tags that do not match anymore due to changed rules."
|
||||
)
|
||||
parser.add_argument(
|
||||
"--no-progress-bar",
|
||||
default=False,
|
||||
action="store_true",
|
||||
help="If set, the progress bar will not be shown"
|
||||
)
|
||||
|
||||
def handle(self, *args, **options):
|
||||
|
||||
@@ -68,7 +74,10 @@ class Command(BaseCommand):
|
||||
|
||||
classifier = load_classifier()
|
||||
|
||||
for document in tqdm.tqdm(documents):
|
||||
for document in tqdm.tqdm(
|
||||
documents,
|
||||
disable=options['no_progress_bar']
|
||||
):
|
||||
|
||||
if options['correspondent']:
|
||||
set_correspondent(
|
||||
|
@@ -8,8 +8,16 @@ class Command(BaseCommand):
|
||||
This command checks your document archive for issues.
|
||||
""".replace(" ", "")
|
||||
|
||||
def add_arguments(self, parser):
|
||||
parser.add_argument(
|
||||
"--no-progress-bar",
|
||||
default=False,
|
||||
action="store_true",
|
||||
help="If set, the progress bar will not be shown"
|
||||
)
|
||||
|
||||
def handle(self, *args, **options):
|
||||
|
||||
messages = check_sanity(progress=True)
|
||||
messages = check_sanity(progress=not options['no_progress_bar'])
|
||||
|
||||
messages.log_messages()
|
||||
|
@@ -47,6 +47,12 @@ class Command(BaseCommand):
|
||||
help="Specify the ID of a document, and this command will only "
|
||||
"run on this specific document."
|
||||
)
|
||||
parser.add_argument(
|
||||
"--no-progress-bar",
|
||||
default=False,
|
||||
action="store_true",
|
||||
help="If set, the progress bar will not be shown"
|
||||
)
|
||||
|
||||
def handle(self, *args, **options):
|
||||
logging.getLogger().handlers[0].level = logging.ERROR
|
||||
@@ -65,5 +71,7 @@ class Command(BaseCommand):
|
||||
|
||||
with multiprocessing.Pool() as pool:
|
||||
list(tqdm.tqdm(
|
||||
pool.imap_unordered(_process_document, ids), total=len(ids)
|
||||
pool.imap_unordered(_process_document, ids),
|
||||
total=len(ids),
|
||||
disable=options['no_progress_bar']
|
||||
))
|
||||
|
@@ -60,12 +60,7 @@ def check_sanity(progress=False):
|
||||
if lockfile in present_files:
|
||||
present_files.remove(lockfile)
|
||||
|
||||
if progress:
|
||||
docs = tqdm(Document.objects.all())
|
||||
else:
|
||||
docs = Document.objects.all()
|
||||
|
||||
for doc in docs:
|
||||
for doc in tqdm(Document.objects.all(), disable=not progress):
|
||||
# Check sanity of the thumbnail
|
||||
if not os.path.isfile(doc.thumbnail_path):
|
||||
messages.error(f"Thumbnail of document {doc.pk} does not exist.")
|
||||
|
@@ -42,3 +42,58 @@ body {
|
||||
border-top-left-radius: 0;
|
||||
border-top-right-radius: 0;
|
||||
}
|
||||
|
||||
@media (prefers-color-scheme: dark) {
|
||||
/*
|
||||
From theme_dark.scss
|
||||
$primary-dark-mode: #45973a;
|
||||
$danger-dark-mode: #b71631;
|
||||
$bg-dark-mode: #161618;
|
||||
$bg-dark-mode-accent: #21262d;
|
||||
$bg-light-dark-mode: #1c1c1f;
|
||||
$text-color-dark-mode: #abb2bf;
|
||||
$border-color-dark-mode: #47494f;
|
||||
*/
|
||||
body {
|
||||
background-color: #161618 !important;
|
||||
color: #abb2bf;
|
||||
}
|
||||
|
||||
svg.logo .text {
|
||||
fill: #abb2bf!important;
|
||||
}
|
||||
|
||||
.form-control:not(.is-invalid):not(.btn) {
|
||||
border-color: #47494f;
|
||||
}
|
||||
|
||||
.form-control:not(.btn) {
|
||||
background-color: #161618;
|
||||
color: #abb2bf;
|
||||
}
|
||||
|
||||
.form-control:not(.btn)::placeholder {
|
||||
color: #abb2bf;
|
||||
}
|
||||
|
||||
.form-control:not(.btn):focus {
|
||||
background-color: #1c1c1f !important;
|
||||
color: #8e97a9 !important;
|
||||
}
|
||||
|
||||
.btn-primary {
|
||||
color: #fff;
|
||||
background-color: #17541f;
|
||||
border-color: #17541f;
|
||||
}
|
||||
|
||||
.btn-primary:hover, .btn-primary:focus {
|
||||
background-color: #0f3614;
|
||||
border-color: #0c2c10;
|
||||
}
|
||||
|
||||
.btn-primary:not(:disabled):not(.disabled):active {
|
||||
background-color: #0c2c10;
|
||||
border-color: #09220d;
|
||||
}
|
||||
}
|
||||
|
@@ -20,13 +20,13 @@ def index_optimize():
|
||||
writer.commit(optimize=True)
|
||||
|
||||
|
||||
def index_reindex():
|
||||
def index_reindex(progress_bar_disable=False):
|
||||
documents = Document.objects.all()
|
||||
|
||||
ix = index.open_index(recreate=True)
|
||||
|
||||
with AsyncWriter(ix) as writer:
|
||||
for document in tqdm.tqdm(documents):
|
||||
for document in tqdm.tqdm(documents, disable=progress_bar_disable):
|
||||
index.update_document(writer, document)
|
||||
|
||||
|
||||
|
@@ -7,11 +7,12 @@
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<title>Paperless-ng</title>
|
||||
<base href="/">
|
||||
<base href="{% url 'base' %}">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||
<meta name="username" content="{{username}}">
|
||||
<meta name="full_name" content="{{full_name}}">
|
||||
<meta name="cookie_prefix" content="{{cookie_prefix}}">
|
||||
<meta name="robots" content="noindex,nofollow">
|
||||
<link rel="icon" type="image/x-icon" href="favicon.ico">
|
||||
<link rel="manifest" href="{% static webmanifest %}">
|
||||
<link rel="stylesheet" href="{% static styles_css %}">
|
||||
|
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@@ -471,6 +471,31 @@ class TestDocumentApi(DirectoriesMixin, APITestCase):
|
||||
self.assertNotIn(d5.id, search_query("&added__date__lt=" + datetime.datetime(2020, 1, 2).strftime("%Y-%m-%d")))
|
||||
self.assertIn(d5.id, search_query("&added__date__gt=" + datetime.datetime(2020, 1, 2).strftime("%Y-%m-%d")))
|
||||
|
||||
def test_search_sorting(self):
|
||||
c1 = Correspondent.objects.create(name="corres Ax")
|
||||
c2 = Correspondent.objects.create(name="corres Cx")
|
||||
c3 = Correspondent.objects.create(name="corres Bx")
|
||||
d1 = Document.objects.create(checksum="1", correspondent=c1, content="test", archive_serial_number=2, title="3")
|
||||
d2 = Document.objects.create(checksum="2", correspondent=c2, content="test", archive_serial_number=3, title="2")
|
||||
d3 = Document.objects.create(checksum="3", correspondent=c3, content="test", archive_serial_number=1, title="1")
|
||||
|
||||
with AsyncWriter(index.open_index()) as writer:
|
||||
for doc in Document.objects.all():
|
||||
index.update_document(writer, doc)
|
||||
|
||||
def search_query(q):
|
||||
r = self.client.get("/api/documents/?query=test" + q)
|
||||
self.assertEqual(r.status_code, 200)
|
||||
return [hit['id'] for hit in r.data['results']]
|
||||
|
||||
self.assertListEqual(search_query("&ordering=archive_serial_number"), [d3.id, d1.id, d2.id])
|
||||
self.assertListEqual(search_query("&ordering=-archive_serial_number"), [d2.id, d1.id, d3.id])
|
||||
self.assertListEqual(search_query("&ordering=title"), [d3.id, d2.id, d1.id])
|
||||
self.assertListEqual(search_query("&ordering=-title"), [d1.id, d2.id, d3.id])
|
||||
self.assertListEqual(search_query("&ordering=correspondent__name"), [d1.id, d3.id, d2.id])
|
||||
self.assertListEqual(search_query("&ordering=-correspondent__name"), [d2.id, d3.id, d1.id])
|
||||
|
||||
|
||||
def test_statistics(self):
|
||||
|
||||
doc1 = Document.objects.create(title="none1", checksum="A")
|
||||
|
@@ -2,8 +2,8 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: paperless-ng\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2021-04-17 13:41+0200\n"
|
||||
"PO-Revision-Date: 2021-04-17 11:47\n"
|
||||
"POT-Creation-Date: 2021-05-04 15:00+0000\n"
|
||||
"PO-Revision-Date: 2021-05-04 21:52\n"
|
||||
"Last-Translator: \n"
|
||||
"Language-Team: Czech\n"
|
||||
"Language: cs_CZ\n"
|
||||
@@ -412,54 +412,58 @@ msgstr "Heslo"
|
||||
msgid "Sign in"
|
||||
msgstr "Přihlásit se"
|
||||
|
||||
#: paperless/settings.py:298
|
||||
#: paperless/settings.py:300
|
||||
msgid "English (US)"
|
||||
msgstr ""
|
||||
|
||||
#: paperless/settings.py:299
|
||||
#: paperless/settings.py:301
|
||||
msgid "English (GB)"
|
||||
msgstr ""
|
||||
|
||||
#: paperless/settings.py:300
|
||||
#: paperless/settings.py:302
|
||||
msgid "German"
|
||||
msgstr "Němčina"
|
||||
|
||||
#: paperless/settings.py:301
|
||||
#: paperless/settings.py:303
|
||||
msgid "Dutch"
|
||||
msgstr "Holandština"
|
||||
|
||||
#: paperless/settings.py:302
|
||||
#: paperless/settings.py:304
|
||||
msgid "French"
|
||||
msgstr "Francouzština"
|
||||
|
||||
#: paperless/settings.py:303
|
||||
#: paperless/settings.py:305
|
||||
msgid "Portuguese (Brazil)"
|
||||
msgstr ""
|
||||
|
||||
#: paperless/settings.py:304
|
||||
#: paperless/settings.py:306
|
||||
msgid "Portuguese"
|
||||
msgstr ""
|
||||
|
||||
#: paperless/settings.py:305
|
||||
#: paperless/settings.py:307
|
||||
msgid "Italian"
|
||||
msgstr ""
|
||||
|
||||
#: paperless/settings.py:306
|
||||
#: paperless/settings.py:308
|
||||
msgid "Romanian"
|
||||
msgstr ""
|
||||
|
||||
#: paperless/settings.py:307
|
||||
#: paperless/settings.py:309
|
||||
msgid "Russian"
|
||||
msgstr ""
|
||||
|
||||
#: paperless/settings.py:308
|
||||
#: paperless/settings.py:310
|
||||
msgid "Spanish"
|
||||
msgstr ""
|
||||
|
||||
#: paperless/settings.py:309
|
||||
#: paperless/settings.py:311
|
||||
msgid "Polish"
|
||||
msgstr ""
|
||||
|
||||
#: paperless/settings.py:312
|
||||
msgid "Swedish"
|
||||
msgstr ""
|
||||
|
||||
#: paperless/urls.py:113
|
||||
msgid "Paperless-ng administration"
|
||||
msgstr "Správa Paperless-ng"
|
||||
|
@@ -2,8 +2,8 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: paperless-ng\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2021-04-17 13:41+0200\n"
|
||||
"PO-Revision-Date: 2021-04-17 19:51\n"
|
||||
"POT-Creation-Date: 2021-05-04 15:00+0000\n"
|
||||
"PO-Revision-Date: 2021-05-04 23:04\n"
|
||||
"Last-Translator: \n"
|
||||
"Language-Team: German\n"
|
||||
"Language: de_DE\n"
|
||||
@@ -412,54 +412,58 @@ msgstr "Kennwort"
|
||||
msgid "Sign in"
|
||||
msgstr "Anmelden"
|
||||
|
||||
#: paperless/settings.py:298
|
||||
#: paperless/settings.py:300
|
||||
msgid "English (US)"
|
||||
msgstr "Englisch (US)"
|
||||
|
||||
#: paperless/settings.py:299
|
||||
#: paperless/settings.py:301
|
||||
msgid "English (GB)"
|
||||
msgstr "Englisch (UK)"
|
||||
|
||||
#: paperless/settings.py:300
|
||||
#: paperless/settings.py:302
|
||||
msgid "German"
|
||||
msgstr "Deutsch"
|
||||
|
||||
#: paperless/settings.py:301
|
||||
#: paperless/settings.py:303
|
||||
msgid "Dutch"
|
||||
msgstr "Niederländisch"
|
||||
|
||||
#: paperless/settings.py:302
|
||||
#: paperless/settings.py:304
|
||||
msgid "French"
|
||||
msgstr "Französisch"
|
||||
|
||||
#: paperless/settings.py:303
|
||||
#: paperless/settings.py:305
|
||||
msgid "Portuguese (Brazil)"
|
||||
msgstr "Portugiesisch (Brasilien)"
|
||||
|
||||
#: paperless/settings.py:304
|
||||
#: paperless/settings.py:306
|
||||
msgid "Portuguese"
|
||||
msgstr "Portugiesisch"
|
||||
|
||||
#: paperless/settings.py:305
|
||||
#: paperless/settings.py:307
|
||||
msgid "Italian"
|
||||
msgstr "Italienisch"
|
||||
|
||||
#: paperless/settings.py:306
|
||||
#: paperless/settings.py:308
|
||||
msgid "Romanian"
|
||||
msgstr "Rumänisch"
|
||||
|
||||
#: paperless/settings.py:307
|
||||
#: paperless/settings.py:309
|
||||
msgid "Russian"
|
||||
msgstr "Russisch"
|
||||
|
||||
#: paperless/settings.py:308
|
||||
#: paperless/settings.py:310
|
||||
msgid "Spanish"
|
||||
msgstr "Spanisch"
|
||||
|
||||
#: paperless/settings.py:309
|
||||
#: paperless/settings.py:311
|
||||
msgid "Polish"
|
||||
msgstr "Polnisch"
|
||||
|
||||
#: paperless/settings.py:312
|
||||
msgid "Swedish"
|
||||
msgstr "Schwedisch"
|
||||
|
||||
#: paperless/urls.py:113
|
||||
msgid "Paperless-ng administration"
|
||||
msgstr "Paperless-ng Administration"
|
||||
|
@@ -2,8 +2,8 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: paperless-ng\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2021-04-17 13:41+0200\n"
|
||||
"PO-Revision-Date: 2021-05-02 17:00\n"
|
||||
"POT-Creation-Date: 2021-05-04 15:00+0000\n"
|
||||
"PO-Revision-Date: 2021-05-05 21:40\n"
|
||||
"Last-Translator: \n"
|
||||
"Language-Team: English, United Kingdom\n"
|
||||
"Language: en_GB\n"
|
||||
@@ -412,54 +412,58 @@ msgstr "Password"
|
||||
msgid "Sign in"
|
||||
msgstr "Sign in"
|
||||
|
||||
#: paperless/settings.py:298
|
||||
#: paperless/settings.py:300
|
||||
msgid "English (US)"
|
||||
msgstr "English (US)"
|
||||
|
||||
#: paperless/settings.py:299
|
||||
#: paperless/settings.py:301
|
||||
msgid "English (GB)"
|
||||
msgstr "English (GB)"
|
||||
|
||||
#: paperless/settings.py:300
|
||||
#: paperless/settings.py:302
|
||||
msgid "German"
|
||||
msgstr "German"
|
||||
|
||||
#: paperless/settings.py:301
|
||||
#: paperless/settings.py:303
|
||||
msgid "Dutch"
|
||||
msgstr "Dutch"
|
||||
|
||||
#: paperless/settings.py:302
|
||||
#: paperless/settings.py:304
|
||||
msgid "French"
|
||||
msgstr "French"
|
||||
|
||||
#: paperless/settings.py:303
|
||||
#: paperless/settings.py:305
|
||||
msgid "Portuguese (Brazil)"
|
||||
msgstr "Portuguese (Brazil)"
|
||||
|
||||
#: paperless/settings.py:304
|
||||
#: paperless/settings.py:306
|
||||
msgid "Portuguese"
|
||||
msgstr "Portuguese"
|
||||
|
||||
#: paperless/settings.py:305
|
||||
#: paperless/settings.py:307
|
||||
msgid "Italian"
|
||||
msgstr "Italian"
|
||||
|
||||
#: paperless/settings.py:306
|
||||
#: paperless/settings.py:308
|
||||
msgid "Romanian"
|
||||
msgstr "Romanian"
|
||||
|
||||
#: paperless/settings.py:307
|
||||
#: paperless/settings.py:309
|
||||
msgid "Russian"
|
||||
msgstr "Russian"
|
||||
|
||||
#: paperless/settings.py:308
|
||||
#: paperless/settings.py:310
|
||||
msgid "Spanish"
|
||||
msgstr "Spanish"
|
||||
|
||||
#: paperless/settings.py:309
|
||||
#: paperless/settings.py:311
|
||||
msgid "Polish"
|
||||
msgstr "Polish"
|
||||
|
||||
#: paperless/settings.py:312
|
||||
msgid "Swedish"
|
||||
msgstr "Swedish"
|
||||
|
||||
#: paperless/urls.py:113
|
||||
msgid "Paperless-ng administration"
|
||||
msgstr "Paperless-ng administration"
|
||||
|
@@ -2,8 +2,8 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: paperless-ng\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2021-04-17 13:41+0200\n"
|
||||
"PO-Revision-Date: 2021-04-17 11:47\n"
|
||||
"POT-Creation-Date: 2021-05-04 15:00+0000\n"
|
||||
"PO-Revision-Date: 2021-05-04 21:52\n"
|
||||
"Last-Translator: \n"
|
||||
"Language-Team: Spanish\n"
|
||||
"Language: es_ES\n"
|
||||
@@ -412,54 +412,58 @@ msgstr "Contraseña"
|
||||
msgid "Sign in"
|
||||
msgstr "Iniciar sesión"
|
||||
|
||||
#: paperless/settings.py:298
|
||||
#: paperless/settings.py:300
|
||||
msgid "English (US)"
|
||||
msgstr "Inglés (US)"
|
||||
|
||||
#: paperless/settings.py:299
|
||||
#: paperless/settings.py:301
|
||||
msgid "English (GB)"
|
||||
msgstr "Inglés (Gran Bretaña)"
|
||||
|
||||
#: paperless/settings.py:300
|
||||
#: paperless/settings.py:302
|
||||
msgid "German"
|
||||
msgstr "Alemán"
|
||||
|
||||
#: paperless/settings.py:301
|
||||
#: paperless/settings.py:303
|
||||
msgid "Dutch"
|
||||
msgstr "Alemán"
|
||||
|
||||
#: paperless/settings.py:302
|
||||
#: paperless/settings.py:304
|
||||
msgid "French"
|
||||
msgstr "Francés"
|
||||
|
||||
#: paperless/settings.py:303
|
||||
#: paperless/settings.py:305
|
||||
msgid "Portuguese (Brazil)"
|
||||
msgstr "Portugués (Brasil)"
|
||||
|
||||
#: paperless/settings.py:304
|
||||
#: paperless/settings.py:306
|
||||
msgid "Portuguese"
|
||||
msgstr ""
|
||||
|
||||
#: paperless/settings.py:305
|
||||
#: paperless/settings.py:307
|
||||
msgid "Italian"
|
||||
msgstr "Italiano"
|
||||
|
||||
#: paperless/settings.py:306
|
||||
#: paperless/settings.py:308
|
||||
msgid "Romanian"
|
||||
msgstr "Rumano"
|
||||
|
||||
#: paperless/settings.py:307
|
||||
#: paperless/settings.py:309
|
||||
msgid "Russian"
|
||||
msgstr "Ruso"
|
||||
|
||||
#: paperless/settings.py:308
|
||||
#: paperless/settings.py:310
|
||||
msgid "Spanish"
|
||||
msgstr "Español"
|
||||
|
||||
#: paperless/settings.py:309
|
||||
#: paperless/settings.py:311
|
||||
msgid "Polish"
|
||||
msgstr ""
|
||||
|
||||
#: paperless/settings.py:312
|
||||
msgid "Swedish"
|
||||
msgstr ""
|
||||
|
||||
#: paperless/urls.py:113
|
||||
msgid "Paperless-ng administration"
|
||||
msgstr "Paperless-ng Administración"
|
||||
|
@@ -2,8 +2,8 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: paperless-ng\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2021-04-17 13:41+0200\n"
|
||||
"PO-Revision-Date: 2021-04-17 13:47\n"
|
||||
"POT-Creation-Date: 2021-05-04 15:00+0000\n"
|
||||
"PO-Revision-Date: 2021-05-05 15:10\n"
|
||||
"Last-Translator: \n"
|
||||
"Language-Team: French\n"
|
||||
"Language: fr_FR\n"
|
||||
@@ -412,54 +412,58 @@ msgstr "Mot de passe"
|
||||
msgid "Sign in"
|
||||
msgstr "S'identifier"
|
||||
|
||||
#: paperless/settings.py:298
|
||||
#: paperless/settings.py:300
|
||||
msgid "English (US)"
|
||||
msgstr "Anglais (US)"
|
||||
|
||||
#: paperless/settings.py:299
|
||||
#: paperless/settings.py:301
|
||||
msgid "English (GB)"
|
||||
msgstr "Anglais (GB)"
|
||||
|
||||
#: paperless/settings.py:300
|
||||
#: paperless/settings.py:302
|
||||
msgid "German"
|
||||
msgstr "Allemand"
|
||||
|
||||
#: paperless/settings.py:301
|
||||
#: paperless/settings.py:303
|
||||
msgid "Dutch"
|
||||
msgstr "Néerlandais"
|
||||
|
||||
#: paperless/settings.py:302
|
||||
#: paperless/settings.py:304
|
||||
msgid "French"
|
||||
msgstr "Français"
|
||||
|
||||
#: paperless/settings.py:303
|
||||
#: paperless/settings.py:305
|
||||
msgid "Portuguese (Brazil)"
|
||||
msgstr "Portugais (Brésil)"
|
||||
|
||||
#: paperless/settings.py:304
|
||||
#: paperless/settings.py:306
|
||||
msgid "Portuguese"
|
||||
msgstr "Portugais"
|
||||
|
||||
#: paperless/settings.py:305
|
||||
#: paperless/settings.py:307
|
||||
msgid "Italian"
|
||||
msgstr "Italien"
|
||||
|
||||
#: paperless/settings.py:306
|
||||
#: paperless/settings.py:308
|
||||
msgid "Romanian"
|
||||
msgstr "Roumain"
|
||||
|
||||
#: paperless/settings.py:307
|
||||
#: paperless/settings.py:309
|
||||
msgid "Russian"
|
||||
msgstr "Russe"
|
||||
|
||||
#: paperless/settings.py:308
|
||||
#: paperless/settings.py:310
|
||||
msgid "Spanish"
|
||||
msgstr "Espagnol"
|
||||
|
||||
#: paperless/settings.py:309
|
||||
#: paperless/settings.py:311
|
||||
msgid "Polish"
|
||||
msgstr "Polonais"
|
||||
|
||||
#: paperless/settings.py:312
|
||||
msgid "Swedish"
|
||||
msgstr "Suédois"
|
||||
|
||||
#: paperless/urls.py:113
|
||||
msgid "Paperless-ng administration"
|
||||
msgstr "Administration de Paperless-ng"
|
||||
|
@@ -2,8 +2,8 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: paperless-ng\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2021-04-17 13:41+0200\n"
|
||||
"PO-Revision-Date: 2021-04-17 11:47\n"
|
||||
"POT-Creation-Date: 2021-05-04 15:00+0000\n"
|
||||
"PO-Revision-Date: 2021-05-04 21:52\n"
|
||||
"Last-Translator: \n"
|
||||
"Language-Team: Hungarian\n"
|
||||
"Language: hu_HU\n"
|
||||
@@ -412,54 +412,58 @@ msgstr ""
|
||||
msgid "Sign in"
|
||||
msgstr ""
|
||||
|
||||
#: paperless/settings.py:298
|
||||
#: paperless/settings.py:300
|
||||
msgid "English (US)"
|
||||
msgstr "Angol (US)"
|
||||
|
||||
#: paperless/settings.py:299
|
||||
#: paperless/settings.py:301
|
||||
msgid "English (GB)"
|
||||
msgstr ""
|
||||
|
||||
#: paperless/settings.py:300
|
||||
#: paperless/settings.py:302
|
||||
msgid "German"
|
||||
msgstr "Német"
|
||||
|
||||
#: paperless/settings.py:301
|
||||
#: paperless/settings.py:303
|
||||
msgid "Dutch"
|
||||
msgstr ""
|
||||
|
||||
#: paperless/settings.py:302
|
||||
#: paperless/settings.py:304
|
||||
msgid "French"
|
||||
msgstr ""
|
||||
|
||||
#: paperless/settings.py:303
|
||||
#: paperless/settings.py:305
|
||||
msgid "Portuguese (Brazil)"
|
||||
msgstr ""
|
||||
|
||||
#: paperless/settings.py:304
|
||||
#: paperless/settings.py:306
|
||||
msgid "Portuguese"
|
||||
msgstr ""
|
||||
|
||||
#: paperless/settings.py:305
|
||||
#: paperless/settings.py:307
|
||||
msgid "Italian"
|
||||
msgstr ""
|
||||
|
||||
#: paperless/settings.py:306
|
||||
#: paperless/settings.py:308
|
||||
msgid "Romanian"
|
||||
msgstr ""
|
||||
|
||||
#: paperless/settings.py:307
|
||||
#: paperless/settings.py:309
|
||||
msgid "Russian"
|
||||
msgstr ""
|
||||
|
||||
#: paperless/settings.py:308
|
||||
#: paperless/settings.py:310
|
||||
msgid "Spanish"
|
||||
msgstr ""
|
||||
|
||||
#: paperless/settings.py:309
|
||||
#: paperless/settings.py:311
|
||||
msgid "Polish"
|
||||
msgstr ""
|
||||
|
||||
#: paperless/settings.py:312
|
||||
msgid "Swedish"
|
||||
msgstr ""
|
||||
|
||||
#: paperless/urls.py:113
|
||||
msgid "Paperless-ng administration"
|
||||
msgstr ""
|
||||
|
@@ -2,8 +2,8 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: paperless-ng\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2021-04-17 13:41+0200\n"
|
||||
"PO-Revision-Date: 2021-04-17 18:50\n"
|
||||
"POT-Creation-Date: 2021-05-04 15:00+0000\n"
|
||||
"PO-Revision-Date: 2021-05-05 08:19\n"
|
||||
"Last-Translator: \n"
|
||||
"Language-Team: Italian\n"
|
||||
"Language: it_IT\n"
|
||||
@@ -412,54 +412,58 @@ msgstr "Password"
|
||||
msgid "Sign in"
|
||||
msgstr "Accedi"
|
||||
|
||||
#: paperless/settings.py:298
|
||||
#: paperless/settings.py:300
|
||||
msgid "English (US)"
|
||||
msgstr "Inglese (US)"
|
||||
|
||||
#: paperless/settings.py:299
|
||||
#: paperless/settings.py:301
|
||||
msgid "English (GB)"
|
||||
msgstr "Inglese (GB)"
|
||||
|
||||
#: paperless/settings.py:300
|
||||
#: paperless/settings.py:302
|
||||
msgid "German"
|
||||
msgstr "Tedesco"
|
||||
|
||||
#: paperless/settings.py:301
|
||||
#: paperless/settings.py:303
|
||||
msgid "Dutch"
|
||||
msgstr "Olandese"
|
||||
|
||||
#: paperless/settings.py:302
|
||||
#: paperless/settings.py:304
|
||||
msgid "French"
|
||||
msgstr "Francese"
|
||||
|
||||
#: paperless/settings.py:303
|
||||
#: paperless/settings.py:305
|
||||
msgid "Portuguese (Brazil)"
|
||||
msgstr "Portoghese (Brasile)"
|
||||
|
||||
#: paperless/settings.py:304
|
||||
#: paperless/settings.py:306
|
||||
msgid "Portuguese"
|
||||
msgstr "Portoghese"
|
||||
|
||||
#: paperless/settings.py:305
|
||||
#: paperless/settings.py:307
|
||||
msgid "Italian"
|
||||
msgstr "Italiano"
|
||||
|
||||
#: paperless/settings.py:306
|
||||
#: paperless/settings.py:308
|
||||
msgid "Romanian"
|
||||
msgstr "Rumeno"
|
||||
|
||||
#: paperless/settings.py:307
|
||||
#: paperless/settings.py:309
|
||||
msgid "Russian"
|
||||
msgstr "Russo"
|
||||
|
||||
#: paperless/settings.py:308
|
||||
#: paperless/settings.py:310
|
||||
msgid "Spanish"
|
||||
msgstr "Spagnolo"
|
||||
|
||||
#: paperless/settings.py:309
|
||||
#: paperless/settings.py:311
|
||||
msgid "Polish"
|
||||
msgstr "Polacco"
|
||||
|
||||
#: paperless/settings.py:312
|
||||
msgid "Swedish"
|
||||
msgstr "Svedese"
|
||||
|
||||
#: paperless/urls.py:113
|
||||
msgid "Paperless-ng administration"
|
||||
msgstr "Amministrazione di Paperless-ng"
|
||||
|
@@ -2,8 +2,8 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: paperless-ng\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2021-04-17 13:41+0200\n"
|
||||
"PO-Revision-Date: 2021-04-18 13:19\n"
|
||||
"POT-Creation-Date: 2021-05-04 15:00+0000\n"
|
||||
"PO-Revision-Date: 2021-05-06 00:07\n"
|
||||
"Last-Translator: \n"
|
||||
"Language-Team: Dutch\n"
|
||||
"Language: nl_NL\n"
|
||||
@@ -412,54 +412,58 @@ msgstr "Wachtwoord"
|
||||
msgid "Sign in"
|
||||
msgstr "Aanmelden"
|
||||
|
||||
#: paperless/settings.py:298
|
||||
#: paperless/settings.py:300
|
||||
msgid "English (US)"
|
||||
msgstr "Engels (US)"
|
||||
|
||||
#: paperless/settings.py:299
|
||||
#: paperless/settings.py:301
|
||||
msgid "English (GB)"
|
||||
msgstr "Engels (Brits)"
|
||||
|
||||
#: paperless/settings.py:300
|
||||
#: paperless/settings.py:302
|
||||
msgid "German"
|
||||
msgstr "Duits"
|
||||
|
||||
#: paperless/settings.py:301
|
||||
#: paperless/settings.py:303
|
||||
msgid "Dutch"
|
||||
msgstr "Nederlands"
|
||||
|
||||
#: paperless/settings.py:302
|
||||
#: paperless/settings.py:304
|
||||
msgid "French"
|
||||
msgstr "Frans"
|
||||
|
||||
#: paperless/settings.py:303
|
||||
#: paperless/settings.py:305
|
||||
msgid "Portuguese (Brazil)"
|
||||
msgstr "Portugees (Brazilië)"
|
||||
|
||||
#: paperless/settings.py:304
|
||||
#: paperless/settings.py:306
|
||||
msgid "Portuguese"
|
||||
msgstr "Portugees"
|
||||
|
||||
#: paperless/settings.py:305
|
||||
#: paperless/settings.py:307
|
||||
msgid "Italian"
|
||||
msgstr "Italiaans"
|
||||
|
||||
#: paperless/settings.py:306
|
||||
#: paperless/settings.py:308
|
||||
msgid "Romanian"
|
||||
msgstr "Roemeens"
|
||||
|
||||
#: paperless/settings.py:307
|
||||
#: paperless/settings.py:309
|
||||
msgid "Russian"
|
||||
msgstr "Russisch"
|
||||
|
||||
#: paperless/settings.py:308
|
||||
#: paperless/settings.py:310
|
||||
msgid "Spanish"
|
||||
msgstr "Spaans"
|
||||
|
||||
#: paperless/settings.py:309
|
||||
#: paperless/settings.py:311
|
||||
msgid "Polish"
|
||||
msgstr "Pools"
|
||||
|
||||
#: paperless/settings.py:312
|
||||
msgid "Swedish"
|
||||
msgstr "Zweeds"
|
||||
|
||||
#: paperless/urls.py:113
|
||||
msgid "Paperless-ng administration"
|
||||
msgstr "Paperless-ng administratie"
|
||||
|
@@ -2,8 +2,8 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: paperless-ng\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2021-04-17 13:41+0200\n"
|
||||
"PO-Revision-Date: 2021-04-17 14:46\n"
|
||||
"POT-Creation-Date: 2021-05-04 15:00+0000\n"
|
||||
"PO-Revision-Date: 2021-05-04 21:51\n"
|
||||
"Last-Translator: \n"
|
||||
"Language-Team: Polish\n"
|
||||
"Language: pl_PL\n"
|
||||
@@ -412,54 +412,58 @@ msgstr "Hasło"
|
||||
msgid "Sign in"
|
||||
msgstr "Zaloguj się"
|
||||
|
||||
#: paperless/settings.py:298
|
||||
#: paperless/settings.py:300
|
||||
msgid "English (US)"
|
||||
msgstr "Angielski (USA)"
|
||||
|
||||
#: paperless/settings.py:299
|
||||
#: paperless/settings.py:301
|
||||
msgid "English (GB)"
|
||||
msgstr "Angielski (Wielka Brytania)"
|
||||
|
||||
#: paperless/settings.py:300
|
||||
#: paperless/settings.py:302
|
||||
msgid "German"
|
||||
msgstr "Niemiecki"
|
||||
|
||||
#: paperless/settings.py:301
|
||||
#: paperless/settings.py:303
|
||||
msgid "Dutch"
|
||||
msgstr "Holenderski"
|
||||
|
||||
#: paperless/settings.py:302
|
||||
#: paperless/settings.py:304
|
||||
msgid "French"
|
||||
msgstr "Francuski"
|
||||
|
||||
#: paperless/settings.py:303
|
||||
#: paperless/settings.py:305
|
||||
msgid "Portuguese (Brazil)"
|
||||
msgstr "Portugalski (Brazylia)"
|
||||
|
||||
#: paperless/settings.py:304
|
||||
#: paperless/settings.py:306
|
||||
msgid "Portuguese"
|
||||
msgstr "Portugalski"
|
||||
|
||||
#: paperless/settings.py:305
|
||||
#: paperless/settings.py:307
|
||||
msgid "Italian"
|
||||
msgstr "Włoski"
|
||||
|
||||
#: paperless/settings.py:306
|
||||
#: paperless/settings.py:308
|
||||
msgid "Romanian"
|
||||
msgstr "Rumuński"
|
||||
|
||||
#: paperless/settings.py:307
|
||||
#: paperless/settings.py:309
|
||||
msgid "Russian"
|
||||
msgstr "Rosyjski"
|
||||
|
||||
#: paperless/settings.py:308
|
||||
#: paperless/settings.py:310
|
||||
msgid "Spanish"
|
||||
msgstr "Hiszpański"
|
||||
|
||||
#: paperless/settings.py:309
|
||||
#: paperless/settings.py:311
|
||||
msgid "Polish"
|
||||
msgstr "Polski"
|
||||
|
||||
#: paperless/settings.py:312
|
||||
msgid "Swedish"
|
||||
msgstr ""
|
||||
|
||||
#: paperless/urls.py:113
|
||||
msgid "Paperless-ng administration"
|
||||
msgstr "Administracja Paperless-ng"
|
||||
|
@@ -2,8 +2,8 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: paperless-ng\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2021-04-17 13:41+0200\n"
|
||||
"PO-Revision-Date: 2021-04-17 11:47\n"
|
||||
"POT-Creation-Date: 2021-05-04 15:00+0000\n"
|
||||
"PO-Revision-Date: 2021-05-04 21:51\n"
|
||||
"Last-Translator: \n"
|
||||
"Language-Team: Portuguese, Brazilian\n"
|
||||
"Language: pt_BR\n"
|
||||
@@ -412,54 +412,58 @@ msgstr "Senha"
|
||||
msgid "Sign in"
|
||||
msgstr "Entrar"
|
||||
|
||||
#: paperless/settings.py:298
|
||||
#: paperless/settings.py:300
|
||||
msgid "English (US)"
|
||||
msgstr "Inglês (EUA)"
|
||||
|
||||
#: paperless/settings.py:299
|
||||
#: paperless/settings.py:301
|
||||
msgid "English (GB)"
|
||||
msgstr "Inglês (GB)"
|
||||
|
||||
#: paperless/settings.py:300
|
||||
#: paperless/settings.py:302
|
||||
msgid "German"
|
||||
msgstr "Alemão"
|
||||
|
||||
#: paperless/settings.py:301
|
||||
#: paperless/settings.py:303
|
||||
msgid "Dutch"
|
||||
msgstr "Holandês"
|
||||
|
||||
#: paperless/settings.py:302
|
||||
#: paperless/settings.py:304
|
||||
msgid "French"
|
||||
msgstr "Francês"
|
||||
|
||||
#: paperless/settings.py:303
|
||||
#: paperless/settings.py:305
|
||||
msgid "Portuguese (Brazil)"
|
||||
msgstr "Português (Brasil)"
|
||||
|
||||
#: paperless/settings.py:304
|
||||
#: paperless/settings.py:306
|
||||
msgid "Portuguese"
|
||||
msgstr ""
|
||||
|
||||
#: paperless/settings.py:305
|
||||
#: paperless/settings.py:307
|
||||
msgid "Italian"
|
||||
msgstr "Italiano"
|
||||
|
||||
#: paperless/settings.py:306
|
||||
#: paperless/settings.py:308
|
||||
msgid "Romanian"
|
||||
msgstr "Romeno"
|
||||
|
||||
#: paperless/settings.py:307
|
||||
#: paperless/settings.py:309
|
||||
msgid "Russian"
|
||||
msgstr ""
|
||||
|
||||
#: paperless/settings.py:308
|
||||
#: paperless/settings.py:310
|
||||
msgid "Spanish"
|
||||
msgstr ""
|
||||
|
||||
#: paperless/settings.py:309
|
||||
#: paperless/settings.py:311
|
||||
msgid "Polish"
|
||||
msgstr ""
|
||||
|
||||
#: paperless/settings.py:312
|
||||
msgid "Swedish"
|
||||
msgstr ""
|
||||
|
||||
#: paperless/urls.py:113
|
||||
msgid "Paperless-ng administration"
|
||||
msgstr "Administração do Paperless-ng"
|
||||
|
@@ -2,8 +2,8 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: paperless-ng\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2021-04-17 13:41+0200\n"
|
||||
"PO-Revision-Date: 2021-04-17 21:56\n"
|
||||
"POT-Creation-Date: 2021-05-04 15:00+0000\n"
|
||||
"PO-Revision-Date: 2021-05-05 18:07\n"
|
||||
"Last-Translator: \n"
|
||||
"Language-Team: Portuguese\n"
|
||||
"Language: pt_PT\n"
|
||||
@@ -412,54 +412,58 @@ msgstr "Palavra-passe"
|
||||
msgid "Sign in"
|
||||
msgstr "Iniciar sessão"
|
||||
|
||||
#: paperless/settings.py:298
|
||||
#: paperless/settings.py:300
|
||||
msgid "English (US)"
|
||||
msgstr "Inglês (EUA)"
|
||||
|
||||
#: paperless/settings.py:299
|
||||
#: paperless/settings.py:301
|
||||
msgid "English (GB)"
|
||||
msgstr "English (GB)"
|
||||
|
||||
#: paperless/settings.py:300
|
||||
#: paperless/settings.py:302
|
||||
msgid "German"
|
||||
msgstr "Deutsch"
|
||||
|
||||
#: paperless/settings.py:301
|
||||
#: paperless/settings.py:303
|
||||
msgid "Dutch"
|
||||
msgstr "Nederlandse"
|
||||
|
||||
#: paperless/settings.py:302
|
||||
#: paperless/settings.py:304
|
||||
msgid "French"
|
||||
msgstr "Français"
|
||||
|
||||
#: paperless/settings.py:303
|
||||
#: paperless/settings.py:305
|
||||
msgid "Portuguese (Brazil)"
|
||||
msgstr "Português (Brasil)"
|
||||
|
||||
#: paperless/settings.py:304
|
||||
#: paperless/settings.py:306
|
||||
msgid "Portuguese"
|
||||
msgstr "Português"
|
||||
|
||||
#: paperless/settings.py:305
|
||||
#: paperless/settings.py:307
|
||||
msgid "Italian"
|
||||
msgstr "Italiano"
|
||||
|
||||
#: paperless/settings.py:306
|
||||
#: paperless/settings.py:308
|
||||
msgid "Romanian"
|
||||
msgstr "Romeno"
|
||||
|
||||
#: paperless/settings.py:307
|
||||
#: paperless/settings.py:309
|
||||
msgid "Russian"
|
||||
msgstr "Russo"
|
||||
|
||||
#: paperless/settings.py:308
|
||||
#: paperless/settings.py:310
|
||||
msgid "Spanish"
|
||||
msgstr "Espanhol"
|
||||
|
||||
#: paperless/settings.py:309
|
||||
#: paperless/settings.py:311
|
||||
msgid "Polish"
|
||||
msgstr "Polaco"
|
||||
|
||||
#: paperless/settings.py:312
|
||||
msgid "Swedish"
|
||||
msgstr "Sueco"
|
||||
|
||||
#: paperless/urls.py:113
|
||||
msgid "Paperless-ng administration"
|
||||
msgstr "Administração do Paperless-ng"
|
||||
|
@@ -2,8 +2,8 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: paperless-ng\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2021-04-17 13:41+0200\n"
|
||||
"PO-Revision-Date: 2021-05-04 02:27\n"
|
||||
"POT-Creation-Date: 2021-05-04 15:00+0000\n"
|
||||
"PO-Revision-Date: 2021-05-04 23:04\n"
|
||||
"Last-Translator: \n"
|
||||
"Language-Team: Romanian\n"
|
||||
"Language: ro_RO\n"
|
||||
@@ -412,53 +412,57 @@ msgstr "Parolă"
|
||||
msgid "Sign in"
|
||||
msgstr "Conectare"
|
||||
|
||||
#: paperless/settings.py:298
|
||||
#: paperless/settings.py:300
|
||||
msgid "English (US)"
|
||||
msgstr "Engleză (Americană)"
|
||||
|
||||
#: paperless/settings.py:299
|
||||
#: paperless/settings.py:301
|
||||
msgid "English (GB)"
|
||||
msgstr "Engleză (Britanică)"
|
||||
|
||||
#: paperless/settings.py:300
|
||||
#: paperless/settings.py:302
|
||||
msgid "German"
|
||||
msgstr "Germană"
|
||||
|
||||
#: paperless/settings.py:301
|
||||
#: paperless/settings.py:303
|
||||
msgid "Dutch"
|
||||
msgstr "Olandeză"
|
||||
|
||||
#: paperless/settings.py:302
|
||||
#: paperless/settings.py:304
|
||||
msgid "French"
|
||||
msgstr "Franceză"
|
||||
|
||||
#: paperless/settings.py:303
|
||||
#: paperless/settings.py:305
|
||||
msgid "Portuguese (Brazil)"
|
||||
msgstr "Portugheză (Brazilia)"
|
||||
|
||||
#: paperless/settings.py:304
|
||||
#: paperless/settings.py:306
|
||||
msgid "Portuguese"
|
||||
msgstr "Portugheză"
|
||||
|
||||
#: paperless/settings.py:305
|
||||
#: paperless/settings.py:307
|
||||
msgid "Italian"
|
||||
msgstr "Italiană"
|
||||
|
||||
#: paperless/settings.py:306
|
||||
#: paperless/settings.py:308
|
||||
msgid "Romanian"
|
||||
msgstr "Română"
|
||||
|
||||
#: paperless/settings.py:307
|
||||
#: paperless/settings.py:309
|
||||
msgid "Russian"
|
||||
msgstr "Rusă"
|
||||
|
||||
#: paperless/settings.py:308
|
||||
#: paperless/settings.py:310
|
||||
msgid "Spanish"
|
||||
msgstr "Spaniolă"
|
||||
|
||||
#: paperless/settings.py:309
|
||||
#: paperless/settings.py:311
|
||||
msgid "Polish"
|
||||
msgstr ""
|
||||
msgstr "Poloneză"
|
||||
|
||||
#: paperless/settings.py:312
|
||||
msgid "Swedish"
|
||||
msgstr "Suedeză"
|
||||
|
||||
#: paperless/urls.py:113
|
||||
msgid "Paperless-ng administration"
|
||||
|
@@ -2,8 +2,8 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: paperless-ng\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2021-04-17 13:41+0200\n"
|
||||
"PO-Revision-Date: 2021-04-17 11:47\n"
|
||||
"POT-Creation-Date: 2021-05-04 15:00+0000\n"
|
||||
"PO-Revision-Date: 2021-05-04 21:51\n"
|
||||
"Last-Translator: \n"
|
||||
"Language-Team: Russian\n"
|
||||
"Language: ru_RU\n"
|
||||
@@ -412,54 +412,58 @@ msgstr "Пароль"
|
||||
msgid "Sign in"
|
||||
msgstr "Вход"
|
||||
|
||||
#: paperless/settings.py:298
|
||||
#: paperless/settings.py:300
|
||||
msgid "English (US)"
|
||||
msgstr "Английский (США)"
|
||||
|
||||
#: paperless/settings.py:299
|
||||
#: paperless/settings.py:301
|
||||
msgid "English (GB)"
|
||||
msgstr "Английский (Великобритании)"
|
||||
|
||||
#: paperless/settings.py:300
|
||||
#: paperless/settings.py:302
|
||||
msgid "German"
|
||||
msgstr "Немецкий"
|
||||
|
||||
#: paperless/settings.py:301
|
||||
#: paperless/settings.py:303
|
||||
msgid "Dutch"
|
||||
msgstr "Датский"
|
||||
|
||||
#: paperless/settings.py:302
|
||||
#: paperless/settings.py:304
|
||||
msgid "French"
|
||||
msgstr "Французский"
|
||||
|
||||
#: paperless/settings.py:303
|
||||
#: paperless/settings.py:305
|
||||
msgid "Portuguese (Brazil)"
|
||||
msgstr "Portuguese (Brazil)"
|
||||
|
||||
#: paperless/settings.py:304
|
||||
#: paperless/settings.py:306
|
||||
msgid "Portuguese"
|
||||
msgstr "Португальский"
|
||||
|
||||
#: paperless/settings.py:305
|
||||
#: paperless/settings.py:307
|
||||
msgid "Italian"
|
||||
msgstr "Italian"
|
||||
|
||||
#: paperless/settings.py:306
|
||||
#: paperless/settings.py:308
|
||||
msgid "Romanian"
|
||||
msgstr "Romanian"
|
||||
|
||||
#: paperless/settings.py:307
|
||||
#: paperless/settings.py:309
|
||||
msgid "Russian"
|
||||
msgstr "Русский"
|
||||
|
||||
#: paperless/settings.py:308
|
||||
#: paperless/settings.py:310
|
||||
msgid "Spanish"
|
||||
msgstr "Испанский"
|
||||
|
||||
#: paperless/settings.py:309
|
||||
#: paperless/settings.py:311
|
||||
msgid "Polish"
|
||||
msgstr ""
|
||||
|
||||
#: paperless/settings.py:312
|
||||
msgid "Swedish"
|
||||
msgstr ""
|
||||
|
||||
#: paperless/urls.py:113
|
||||
msgid "Paperless-ng administration"
|
||||
msgstr "Администрирование Paperless-ng"
|
||||
|
@@ -2,8 +2,8 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: paperless-ng\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2021-04-17 13:41+0200\n"
|
||||
"PO-Revision-Date: 2021-05-04 13:14\n"
|
||||
"POT-Creation-Date: 2021-05-04 15:00+0000\n"
|
||||
"PO-Revision-Date: 2021-05-10 13:35\n"
|
||||
"Last-Translator: \n"
|
||||
"Language-Team: Swedish\n"
|
||||
"Language: sv_SE\n"
|
||||
@@ -412,54 +412,58 @@ msgstr "Lösenord"
|
||||
msgid "Sign in"
|
||||
msgstr "Logga in"
|
||||
|
||||
#: paperless/settings.py:298
|
||||
#: paperless/settings.py:300
|
||||
msgid "English (US)"
|
||||
msgstr "Engelska (USA)"
|
||||
|
||||
#: paperless/settings.py:299
|
||||
#: paperless/settings.py:301
|
||||
msgid "English (GB)"
|
||||
msgstr "Engelska (GB)"
|
||||
|
||||
#: paperless/settings.py:300
|
||||
#: paperless/settings.py:302
|
||||
msgid "German"
|
||||
msgstr "Tyska"
|
||||
|
||||
#: paperless/settings.py:301
|
||||
#: paperless/settings.py:303
|
||||
msgid "Dutch"
|
||||
msgstr "Holländska"
|
||||
|
||||
#: paperless/settings.py:302
|
||||
#: paperless/settings.py:304
|
||||
msgid "French"
|
||||
msgstr "Franska"
|
||||
|
||||
#: paperless/settings.py:303
|
||||
#: paperless/settings.py:305
|
||||
msgid "Portuguese (Brazil)"
|
||||
msgstr "Portugisiska (Brasilien)"
|
||||
|
||||
#: paperless/settings.py:304
|
||||
#: paperless/settings.py:306
|
||||
msgid "Portuguese"
|
||||
msgstr "Portugisiska"
|
||||
|
||||
#: paperless/settings.py:305
|
||||
#: paperless/settings.py:307
|
||||
msgid "Italian"
|
||||
msgstr "Italienska"
|
||||
|
||||
#: paperless/settings.py:306
|
||||
#: paperless/settings.py:308
|
||||
msgid "Romanian"
|
||||
msgstr "Rumänska"
|
||||
|
||||
#: paperless/settings.py:307
|
||||
#: paperless/settings.py:309
|
||||
msgid "Russian"
|
||||
msgstr "Ryska"
|
||||
|
||||
#: paperless/settings.py:308
|
||||
#: paperless/settings.py:310
|
||||
msgid "Spanish"
|
||||
msgstr "Spanska"
|
||||
|
||||
#: paperless/settings.py:309
|
||||
#: paperless/settings.py:311
|
||||
msgid "Polish"
|
||||
msgstr "Polska"
|
||||
|
||||
#: paperless/settings.py:312
|
||||
msgid "Swedish"
|
||||
msgstr "Svenska"
|
||||
|
||||
#: paperless/urls.py:113
|
||||
msgid "Paperless-ng administration"
|
||||
msgstr "Paperless-ng administration"
|
||||
|
@@ -2,8 +2,8 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: paperless-ng\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2021-04-17 13:41+0200\n"
|
||||
"PO-Revision-Date: 2021-04-17 11:46\n"
|
||||
"POT-Creation-Date: 2021-05-04 15:00+0000\n"
|
||||
"PO-Revision-Date: 2021-05-04 21:51\n"
|
||||
"Last-Translator: \n"
|
||||
"Language-Team: Xhosa\n"
|
||||
"Language: xh_ZA\n"
|
||||
@@ -412,54 +412,58 @@ msgstr "crwdns2712:0crwdne2712:0"
|
||||
msgid "Sign in"
|
||||
msgstr "crwdns2714:0crwdne2714:0"
|
||||
|
||||
#: paperless/settings.py:298
|
||||
#: paperless/settings.py:300
|
||||
msgid "English (US)"
|
||||
msgstr "crwdns2716:0crwdne2716:0"
|
||||
|
||||
#: paperless/settings.py:299
|
||||
#: paperless/settings.py:301
|
||||
msgid "English (GB)"
|
||||
msgstr "crwdns2718:0crwdne2718:0"
|
||||
|
||||
#: paperless/settings.py:300
|
||||
#: paperless/settings.py:302
|
||||
msgid "German"
|
||||
msgstr "crwdns2720:0crwdne2720:0"
|
||||
|
||||
#: paperless/settings.py:301
|
||||
#: paperless/settings.py:303
|
||||
msgid "Dutch"
|
||||
msgstr "crwdns2722:0crwdne2722:0"
|
||||
|
||||
#: paperless/settings.py:302
|
||||
#: paperless/settings.py:304
|
||||
msgid "French"
|
||||
msgstr "crwdns2724:0crwdne2724:0"
|
||||
|
||||
#: paperless/settings.py:303
|
||||
#: paperless/settings.py:305
|
||||
msgid "Portuguese (Brazil)"
|
||||
msgstr "crwdns2726:0crwdne2726:0"
|
||||
|
||||
#: paperless/settings.py:304
|
||||
#: paperless/settings.py:306
|
||||
msgid "Portuguese"
|
||||
msgstr "crwdns3424:0crwdne3424:0"
|
||||
|
||||
#: paperless/settings.py:305
|
||||
#: paperless/settings.py:307
|
||||
msgid "Italian"
|
||||
msgstr "crwdns2728:0crwdne2728:0"
|
||||
|
||||
#: paperless/settings.py:306
|
||||
#: paperless/settings.py:308
|
||||
msgid "Romanian"
|
||||
msgstr "crwdns2730:0crwdne2730:0"
|
||||
|
||||
#: paperless/settings.py:307
|
||||
#: paperless/settings.py:309
|
||||
msgid "Russian"
|
||||
msgstr "crwdns3414:0crwdne3414:0"
|
||||
|
||||
#: paperless/settings.py:308
|
||||
#: paperless/settings.py:310
|
||||
msgid "Spanish"
|
||||
msgstr "crwdns3420:0crwdne3420:0"
|
||||
|
||||
#: paperless/settings.py:309
|
||||
#: paperless/settings.py:311
|
||||
msgid "Polish"
|
||||
msgstr "crwdns3444:0crwdne3444:0"
|
||||
|
||||
#: paperless/settings.py:312
|
||||
msgid "Swedish"
|
||||
msgstr "crwdns3448:0crwdne3448:0"
|
||||
|
||||
#: paperless/urls.py:113
|
||||
msgid "Paperless-ng administration"
|
||||
msgstr "crwdns2732:0crwdne2732:0"
|
||||
|
@@ -2,8 +2,8 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: paperless-ng\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2021-04-17 13:41+0200\n"
|
||||
"PO-Revision-Date: 2021-04-17 11:47\n"
|
||||
"POT-Creation-Date: 2021-05-04 15:00+0000\n"
|
||||
"PO-Revision-Date: 2021-05-04 21:51\n"
|
||||
"Last-Translator: \n"
|
||||
"Language-Team: Chinese Simplified\n"
|
||||
"Language: zh_CN\n"
|
||||
@@ -412,54 +412,58 @@ msgstr ""
|
||||
msgid "Sign in"
|
||||
msgstr ""
|
||||
|
||||
#: paperless/settings.py:298
|
||||
#: paperless/settings.py:300
|
||||
msgid "English (US)"
|
||||
msgstr ""
|
||||
|
||||
#: paperless/settings.py:299
|
||||
#: paperless/settings.py:301
|
||||
msgid "English (GB)"
|
||||
msgstr ""
|
||||
|
||||
#: paperless/settings.py:300
|
||||
#: paperless/settings.py:302
|
||||
msgid "German"
|
||||
msgstr ""
|
||||
|
||||
#: paperless/settings.py:301
|
||||
#: paperless/settings.py:303
|
||||
msgid "Dutch"
|
||||
msgstr ""
|
||||
|
||||
#: paperless/settings.py:302
|
||||
#: paperless/settings.py:304
|
||||
msgid "French"
|
||||
msgstr ""
|
||||
|
||||
#: paperless/settings.py:303
|
||||
#: paperless/settings.py:305
|
||||
msgid "Portuguese (Brazil)"
|
||||
msgstr ""
|
||||
|
||||
#: paperless/settings.py:304
|
||||
#: paperless/settings.py:306
|
||||
msgid "Portuguese"
|
||||
msgstr ""
|
||||
|
||||
#: paperless/settings.py:305
|
||||
#: paperless/settings.py:307
|
||||
msgid "Italian"
|
||||
msgstr ""
|
||||
|
||||
#: paperless/settings.py:306
|
||||
#: paperless/settings.py:308
|
||||
msgid "Romanian"
|
||||
msgstr ""
|
||||
|
||||
#: paperless/settings.py:307
|
||||
#: paperless/settings.py:309
|
||||
msgid "Russian"
|
||||
msgstr ""
|
||||
|
||||
#: paperless/settings.py:308
|
||||
#: paperless/settings.py:310
|
||||
msgid "Spanish"
|
||||
msgstr ""
|
||||
|
||||
#: paperless/settings.py:309
|
||||
#: paperless/settings.py:311
|
||||
msgid "Polish"
|
||||
msgstr ""
|
||||
|
||||
#: paperless/settings.py:312
|
||||
msgid "Swedish"
|
||||
msgstr ""
|
||||
|
||||
#: paperless/urls.py:113
|
||||
msgid "Paperless-ng administration"
|
||||
msgstr ""
|
||||
|
@@ -142,11 +142,14 @@ MIDDLEWARE = [
|
||||
ROOT_URLCONF = 'paperless.urls'
|
||||
|
||||
FORCE_SCRIPT_NAME = os.getenv("PAPERLESS_FORCE_SCRIPT_NAME")
|
||||
BASE_URL = (FORCE_SCRIPT_NAME or "") + "/"
|
||||
LOGIN_URL = BASE_URL + "accounts/login/"
|
||||
|
||||
WSGI_APPLICATION = 'paperless.wsgi.application'
|
||||
ASGI_APPLICATION = "paperless.asgi.application"
|
||||
|
||||
STATIC_URL = os.getenv("PAPERLESS_STATIC_URL", "/static/")
|
||||
STATIC_URL = os.getenv("PAPERLESS_STATIC_URL", BASE_URL + "static/")
|
||||
WHITENOISE_STATIC_PREFIX = "/static/"
|
||||
|
||||
# TODO: what is this used for?
|
||||
TEMPLATES = [
|
||||
|
@@ -9,6 +9,8 @@ from rest_framework.routers import DefaultRouter
|
||||
|
||||
from django.utils.translation import gettext_lazy as _
|
||||
|
||||
from django.conf import settings
|
||||
|
||||
from paperless.consumers import StatusConsumer
|
||||
from documents.views import (
|
||||
CorrespondentViewSet,
|
||||
@@ -73,31 +75,36 @@ urlpatterns = [
|
||||
re_path(r"^fetch/", include([
|
||||
re_path(
|
||||
r"^doc/(?P<pk>\d+)$",
|
||||
RedirectView.as_view(url='/api/documents/%(pk)s/download/'),
|
||||
RedirectView.as_view(url=settings.BASE_URL +
|
||||
'api/documents/%(pk)s/download/'),
|
||||
),
|
||||
re_path(
|
||||
r"^thumb/(?P<pk>\d+)$",
|
||||
RedirectView.as_view(url='/api/documents/%(pk)s/thumb/'),
|
||||
RedirectView.as_view(url=settings.BASE_URL +
|
||||
'api/documents/%(pk)s/thumb/'),
|
||||
),
|
||||
re_path(
|
||||
r"^preview/(?P<pk>\d+)$",
|
||||
RedirectView.as_view(url='/api/documents/%(pk)s/preview/'),
|
||||
RedirectView.as_view(url=settings.BASE_URL +
|
||||
'api/documents/%(pk)s/preview/'),
|
||||
),
|
||||
])),
|
||||
|
||||
re_path(r"^push$", csrf_exempt(
|
||||
RedirectView.as_view(url='/api/documents/post_document/'))),
|
||||
RedirectView.as_view(url=settings.BASE_URL +
|
||||
'api/documents/post_document/'))),
|
||||
|
||||
# Frontend assets TODO: this is pretty bad, but it works.
|
||||
path('assets/<path:path>',
|
||||
RedirectView.as_view(url='/static/frontend/en-US/assets/%(path)s')),
|
||||
RedirectView.as_view(url=settings.STATIC_URL +
|
||||
'frontend/en-US/assets/%(path)s')),
|
||||
# TODO: with localization, this is even worse! :/
|
||||
|
||||
# login, logout
|
||||
path('accounts/', include('django.contrib.auth.urls')),
|
||||
|
||||
# Root of the Frontent
|
||||
re_path(r".*", login_required(IndexView.as_view())),
|
||||
re_path(r".*", login_required(IndexView.as_view()), name='base'),
|
||||
]
|
||||
|
||||
|
||||
|
@@ -1 +1 @@
|
||||
__version__ = (1, 4, 2)
|
||||
__version__ = (1, 4, 3)
|
||||
|
11
src/paperless/workers.py
Normal file
11
src/paperless/workers.py
Normal file
@@ -0,0 +1,11 @@
|
||||
import os
|
||||
from uvicorn.workers import UvicornWorker
|
||||
from django.conf import settings
|
||||
|
||||
os.environ.setdefault("DJANGO_SETTINGS_MODULE", "paperless.settings")
|
||||
|
||||
|
||||
class ConfigurableWorker(UvicornWorker):
|
||||
CONFIG_KWARGS = {
|
||||
"root_path": settings.FORCE_SCRIPT_NAME or "",
|
||||
}
|
@@ -121,7 +121,12 @@ class RasterisedDocumentParser(DocumentParser):
|
||||
|
||||
self.log("debug", f"Extracted text from PDF file {pdf_file}")
|
||||
return stripped
|
||||
except PDFException:
|
||||
except Exception:
|
||||
# TODO catch all for various issues with PDFminer.six.
|
||||
# If PDFminer fails, fall back to OCR.
|
||||
self.log("warn",
|
||||
"Error while getting text from PDF document with "
|
||||
"pdfminer.six", exc_info=True)
|
||||
# probably not a PDF file.
|
||||
return None
|
||||
|
||||
|
Reference in New Issue
Block a user