mirror of
https://github.com/paperless-ngx/paperless-ngx.git
synced 2025-11-23 23:49:08 -06:00
Merge branch 'dev' into feature-remote-ocr-2
This commit is contained in:
@@ -160,6 +160,7 @@ class InboxFilter(Filter):
|
||||
@extend_schema_field(serializers.CharField)
|
||||
class TitleContentFilter(Filter):
|
||||
def filter(self, qs, value):
|
||||
value = value.strip() if isinstance(value, str) else value
|
||||
if value:
|
||||
return qs.filter(Q(title__icontains=value) | Q(content__icontains=value))
|
||||
else:
|
||||
@@ -214,6 +215,7 @@ class CustomFieldFilterSet(FilterSet):
|
||||
@extend_schema_field(serializers.CharField)
|
||||
class CustomFieldsFilter(Filter):
|
||||
def filter(self, qs, value):
|
||||
value = value.strip() if isinstance(value, str) else value
|
||||
if value:
|
||||
fields_with_matching_selects = CustomField.objects.filter(
|
||||
extra_data__icontains=value,
|
||||
@@ -244,6 +246,7 @@ class CustomFieldsFilter(Filter):
|
||||
|
||||
class MimeTypeFilter(Filter):
|
||||
def filter(self, qs, value):
|
||||
value = value.strip() if isinstance(value, str) else value
|
||||
if value:
|
||||
return qs.filter(mime_type__icontains=value)
|
||||
else:
|
||||
|
||||
@@ -1,25 +1,26 @@
|
||||
from __future__ import annotations
|
||||
|
||||
from dataclasses import dataclass
|
||||
from email import message_from_bytes
|
||||
from typing import TYPE_CHECKING
|
||||
from pathlib import Path
|
||||
|
||||
from django.conf import settings
|
||||
from django.core.mail import EmailMessage
|
||||
from filelock import FileLock
|
||||
|
||||
from documents.data_models import ConsumableDocument
|
||||
|
||||
if TYPE_CHECKING:
|
||||
from documents.models import Document
|
||||
@dataclass(frozen=True)
|
||||
class EmailAttachment:
|
||||
path: Path
|
||||
mime_type: str
|
||||
friendly_name: str
|
||||
|
||||
|
||||
def send_email(
|
||||
subject: str,
|
||||
body: str,
|
||||
to: list[str],
|
||||
attachments: list[Document | ConsumableDocument],
|
||||
*,
|
||||
use_archive: bool,
|
||||
attachments: list[EmailAttachment],
|
||||
) -> int:
|
||||
"""
|
||||
Send an email with attachments.
|
||||
@@ -28,8 +29,7 @@ def send_email(
|
||||
subject: Email subject
|
||||
body: Email body text
|
||||
to: List of recipient email addresses
|
||||
attachments: List of documents to attach (the list may be empty)
|
||||
use_archive: Whether to attach archive versions when available
|
||||
attachments: List of attachments
|
||||
|
||||
Returns:
|
||||
Number of emails sent
|
||||
@@ -46,47 +46,41 @@ def send_email(
|
||||
|
||||
# Something could be renaming the file concurrently so it can't be attached
|
||||
with FileLock(settings.MEDIA_LOCK):
|
||||
for document in attachments:
|
||||
if isinstance(document, ConsumableDocument):
|
||||
attachment_path = document.original_file
|
||||
friendly_filename = document.original_file.name
|
||||
else:
|
||||
attachment_path = (
|
||||
document.archive_path
|
||||
if use_archive and document.has_archive_version
|
||||
else document.source_path
|
||||
)
|
||||
friendly_filename = _get_unique_filename(
|
||||
document,
|
||||
used_filenames,
|
||||
archive=use_archive and document.has_archive_version,
|
||||
)
|
||||
used_filenames.add(friendly_filename)
|
||||
for attachment in attachments:
|
||||
filename = _get_unique_filename(
|
||||
attachment.friendly_name,
|
||||
used_filenames,
|
||||
)
|
||||
used_filenames.add(filename)
|
||||
|
||||
with attachment_path.open("rb") as f:
|
||||
with attachment.path.open("rb") as f:
|
||||
content = f.read()
|
||||
if document.mime_type == "message/rfc822":
|
||||
if attachment.mime_type == "message/rfc822":
|
||||
# See https://forum.djangoproject.com/t/using-emailmessage-with-an-attached-email-file-crashes-due-to-non-ascii/37981
|
||||
content = message_from_bytes(content)
|
||||
|
||||
email.attach(
|
||||
filename=friendly_filename,
|
||||
filename=filename,
|
||||
content=content,
|
||||
mimetype=document.mime_type,
|
||||
mimetype=attachment.mime_type,
|
||||
)
|
||||
|
||||
return email.send()
|
||||
|
||||
|
||||
def _get_unique_filename(doc: Document, used_names: set[str], *, archive: bool) -> str:
|
||||
def _get_unique_filename(friendly_name: str, used_names: set[str]) -> str:
|
||||
"""
|
||||
Constructs a unique friendly filename for the given document.
|
||||
Constructs a unique friendly filename for the given document, append a counter if needed.
|
||||
"""
|
||||
if friendly_name not in used_names:
|
||||
return friendly_name
|
||||
|
||||
The filename might not be unique enough, so a counter is appended if needed.
|
||||
"""
|
||||
counter = 0
|
||||
stem = Path(friendly_name).stem
|
||||
suffix = "".join(Path(friendly_name).suffixes)
|
||||
|
||||
counter = 1
|
||||
while True:
|
||||
filename = doc.get_public_filename(archive=archive, counter=counter)
|
||||
filename = f"{stem}_{counter:02}{suffix}"
|
||||
if filename not in used_names:
|
||||
return filename
|
||||
counter += 1
|
||||
|
||||
@@ -31,11 +31,10 @@ from guardian.shortcuts import remove_perm
|
||||
|
||||
from documents import matching
|
||||
from documents.caching import clear_document_caches
|
||||
from documents.data_models import ConsumableDocument
|
||||
from documents.data_models import DocumentSource
|
||||
from documents.file_handling import create_source_path_directory
|
||||
from documents.file_handling import delete_empty_directories
|
||||
from documents.file_handling import generate_unique_filename
|
||||
from documents.mail import EmailAttachment
|
||||
from documents.mail import send_email
|
||||
from documents.models import Correspondent
|
||||
from documents.models import CustomField
|
||||
@@ -57,6 +56,7 @@ from documents.templating.workflows import parse_w_workflow_placeholders
|
||||
|
||||
if TYPE_CHECKING:
|
||||
from documents.classifier import DocumentClassifier
|
||||
from documents.data_models import ConsumableDocument
|
||||
from documents.data_models import DocumentMetadataOverrides
|
||||
|
||||
logger = logging.getLogger("paperless.handlers")
|
||||
@@ -1095,7 +1095,9 @@ def run_workflows(
|
||||
|
||||
if not use_overrides:
|
||||
title = document.title
|
||||
doc_url = f"{settings.PAPERLESS_URL}/documents/{document.pk}/"
|
||||
doc_url = (
|
||||
f"{settings.PAPERLESS_URL}{settings.BASE_URL}documents/{document.pk}/"
|
||||
)
|
||||
correspondent = (
|
||||
document.correspondent.name if document.correspondent else ""
|
||||
)
|
||||
@@ -1163,28 +1165,41 @@ def run_workflows(
|
||||
else ""
|
||||
)
|
||||
try:
|
||||
attachments = []
|
||||
attachments: list[EmailAttachment] = []
|
||||
if action.email.include_document:
|
||||
attachment: EmailAttachment | None = None
|
||||
if trigger_type in [
|
||||
WorkflowTrigger.WorkflowTriggerType.DOCUMENT_UPDATED,
|
||||
WorkflowTrigger.WorkflowTriggerType.SCHEDULED,
|
||||
]:
|
||||
# Updated and scheduled can pass the document directly
|
||||
attachments = [document]
|
||||
] and isinstance(document, Document):
|
||||
friendly_name = (
|
||||
Path(current_filename).name
|
||||
if current_filename
|
||||
else document.source_path.name
|
||||
)
|
||||
attachment = EmailAttachment(
|
||||
path=document.source_path,
|
||||
mime_type=document.mime_type,
|
||||
friendly_name=friendly_name,
|
||||
)
|
||||
elif original_file:
|
||||
# For consumed and added document is not yet saved, so pass the original file
|
||||
attachments = [
|
||||
ConsumableDocument(
|
||||
source=DocumentSource.ApiUpload,
|
||||
original_file=original_file,
|
||||
),
|
||||
]
|
||||
friendly_name = (
|
||||
Path(current_filename).name
|
||||
if current_filename
|
||||
else original_file.name
|
||||
)
|
||||
attachment = EmailAttachment(
|
||||
path=original_file,
|
||||
mime_type=document.mime_type,
|
||||
friendly_name=friendly_name,
|
||||
)
|
||||
if attachment:
|
||||
attachments = [attachment]
|
||||
n_messages = send_email(
|
||||
subject=subject,
|
||||
body=body,
|
||||
to=action.email.to.split(","),
|
||||
attachments=attachments,
|
||||
use_archive=False,
|
||||
)
|
||||
logger.debug(
|
||||
f"Sent {n_messages} notification email(s) to {action.email.to}",
|
||||
@@ -1199,7 +1214,9 @@ def run_workflows(
|
||||
def webhook_action():
|
||||
if not use_overrides:
|
||||
title = document.title
|
||||
doc_url = f"{settings.PAPERLESS_URL}/documents/{document.pk}/"
|
||||
doc_url = (
|
||||
f"{settings.PAPERLESS_URL}{settings.BASE_URL}documents/{document.pk}/"
|
||||
)
|
||||
correspondent = (
|
||||
document.correspondent.name if document.correspondent else ""
|
||||
)
|
||||
|
||||
@@ -941,6 +941,23 @@ class TestDocumentApi(DirectoriesMixin, DocumentConsumeDelayMixin, APITestCase):
|
||||
results = response.data["results"]
|
||||
self.assertEqual(len(results), 0)
|
||||
|
||||
def test_documents_title_content_filter_strips_boundary_whitespace(self):
|
||||
doc = Document.objects.create(
|
||||
title="Testwort",
|
||||
content="",
|
||||
checksum="A",
|
||||
mime_type="application/pdf",
|
||||
)
|
||||
|
||||
response = self.client.get(
|
||||
"/api/documents/",
|
||||
{"title_content": " Testwort "},
|
||||
)
|
||||
self.assertEqual(response.status_code, status.HTTP_200_OK)
|
||||
results = response.data["results"]
|
||||
self.assertEqual(len(results), 1)
|
||||
self.assertEqual(results[0]["id"], doc.id)
|
||||
|
||||
def test_document_permissions_filters(self):
|
||||
"""
|
||||
GIVEN:
|
||||
|
||||
@@ -8,8 +8,10 @@ from typing import TYPE_CHECKING
|
||||
from unittest import mock
|
||||
|
||||
import pytest
|
||||
from django.conf import settings
|
||||
from django.contrib.auth.models import Group
|
||||
from django.contrib.auth.models import User
|
||||
from django.core import mail
|
||||
from django.test import override_settings
|
||||
from django.utils import timezone
|
||||
from guardian.shortcuts import assign_perm
|
||||
@@ -21,6 +23,8 @@ from pytest_httpx import HTTPXMock
|
||||
from rest_framework.test import APIClient
|
||||
from rest_framework.test import APITestCase
|
||||
|
||||
from documents.file_handling import create_source_path_directory
|
||||
from documents.file_handling import generate_unique_filename
|
||||
from documents.signals.handlers import run_workflows
|
||||
from documents.signals.handlers import send_webhook
|
||||
|
||||
@@ -2989,6 +2993,70 @@ class TestWorkflows(
|
||||
|
||||
mock_email_send.assert_called_once()
|
||||
|
||||
@override_settings(
|
||||
PAPERLESS_EMAIL_HOST="localhost",
|
||||
EMAIL_ENABLED=True,
|
||||
PAPERLESS_URL="http://localhost:8000",
|
||||
EMAIL_BACKEND="django.core.mail.backends.locmem.EmailBackend",
|
||||
)
|
||||
def test_workflow_email_attachment_uses_storage_filename(self):
|
||||
"""
|
||||
GIVEN:
|
||||
- Document updated workflow with include document action
|
||||
- Document stored with formatted storage-path filename
|
||||
WHEN:
|
||||
- Workflow sends an email
|
||||
THEN:
|
||||
- Attachment filename matches the stored filename
|
||||
"""
|
||||
|
||||
trigger = WorkflowTrigger.objects.create(
|
||||
type=WorkflowTrigger.WorkflowTriggerType.DOCUMENT_UPDATED,
|
||||
)
|
||||
email_action = WorkflowActionEmail.objects.create(
|
||||
subject="Test Notification: {doc_title}",
|
||||
body="Test message: {doc_url}",
|
||||
to="me@example.com",
|
||||
include_document=True,
|
||||
)
|
||||
action = WorkflowAction.objects.create(
|
||||
type=WorkflowAction.WorkflowActionType.EMAIL,
|
||||
email=email_action,
|
||||
)
|
||||
workflow = Workflow.objects.create(
|
||||
name="Workflow attachment filename",
|
||||
order=0,
|
||||
)
|
||||
workflow.triggers.add(trigger)
|
||||
workflow.actions.add(action)
|
||||
workflow.save()
|
||||
|
||||
storage_path = StoragePath.objects.create(
|
||||
name="Fancy Path",
|
||||
path="formatted/{{ document.pk }}/{{ title }}",
|
||||
)
|
||||
doc = Document.objects.create(
|
||||
title="workflow doc",
|
||||
correspondent=self.c,
|
||||
checksum="workflow-email-attachment",
|
||||
mime_type="application/pdf",
|
||||
storage_path=storage_path,
|
||||
original_filename="workflow-orig.pdf",
|
||||
)
|
||||
|
||||
# eg what happens in update_filename_and_move_files
|
||||
generated = generate_unique_filename(doc)
|
||||
destination = (settings.ORIGINALS_DIR / generated).resolve()
|
||||
create_source_path_directory(destination)
|
||||
shutil.copy(self.SAMPLE_DIR / "simple.pdf", destination)
|
||||
Document.objects.filter(pk=doc.pk).update(filename=generated.as_posix())
|
||||
|
||||
run_workflows(WorkflowTrigger.WorkflowTriggerType.DOCUMENT_UPDATED, doc)
|
||||
|
||||
self.assertEqual(len(mail.outbox), 1)
|
||||
attachment_names = [att[0] for att in mail.outbox[0].attachments]
|
||||
self.assertEqual(attachment_names, [Path(generated).name])
|
||||
|
||||
@override_settings(
|
||||
EMAIL_ENABLED=False,
|
||||
)
|
||||
@@ -3144,6 +3212,8 @@ class TestWorkflows(
|
||||
|
||||
@override_settings(
|
||||
PAPERLESS_URL="http://localhost:8000",
|
||||
PAPERLESS_FORCE_SCRIPT_NAME="/paperless",
|
||||
BASE_URL="/paperless/",
|
||||
)
|
||||
@mock.patch("documents.signals.handlers.send_webhook.delay")
|
||||
def test_workflow_webhook_action_body(self, mock_post):
|
||||
@@ -3195,7 +3265,7 @@ class TestWorkflows(
|
||||
|
||||
mock_post.assert_called_once_with(
|
||||
url="http://paperless-ngx.com",
|
||||
data=f"Test message: http://localhost:8000/documents/{doc.id}/",
|
||||
data=f"Test message: http://localhost:8000/paperless/documents/{doc.id}/",
|
||||
headers={},
|
||||
files=None,
|
||||
as_json=False,
|
||||
|
||||
@@ -120,6 +120,7 @@ from documents.filters import PaperlessTaskFilterSet
|
||||
from documents.filters import ShareLinkFilterSet
|
||||
from documents.filters import StoragePathFilterSet
|
||||
from documents.filters import TagFilterSet
|
||||
from documents.mail import EmailAttachment
|
||||
from documents.mail import send_email
|
||||
from documents.matching import match_correspondents
|
||||
from documents.matching import match_document_types
|
||||
@@ -1216,12 +1217,28 @@ class DocumentViewSet(
|
||||
return HttpResponseForbidden("Insufficient permissions")
|
||||
|
||||
try:
|
||||
attachments: list[EmailAttachment] = []
|
||||
for doc in documents:
|
||||
attachment_path = (
|
||||
doc.archive_path
|
||||
if use_archive_version and doc.has_archive_version
|
||||
else doc.source_path
|
||||
)
|
||||
attachments.append(
|
||||
EmailAttachment(
|
||||
path=attachment_path,
|
||||
mime_type=doc.mime_type,
|
||||
friendly_name=doc.get_public_filename(
|
||||
archive=use_archive_version and doc.has_archive_version,
|
||||
),
|
||||
),
|
||||
)
|
||||
|
||||
send_email(
|
||||
subject=subject,
|
||||
body=message,
|
||||
to=addresses,
|
||||
attachments=documents,
|
||||
use_archive=use_archive_version,
|
||||
attachments=attachments,
|
||||
)
|
||||
|
||||
logger.debug(
|
||||
@@ -1863,7 +1880,7 @@ class SearchAutoCompleteView(GenericAPIView):
|
||||
user = self.request.user if hasattr(self.request, "user") else None
|
||||
|
||||
if "term" in request.query_params:
|
||||
term = request.query_params["term"]
|
||||
term = request.query_params["term"].strip()
|
||||
else:
|
||||
return HttpResponseBadRequest("Term required")
|
||||
|
||||
|
||||
@@ -2,8 +2,8 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: paperless-ngx\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2025-10-28 18:06+0000\n"
|
||||
"PO-Revision-Date: 2025-10-28 18:07\n"
|
||||
"POT-Creation-Date: 2025-11-14 16:09+0000\n"
|
||||
"PO-Revision-Date: 2025-11-14 16:11\n"
|
||||
"Last-Translator: \n"
|
||||
"Language-Team: Afrikaans\n"
|
||||
"Language: af_ZA\n"
|
||||
@@ -21,39 +21,39 @@ msgstr ""
|
||||
msgid "Documents"
|
||||
msgstr "Dokumente"
|
||||
|
||||
#: documents/filters.py:392
|
||||
#: documents/filters.py:395
|
||||
msgid "Value must be valid JSON."
|
||||
msgstr "Waarde moet geldige JSON wees."
|
||||
|
||||
#: documents/filters.py:411
|
||||
#: documents/filters.py:414
|
||||
msgid "Invalid custom field query expression"
|
||||
msgstr "Ongeldige gepasmaakte veldnavraaguitdrukking"
|
||||
|
||||
#: documents/filters.py:421
|
||||
#: documents/filters.py:424
|
||||
msgid "Invalid expression list. Must be nonempty."
|
||||
msgstr "Ongeldige uitdrukking lys. Moet nie leeg wees nie."
|
||||
|
||||
#: documents/filters.py:442
|
||||
#: documents/filters.py:445
|
||||
msgid "Invalid logical operator {op!r}"
|
||||
msgstr "Ongeldige logiese uitdrukking {op!r}"
|
||||
|
||||
#: documents/filters.py:456
|
||||
#: documents/filters.py:459
|
||||
msgid "Maximum number of query conditions exceeded."
|
||||
msgstr ""
|
||||
|
||||
#: documents/filters.py:521
|
||||
#: documents/filters.py:524
|
||||
msgid "{name!r} is not a valid custom field."
|
||||
msgstr ""
|
||||
|
||||
#: documents/filters.py:558
|
||||
#: documents/filters.py:561
|
||||
msgid "{data_type} does not support query expr {expr!r}."
|
||||
msgstr ""
|
||||
|
||||
#: documents/filters.py:666 documents/models.py:135
|
||||
#: documents/filters.py:669 documents/models.py:135
|
||||
msgid "Maximum nesting depth exceeded."
|
||||
msgstr ""
|
||||
|
||||
#: documents/filters.py:851
|
||||
#: documents/filters.py:854
|
||||
msgid "Custom field not found"
|
||||
msgstr ""
|
||||
|
||||
|
||||
@@ -2,8 +2,8 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: paperless-ngx\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2025-10-28 18:06+0000\n"
|
||||
"PO-Revision-Date: 2025-10-28 18:07\n"
|
||||
"POT-Creation-Date: 2025-11-14 16:09+0000\n"
|
||||
"PO-Revision-Date: 2025-11-14 16:11\n"
|
||||
"Last-Translator: \n"
|
||||
"Language-Team: Arabic\n"
|
||||
"Language: ar_SA\n"
|
||||
@@ -21,39 +21,39 @@ msgstr ""
|
||||
msgid "Documents"
|
||||
msgstr "المستندات"
|
||||
|
||||
#: documents/filters.py:392
|
||||
#: documents/filters.py:395
|
||||
msgid "Value must be valid JSON."
|
||||
msgstr "يجب أن تكون القيمة JSON."
|
||||
|
||||
#: documents/filters.py:411
|
||||
#: documents/filters.py:414
|
||||
msgid "Invalid custom field query expression"
|
||||
msgstr ""
|
||||
|
||||
#: documents/filters.py:421
|
||||
#: documents/filters.py:424
|
||||
msgid "Invalid expression list. Must be nonempty."
|
||||
msgstr ""
|
||||
|
||||
#: documents/filters.py:442
|
||||
#: documents/filters.py:445
|
||||
msgid "Invalid logical operator {op!r}"
|
||||
msgstr ""
|
||||
|
||||
#: documents/filters.py:456
|
||||
#: documents/filters.py:459
|
||||
msgid "Maximum number of query conditions exceeded."
|
||||
msgstr "تجاوز الحد الأقصى لعدد شروط الاستعلام."
|
||||
|
||||
#: documents/filters.py:521
|
||||
#: documents/filters.py:524
|
||||
msgid "{name!r} is not a valid custom field."
|
||||
msgstr "{name!r} حقل مخصص غير صالح."
|
||||
|
||||
#: documents/filters.py:558
|
||||
#: documents/filters.py:561
|
||||
msgid "{data_type} does not support query expr {expr!r}."
|
||||
msgstr ""
|
||||
|
||||
#: documents/filters.py:666 documents/models.py:135
|
||||
#: documents/filters.py:669 documents/models.py:135
|
||||
msgid "Maximum nesting depth exceeded."
|
||||
msgstr ""
|
||||
|
||||
#: documents/filters.py:851
|
||||
#: documents/filters.py:854
|
||||
msgid "Custom field not found"
|
||||
msgstr "لم يتم العثور على حقل مخصص"
|
||||
|
||||
|
||||
@@ -2,8 +2,8 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: paperless-ngx\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2025-10-28 18:06+0000\n"
|
||||
"PO-Revision-Date: 2025-10-28 18:07\n"
|
||||
"POT-Creation-Date: 2025-11-14 16:09+0000\n"
|
||||
"PO-Revision-Date: 2025-11-14 16:11\n"
|
||||
"Last-Translator: \n"
|
||||
"Language-Team: Belarusian\n"
|
||||
"Language: be_BY\n"
|
||||
@@ -21,39 +21,39 @@ msgstr ""
|
||||
msgid "Documents"
|
||||
msgstr "Дакументы"
|
||||
|
||||
#: documents/filters.py:392
|
||||
#: documents/filters.py:395
|
||||
msgid "Value must be valid JSON."
|
||||
msgstr ""
|
||||
|
||||
#: documents/filters.py:411
|
||||
#: documents/filters.py:414
|
||||
msgid "Invalid custom field query expression"
|
||||
msgstr ""
|
||||
|
||||
#: documents/filters.py:421
|
||||
#: documents/filters.py:424
|
||||
msgid "Invalid expression list. Must be nonempty."
|
||||
msgstr ""
|
||||
|
||||
#: documents/filters.py:442
|
||||
#: documents/filters.py:445
|
||||
msgid "Invalid logical operator {op!r}"
|
||||
msgstr ""
|
||||
|
||||
#: documents/filters.py:456
|
||||
#: documents/filters.py:459
|
||||
msgid "Maximum number of query conditions exceeded."
|
||||
msgstr ""
|
||||
|
||||
#: documents/filters.py:521
|
||||
#: documents/filters.py:524
|
||||
msgid "{name!r} is not a valid custom field."
|
||||
msgstr ""
|
||||
|
||||
#: documents/filters.py:558
|
||||
#: documents/filters.py:561
|
||||
msgid "{data_type} does not support query expr {expr!r}."
|
||||
msgstr ""
|
||||
|
||||
#: documents/filters.py:666 documents/models.py:135
|
||||
#: documents/filters.py:669 documents/models.py:135
|
||||
msgid "Maximum nesting depth exceeded."
|
||||
msgstr ""
|
||||
|
||||
#: documents/filters.py:851
|
||||
#: documents/filters.py:854
|
||||
msgid "Custom field not found"
|
||||
msgstr ""
|
||||
|
||||
|
||||
@@ -2,8 +2,8 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: paperless-ngx\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2025-10-28 18:06+0000\n"
|
||||
"PO-Revision-Date: 2025-10-28 18:07\n"
|
||||
"POT-Creation-Date: 2025-11-14 16:09+0000\n"
|
||||
"PO-Revision-Date: 2025-11-14 16:11\n"
|
||||
"Last-Translator: \n"
|
||||
"Language-Team: Bulgarian\n"
|
||||
"Language: bg_BG\n"
|
||||
@@ -21,39 +21,39 @@ msgstr ""
|
||||
msgid "Documents"
|
||||
msgstr "Документи"
|
||||
|
||||
#: documents/filters.py:392
|
||||
#: documents/filters.py:395
|
||||
msgid "Value must be valid JSON."
|
||||
msgstr "Стойността трябва да е валидна JSON."
|
||||
|
||||
#: documents/filters.py:411
|
||||
#: documents/filters.py:414
|
||||
msgid "Invalid custom field query expression"
|
||||
msgstr "Невалидна заявка на персонализираното полето"
|
||||
|
||||
#: documents/filters.py:421
|
||||
#: documents/filters.py:424
|
||||
msgid "Invalid expression list. Must be nonempty."
|
||||
msgstr "Списък с невалиден израз. Не може да е празно."
|
||||
|
||||
#: documents/filters.py:442
|
||||
#: documents/filters.py:445
|
||||
msgid "Invalid logical operator {op!r}"
|
||||
msgstr "Невалиден логически оператор {op!r}"
|
||||
|
||||
#: documents/filters.py:456
|
||||
#: documents/filters.py:459
|
||||
msgid "Maximum number of query conditions exceeded."
|
||||
msgstr "Надвишен е максимален брой за заявки."
|
||||
|
||||
#: documents/filters.py:521
|
||||
#: documents/filters.py:524
|
||||
msgid "{name!r} is not a valid custom field."
|
||||
msgstr "{name!r} не е валидно персонализирано поле."
|
||||
|
||||
#: documents/filters.py:558
|
||||
#: documents/filters.py:561
|
||||
msgid "{data_type} does not support query expr {expr!r}."
|
||||
msgstr "{data_type} не поддържа заявка expr {expr!r}."
|
||||
|
||||
#: documents/filters.py:666 documents/models.py:135
|
||||
#: documents/filters.py:669 documents/models.py:135
|
||||
msgid "Maximum nesting depth exceeded."
|
||||
msgstr "Надвишена е максималната дълбочина на вмъкване."
|
||||
|
||||
#: documents/filters.py:851
|
||||
#: documents/filters.py:854
|
||||
msgid "Custom field not found"
|
||||
msgstr "Персонализирано поле не е намерено"
|
||||
|
||||
|
||||
@@ -2,8 +2,8 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: paperless-ngx\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2025-10-28 18:06+0000\n"
|
||||
"PO-Revision-Date: 2025-11-04 12:15\n"
|
||||
"POT-Creation-Date: 2025-11-14 16:09+0000\n"
|
||||
"PO-Revision-Date: 2025-11-14 16:11\n"
|
||||
"Last-Translator: \n"
|
||||
"Language-Team: Catalan\n"
|
||||
"Language: ca_ES\n"
|
||||
@@ -21,39 +21,39 @@ msgstr ""
|
||||
msgid "Documents"
|
||||
msgstr "Documents "
|
||||
|
||||
#: documents/filters.py:392
|
||||
#: documents/filters.py:395
|
||||
msgid "Value must be valid JSON."
|
||||
msgstr "Valor ha de ser un JSON valid."
|
||||
|
||||
#: documents/filters.py:411
|
||||
#: documents/filters.py:414
|
||||
msgid "Invalid custom field query expression"
|
||||
msgstr "Expressió de camp de consulta invàlid"
|
||||
|
||||
#: documents/filters.py:421
|
||||
#: documents/filters.py:424
|
||||
msgid "Invalid expression list. Must be nonempty."
|
||||
msgstr "Expressió de llista invàlida. No ha d'estar buida."
|
||||
|
||||
#: documents/filters.py:442
|
||||
#: documents/filters.py:445
|
||||
msgid "Invalid logical operator {op!r}"
|
||||
msgstr "Invàlid operand lògic {op!r}"
|
||||
|
||||
#: documents/filters.py:456
|
||||
#: documents/filters.py:459
|
||||
msgid "Maximum number of query conditions exceeded."
|
||||
msgstr "Condicions de consulta excedits."
|
||||
|
||||
#: documents/filters.py:521
|
||||
#: documents/filters.py:524
|
||||
msgid "{name!r} is not a valid custom field."
|
||||
msgstr "{name!r} no és un camp personalitzat vàlid."
|
||||
|
||||
#: documents/filters.py:558
|
||||
#: documents/filters.py:561
|
||||
msgid "{data_type} does not support query expr {expr!r}."
|
||||
msgstr "{data_type} no suporta expressió de consulta {expr!r}."
|
||||
|
||||
#: documents/filters.py:666 documents/models.py:135
|
||||
#: documents/filters.py:669 documents/models.py:135
|
||||
msgid "Maximum nesting depth exceeded."
|
||||
msgstr "Màxima profunditat anidada excedida."
|
||||
|
||||
#: documents/filters.py:851
|
||||
#: documents/filters.py:854
|
||||
msgid "Custom field not found"
|
||||
msgstr "Camp personalitzat no trobat"
|
||||
|
||||
|
||||
@@ -2,8 +2,8 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: paperless-ngx\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2025-10-28 18:06+0000\n"
|
||||
"PO-Revision-Date: 2025-10-28 18:07\n"
|
||||
"POT-Creation-Date: 2025-11-14 16:09+0000\n"
|
||||
"PO-Revision-Date: 2025-11-14 16:11\n"
|
||||
"Last-Translator: \n"
|
||||
"Language-Team: Czech\n"
|
||||
"Language: cs_CZ\n"
|
||||
@@ -21,39 +21,39 @@ msgstr ""
|
||||
msgid "Documents"
|
||||
msgstr "Dokumenty"
|
||||
|
||||
#: documents/filters.py:392
|
||||
#: documents/filters.py:395
|
||||
msgid "Value must be valid JSON."
|
||||
msgstr "Hodnota musí být platný JSON."
|
||||
|
||||
#: documents/filters.py:411
|
||||
#: documents/filters.py:414
|
||||
msgid "Invalid custom field query expression"
|
||||
msgstr "Neplatný výraz dotazu na vlastní pole"
|
||||
|
||||
#: documents/filters.py:421
|
||||
#: documents/filters.py:424
|
||||
msgid "Invalid expression list. Must be nonempty."
|
||||
msgstr "Neplatný seznam výrazů. Nesmí být prázdný."
|
||||
|
||||
#: documents/filters.py:442
|
||||
#: documents/filters.py:445
|
||||
msgid "Invalid logical operator {op!r}"
|
||||
msgstr "Neplatný logický operátor {op!r}"
|
||||
|
||||
#: documents/filters.py:456
|
||||
#: documents/filters.py:459
|
||||
msgid "Maximum number of query conditions exceeded."
|
||||
msgstr "Překročen maximální počet podmínek dotazu."
|
||||
|
||||
#: documents/filters.py:521
|
||||
#: documents/filters.py:524
|
||||
msgid "{name!r} is not a valid custom field."
|
||||
msgstr "{name!r} není platné vlastní pole."
|
||||
|
||||
#: documents/filters.py:558
|
||||
#: documents/filters.py:561
|
||||
msgid "{data_type} does not support query expr {expr!r}."
|
||||
msgstr "{data_type} nepodporuje výraz dotazu {expr!r}."
|
||||
|
||||
#: documents/filters.py:666 documents/models.py:135
|
||||
#: documents/filters.py:669 documents/models.py:135
|
||||
msgid "Maximum nesting depth exceeded."
|
||||
msgstr "Překročena maximální hloubka větvení."
|
||||
|
||||
#: documents/filters.py:851
|
||||
#: documents/filters.py:854
|
||||
msgid "Custom field not found"
|
||||
msgstr "Vlastní pole nebylo nalezeno"
|
||||
|
||||
|
||||
@@ -2,8 +2,8 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: paperless-ngx\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2025-10-28 18:06+0000\n"
|
||||
"PO-Revision-Date: 2025-10-28 18:07\n"
|
||||
"POT-Creation-Date: 2025-11-14 16:09+0000\n"
|
||||
"PO-Revision-Date: 2025-11-14 16:11\n"
|
||||
"Last-Translator: \n"
|
||||
"Language-Team: Danish\n"
|
||||
"Language: da_DK\n"
|
||||
@@ -21,39 +21,39 @@ msgstr ""
|
||||
msgid "Documents"
|
||||
msgstr "Dokumenter"
|
||||
|
||||
#: documents/filters.py:392
|
||||
#: documents/filters.py:395
|
||||
msgid "Value must be valid JSON."
|
||||
msgstr "Værdien skal være gyldig JSON."
|
||||
|
||||
#: documents/filters.py:411
|
||||
#: documents/filters.py:414
|
||||
msgid "Invalid custom field query expression"
|
||||
msgstr "Ugyldigt tilpasset feltforespørgselsudtryk"
|
||||
|
||||
#: documents/filters.py:421
|
||||
#: documents/filters.py:424
|
||||
msgid "Invalid expression list. Must be nonempty."
|
||||
msgstr "Ugyldig udtryksliste. Må ikke være tom."
|
||||
|
||||
#: documents/filters.py:442
|
||||
#: documents/filters.py:445
|
||||
msgid "Invalid logical operator {op!r}"
|
||||
msgstr "Ugyldig logisk operatør {op!r}"
|
||||
|
||||
#: documents/filters.py:456
|
||||
#: documents/filters.py:459
|
||||
msgid "Maximum number of query conditions exceeded."
|
||||
msgstr "Maksimalt antal forespørgselsbetingelser overskredet."
|
||||
|
||||
#: documents/filters.py:521
|
||||
#: documents/filters.py:524
|
||||
msgid "{name!r} is not a valid custom field."
|
||||
msgstr "{name!r} er ikke et gyldigt tilpasset felt."
|
||||
|
||||
#: documents/filters.py:558
|
||||
#: documents/filters.py:561
|
||||
msgid "{data_type} does not support query expr {expr!r}."
|
||||
msgstr "{data_type} understøtter ikke forespørgsel expr {expr!r}."
|
||||
|
||||
#: documents/filters.py:666 documents/models.py:135
|
||||
#: documents/filters.py:669 documents/models.py:135
|
||||
msgid "Maximum nesting depth exceeded."
|
||||
msgstr "Maksimal indlejringsdybde overskredet."
|
||||
|
||||
#: documents/filters.py:851
|
||||
#: documents/filters.py:854
|
||||
msgid "Custom field not found"
|
||||
msgstr "Tilpasset felt ikke fundet"
|
||||
|
||||
|
||||
@@ -2,8 +2,8 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: paperless-ngx\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2025-10-28 18:06+0000\n"
|
||||
"PO-Revision-Date: 2025-11-06 00:35\n"
|
||||
"POT-Creation-Date: 2025-11-14 16:09+0000\n"
|
||||
"PO-Revision-Date: 2025-11-14 16:11\n"
|
||||
"Last-Translator: \n"
|
||||
"Language-Team: German\n"
|
||||
"Language: de_DE\n"
|
||||
@@ -21,39 +21,39 @@ msgstr ""
|
||||
msgid "Documents"
|
||||
msgstr "Dokumente"
|
||||
|
||||
#: documents/filters.py:392
|
||||
#: documents/filters.py:395
|
||||
msgid "Value must be valid JSON."
|
||||
msgstr "Wert muss gültiges JSON sein."
|
||||
|
||||
#: documents/filters.py:411
|
||||
#: documents/filters.py:414
|
||||
msgid "Invalid custom field query expression"
|
||||
msgstr "Ungültiger benutzerdefinierter Feldabfrageausdruck"
|
||||
|
||||
#: documents/filters.py:421
|
||||
#: documents/filters.py:424
|
||||
msgid "Invalid expression list. Must be nonempty."
|
||||
msgstr "Ungültige Ausdrucksliste. Darf nicht leer sein."
|
||||
|
||||
#: documents/filters.py:442
|
||||
#: documents/filters.py:445
|
||||
msgid "Invalid logical operator {op!r}"
|
||||
msgstr "Ungültiger logischer Operator {op!r}"
|
||||
|
||||
#: documents/filters.py:456
|
||||
#: documents/filters.py:459
|
||||
msgid "Maximum number of query conditions exceeded."
|
||||
msgstr "Maximale Anzahl an Abfragebedingungen überschritten."
|
||||
|
||||
#: documents/filters.py:521
|
||||
#: documents/filters.py:524
|
||||
msgid "{name!r} is not a valid custom field."
|
||||
msgstr "{name!r} ist kein gültiges benutzerdefiniertes Feld."
|
||||
|
||||
#: documents/filters.py:558
|
||||
#: documents/filters.py:561
|
||||
msgid "{data_type} does not support query expr {expr!r}."
|
||||
msgstr "{data_type} unterstützt den Abfrageausdruck {expr!r} nicht."
|
||||
|
||||
#: documents/filters.py:666 documents/models.py:135
|
||||
#: documents/filters.py:669 documents/models.py:135
|
||||
msgid "Maximum nesting depth exceeded."
|
||||
msgstr "Maximale Verschachtelungstiefe überschritten."
|
||||
|
||||
#: documents/filters.py:851
|
||||
#: documents/filters.py:854
|
||||
msgid "Custom field not found"
|
||||
msgstr "Benutzerdefiniertes Feld nicht gefunden"
|
||||
|
||||
|
||||
@@ -2,8 +2,8 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: paperless-ngx\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2025-10-28 18:06+0000\n"
|
||||
"PO-Revision-Date: 2025-10-28 18:07\n"
|
||||
"POT-Creation-Date: 2025-11-14 16:09+0000\n"
|
||||
"PO-Revision-Date: 2025-11-14 16:11\n"
|
||||
"Last-Translator: \n"
|
||||
"Language-Team: Greek\n"
|
||||
"Language: el_GR\n"
|
||||
@@ -21,39 +21,39 @@ msgstr ""
|
||||
msgid "Documents"
|
||||
msgstr "Έγγραφα"
|
||||
|
||||
#: documents/filters.py:392
|
||||
#: documents/filters.py:395
|
||||
msgid "Value must be valid JSON."
|
||||
msgstr "Η τιμή πρέπει να είναι σε έγκυρη μορφή JSON."
|
||||
|
||||
#: documents/filters.py:411
|
||||
#: documents/filters.py:414
|
||||
msgid "Invalid custom field query expression"
|
||||
msgstr "Μη έγκυρη έκφραση προσαρμοσμένου ερωτήματος πεδίου"
|
||||
|
||||
#: documents/filters.py:421
|
||||
#: documents/filters.py:424
|
||||
msgid "Invalid expression list. Must be nonempty."
|
||||
msgstr "Μη έγκυρη λίστα έκφρασης. Πρέπει να είναι μη κενή."
|
||||
|
||||
#: documents/filters.py:442
|
||||
#: documents/filters.py:445
|
||||
msgid "Invalid logical operator {op!r}"
|
||||
msgstr "Μη έγκυρος λογικός τελεστής {op!r}"
|
||||
|
||||
#: documents/filters.py:456
|
||||
#: documents/filters.py:459
|
||||
msgid "Maximum number of query conditions exceeded."
|
||||
msgstr "Υπέρβαση μέγιστου αριθμού συνθηκών ερωτήματος."
|
||||
|
||||
#: documents/filters.py:521
|
||||
#: documents/filters.py:524
|
||||
msgid "{name!r} is not a valid custom field."
|
||||
msgstr "Το προσαρμοσμένο πεδίο {name!r} δεν είναι ένα έγκυρο."
|
||||
|
||||
#: documents/filters.py:558
|
||||
#: documents/filters.py:561
|
||||
msgid "{data_type} does not support query expr {expr!r}."
|
||||
msgstr "Το {data_type} δεν υποστηρίζει το ερώτημα expr {expr!r}s."
|
||||
|
||||
#: documents/filters.py:666 documents/models.py:135
|
||||
#: documents/filters.py:669 documents/models.py:135
|
||||
msgid "Maximum nesting depth exceeded."
|
||||
msgstr "Υπέρβαση μέγιστου βάθους εμφώλευσης."
|
||||
|
||||
#: documents/filters.py:851
|
||||
#: documents/filters.py:854
|
||||
msgid "Custom field not found"
|
||||
msgstr "Το προσαρμοσμένο πεδίο δε βρέθηκε"
|
||||
|
||||
|
||||
@@ -2,7 +2,7 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: paperless-ngx\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2025-10-28 18:06+0000\n"
|
||||
"POT-Creation-Date: 2025-11-14 16:09+0000\n"
|
||||
"PO-Revision-Date: 2022-02-17 04:17\n"
|
||||
"Last-Translator: \n"
|
||||
"Language-Team: English\n"
|
||||
@@ -21,39 +21,39 @@ msgstr ""
|
||||
msgid "Documents"
|
||||
msgstr ""
|
||||
|
||||
#: documents/filters.py:392
|
||||
#: documents/filters.py:395
|
||||
msgid "Value must be valid JSON."
|
||||
msgstr ""
|
||||
|
||||
#: documents/filters.py:411
|
||||
#: documents/filters.py:414
|
||||
msgid "Invalid custom field query expression"
|
||||
msgstr ""
|
||||
|
||||
#: documents/filters.py:421
|
||||
#: documents/filters.py:424
|
||||
msgid "Invalid expression list. Must be nonempty."
|
||||
msgstr ""
|
||||
|
||||
#: documents/filters.py:442
|
||||
#: documents/filters.py:445
|
||||
msgid "Invalid logical operator {op!r}"
|
||||
msgstr ""
|
||||
|
||||
#: documents/filters.py:456
|
||||
#: documents/filters.py:459
|
||||
msgid "Maximum number of query conditions exceeded."
|
||||
msgstr ""
|
||||
|
||||
#: documents/filters.py:521
|
||||
#: documents/filters.py:524
|
||||
msgid "{name!r} is not a valid custom field."
|
||||
msgstr ""
|
||||
|
||||
#: documents/filters.py:558
|
||||
#: documents/filters.py:561
|
||||
msgid "{data_type} does not support query expr {expr!r}."
|
||||
msgstr ""
|
||||
|
||||
#: documents/filters.py:666 documents/models.py:135
|
||||
#: documents/filters.py:669 documents/models.py:135
|
||||
msgid "Maximum nesting depth exceeded."
|
||||
msgstr ""
|
||||
|
||||
#: documents/filters.py:851
|
||||
#: documents/filters.py:854
|
||||
msgid "Custom field not found"
|
||||
msgstr ""
|
||||
|
||||
|
||||
@@ -2,8 +2,8 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: paperless-ngx\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2025-10-28 18:06+0000\n"
|
||||
"PO-Revision-Date: 2025-10-28 18:08\n"
|
||||
"POT-Creation-Date: 2025-11-14 16:09+0000\n"
|
||||
"PO-Revision-Date: 2025-11-14 16:11\n"
|
||||
"Last-Translator: \n"
|
||||
"Language-Team: Spanish\n"
|
||||
"Language: es_ES\n"
|
||||
@@ -21,39 +21,39 @@ msgstr ""
|
||||
msgid "Documents"
|
||||
msgstr "Documentos"
|
||||
|
||||
#: documents/filters.py:392
|
||||
#: documents/filters.py:395
|
||||
msgid "Value must be valid JSON."
|
||||
msgstr "El valor debe ser JSON válido."
|
||||
|
||||
#: documents/filters.py:411
|
||||
#: documents/filters.py:414
|
||||
msgid "Invalid custom field query expression"
|
||||
msgstr "Expresión de consulta de campo personalizado no válida"
|
||||
|
||||
#: documents/filters.py:421
|
||||
#: documents/filters.py:424
|
||||
msgid "Invalid expression list. Must be nonempty."
|
||||
msgstr "Lista de expresiones no válida. No debe estar vacía."
|
||||
|
||||
#: documents/filters.py:442
|
||||
#: documents/filters.py:445
|
||||
msgid "Invalid logical operator {op!r}"
|
||||
msgstr "Operador lógico inválido {op!r}"
|
||||
|
||||
#: documents/filters.py:456
|
||||
#: documents/filters.py:459
|
||||
msgid "Maximum number of query conditions exceeded."
|
||||
msgstr "Se ha superado el número máximo de condiciones de consulta."
|
||||
|
||||
#: documents/filters.py:521
|
||||
#: documents/filters.py:524
|
||||
msgid "{name!r} is not a valid custom field."
|
||||
msgstr "{nombre!r} no es un campo personalizado válido."
|
||||
|
||||
#: documents/filters.py:558
|
||||
#: documents/filters.py:561
|
||||
msgid "{data_type} does not support query expr {expr!r}."
|
||||
msgstr "{data_type} no admite la consulta expr {expr!r}."
|
||||
|
||||
#: documents/filters.py:666 documents/models.py:135
|
||||
#: documents/filters.py:669 documents/models.py:135
|
||||
msgid "Maximum nesting depth exceeded."
|
||||
msgstr "Profundidad máxima de nidificación superada."
|
||||
|
||||
#: documents/filters.py:851
|
||||
#: documents/filters.py:854
|
||||
msgid "Custom field not found"
|
||||
msgstr "Campo personalizado no encontrado"
|
||||
|
||||
|
||||
@@ -2,8 +2,8 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: paperless-ngx\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2025-10-28 18:06+0000\n"
|
||||
"PO-Revision-Date: 2025-10-28 18:07\n"
|
||||
"POT-Creation-Date: 2025-11-14 16:09+0000\n"
|
||||
"PO-Revision-Date: 2025-11-14 16:11\n"
|
||||
"Last-Translator: \n"
|
||||
"Language-Team: Estonian\n"
|
||||
"Language: et_EE\n"
|
||||
@@ -21,39 +21,39 @@ msgstr ""
|
||||
msgid "Documents"
|
||||
msgstr "Dokumendid"
|
||||
|
||||
#: documents/filters.py:392
|
||||
#: documents/filters.py:395
|
||||
msgid "Value must be valid JSON."
|
||||
msgstr "Väärtus peab olema lubatav JSON."
|
||||
|
||||
#: documents/filters.py:411
|
||||
#: documents/filters.py:414
|
||||
msgid "Invalid custom field query expression"
|
||||
msgstr "Vigane kohandatud välja päringu avaldis"
|
||||
|
||||
#: documents/filters.py:421
|
||||
#: documents/filters.py:424
|
||||
msgid "Invalid expression list. Must be nonempty."
|
||||
msgstr "Vigane avaldiste loend. Peab olema mittetühi."
|
||||
|
||||
#: documents/filters.py:442
|
||||
#: documents/filters.py:445
|
||||
msgid "Invalid logical operator {op!r}"
|
||||
msgstr "Vigane loogikaoperaator {op!r}"
|
||||
|
||||
#: documents/filters.py:456
|
||||
#: documents/filters.py:459
|
||||
msgid "Maximum number of query conditions exceeded."
|
||||
msgstr "Päringutingimuste suurim hulk on ületatud."
|
||||
|
||||
#: documents/filters.py:521
|
||||
#: documents/filters.py:524
|
||||
msgid "{name!r} is not a valid custom field."
|
||||
msgstr "{name!r} ei ole lubatud kohandatud väli."
|
||||
|
||||
#: documents/filters.py:558
|
||||
#: documents/filters.py:561
|
||||
msgid "{data_type} does not support query expr {expr!r}."
|
||||
msgstr "{data_type} ei toeta päringu avaldist {expr!r}."
|
||||
|
||||
#: documents/filters.py:666 documents/models.py:135
|
||||
#: documents/filters.py:669 documents/models.py:135
|
||||
msgid "Maximum nesting depth exceeded."
|
||||
msgstr "Suurim pesastamis sügavus ületatud."
|
||||
|
||||
#: documents/filters.py:851
|
||||
#: documents/filters.py:854
|
||||
msgid "Custom field not found"
|
||||
msgstr "Kohandatud välja ei leitud"
|
||||
|
||||
|
||||
@@ -2,8 +2,8 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: paperless-ngx\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2025-10-28 18:06+0000\n"
|
||||
"PO-Revision-Date: 2025-10-28 18:08\n"
|
||||
"POT-Creation-Date: 2025-11-14 16:09+0000\n"
|
||||
"PO-Revision-Date: 2025-11-14 16:11\n"
|
||||
"Last-Translator: \n"
|
||||
"Language-Team: Persian\n"
|
||||
"Language: fa_IR\n"
|
||||
@@ -21,39 +21,39 @@ msgstr ""
|
||||
msgid "Documents"
|
||||
msgstr "اسناد و مدارک"
|
||||
|
||||
#: documents/filters.py:392
|
||||
#: documents/filters.py:395
|
||||
msgid "Value must be valid JSON."
|
||||
msgstr "مقدار باید JSON معتبر باشد."
|
||||
|
||||
#: documents/filters.py:411
|
||||
#: documents/filters.py:414
|
||||
msgid "Invalid custom field query expression"
|
||||
msgstr "Invalid custom field query expression"
|
||||
|
||||
#: documents/filters.py:421
|
||||
#: documents/filters.py:424
|
||||
msgid "Invalid expression list. Must be nonempty."
|
||||
msgstr ""
|
||||
|
||||
#: documents/filters.py:442
|
||||
#: documents/filters.py:445
|
||||
msgid "Invalid logical operator {op!r}"
|
||||
msgstr ""
|
||||
|
||||
#: documents/filters.py:456
|
||||
#: documents/filters.py:459
|
||||
msgid "Maximum number of query conditions exceeded."
|
||||
msgstr "حداکثر تعداد شرایط پرس و جو از آن فراتر رفته است."
|
||||
|
||||
#: documents/filters.py:521
|
||||
#: documents/filters.py:524
|
||||
msgid "{name!r} is not a valid custom field."
|
||||
msgstr "{نام! R} یک زمینه سفارشی معتبر نیست."
|
||||
|
||||
#: documents/filters.py:558
|
||||
#: documents/filters.py:561
|
||||
msgid "{data_type} does not support query expr {expr!r}."
|
||||
msgstr ""
|
||||
|
||||
#: documents/filters.py:666 documents/models.py:135
|
||||
#: documents/filters.py:669 documents/models.py:135
|
||||
msgid "Maximum nesting depth exceeded."
|
||||
msgstr ""
|
||||
|
||||
#: documents/filters.py:851
|
||||
#: documents/filters.py:854
|
||||
msgid "Custom field not found"
|
||||
msgstr "زمینه سفارشی یافت نشد"
|
||||
|
||||
|
||||
@@ -2,8 +2,8 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: paperless-ngx\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2025-10-28 18:06+0000\n"
|
||||
"PO-Revision-Date: 2025-10-28 18:07\n"
|
||||
"POT-Creation-Date: 2025-11-14 16:09+0000\n"
|
||||
"PO-Revision-Date: 2025-11-14 16:11\n"
|
||||
"Last-Translator: \n"
|
||||
"Language-Team: Finnish\n"
|
||||
"Language: fi_FI\n"
|
||||
@@ -21,39 +21,39 @@ msgstr ""
|
||||
msgid "Documents"
|
||||
msgstr "Asiakirjat"
|
||||
|
||||
#: documents/filters.py:392
|
||||
#: documents/filters.py:395
|
||||
msgid "Value must be valid JSON."
|
||||
msgstr "Arvon on oltava kelvollista JSON:ia."
|
||||
|
||||
#: documents/filters.py:411
|
||||
#: documents/filters.py:414
|
||||
msgid "Invalid custom field query expression"
|
||||
msgstr ""
|
||||
|
||||
#: documents/filters.py:421
|
||||
#: documents/filters.py:424
|
||||
msgid "Invalid expression list. Must be nonempty."
|
||||
msgstr ""
|
||||
|
||||
#: documents/filters.py:442
|
||||
#: documents/filters.py:445
|
||||
msgid "Invalid logical operator {op!r}"
|
||||
msgstr ""
|
||||
|
||||
#: documents/filters.py:456
|
||||
#: documents/filters.py:459
|
||||
msgid "Maximum number of query conditions exceeded."
|
||||
msgstr ""
|
||||
|
||||
#: documents/filters.py:521
|
||||
#: documents/filters.py:524
|
||||
msgid "{name!r} is not a valid custom field."
|
||||
msgstr ""
|
||||
|
||||
#: documents/filters.py:558
|
||||
#: documents/filters.py:561
|
||||
msgid "{data_type} does not support query expr {expr!r}."
|
||||
msgstr ""
|
||||
|
||||
#: documents/filters.py:666 documents/models.py:135
|
||||
#: documents/filters.py:669 documents/models.py:135
|
||||
msgid "Maximum nesting depth exceeded."
|
||||
msgstr ""
|
||||
|
||||
#: documents/filters.py:851
|
||||
#: documents/filters.py:854
|
||||
msgid "Custom field not found"
|
||||
msgstr ""
|
||||
|
||||
|
||||
@@ -2,8 +2,8 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: paperless-ngx\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2025-10-28 18:06+0000\n"
|
||||
"PO-Revision-Date: 2025-11-06 12:14\n"
|
||||
"POT-Creation-Date: 2025-11-14 16:09+0000\n"
|
||||
"PO-Revision-Date: 2025-11-14 16:11\n"
|
||||
"Last-Translator: \n"
|
||||
"Language-Team: French\n"
|
||||
"Language: fr_FR\n"
|
||||
@@ -21,39 +21,39 @@ msgstr ""
|
||||
msgid "Documents"
|
||||
msgstr "Documents"
|
||||
|
||||
#: documents/filters.py:392
|
||||
#: documents/filters.py:395
|
||||
msgid "Value must be valid JSON."
|
||||
msgstr "La valeur doit être un JSON valide."
|
||||
|
||||
#: documents/filters.py:411
|
||||
#: documents/filters.py:414
|
||||
msgid "Invalid custom field query expression"
|
||||
msgstr "Requête de champ personnalisé invalide"
|
||||
|
||||
#: documents/filters.py:421
|
||||
#: documents/filters.py:424
|
||||
msgid "Invalid expression list. Must be nonempty."
|
||||
msgstr "Liste d’expressions invalide. Doit être non vide."
|
||||
|
||||
#: documents/filters.py:442
|
||||
#: documents/filters.py:445
|
||||
msgid "Invalid logical operator {op!r}"
|
||||
msgstr "Opérateur logique {op!r} invalide"
|
||||
|
||||
#: documents/filters.py:456
|
||||
#: documents/filters.py:459
|
||||
msgid "Maximum number of query conditions exceeded."
|
||||
msgstr "Nombre maximum de conditions de requête dépassé."
|
||||
|
||||
#: documents/filters.py:521
|
||||
#: documents/filters.py:524
|
||||
msgid "{name!r} is not a valid custom field."
|
||||
msgstr "{name!r} n'est pas un champ personnalisé valide."
|
||||
|
||||
#: documents/filters.py:558
|
||||
#: documents/filters.py:561
|
||||
msgid "{data_type} does not support query expr {expr!r}."
|
||||
msgstr "{data_type} ne supporte pas l'expression {expr!r}."
|
||||
|
||||
#: documents/filters.py:666 documents/models.py:135
|
||||
#: documents/filters.py:669 documents/models.py:135
|
||||
msgid "Maximum nesting depth exceeded."
|
||||
msgstr "Profondeur de récursion maximale dépassée."
|
||||
|
||||
#: documents/filters.py:851
|
||||
#: documents/filters.py:854
|
||||
msgid "Custom field not found"
|
||||
msgstr "Champ personnalisé non trouvé"
|
||||
|
||||
|
||||
@@ -2,8 +2,8 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: paperless-ngx\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2025-10-28 18:06+0000\n"
|
||||
"PO-Revision-Date: 2025-10-28 18:07\n"
|
||||
"POT-Creation-Date: 2025-11-14 16:09+0000\n"
|
||||
"PO-Revision-Date: 2025-11-14 16:11\n"
|
||||
"Last-Translator: \n"
|
||||
"Language-Team: Hebrew\n"
|
||||
"Language: he_IL\n"
|
||||
@@ -21,39 +21,39 @@ msgstr ""
|
||||
msgid "Documents"
|
||||
msgstr "מסמכים"
|
||||
|
||||
#: documents/filters.py:392
|
||||
#: documents/filters.py:395
|
||||
msgid "Value must be valid JSON."
|
||||
msgstr "ערך מוכרך להיות JSON תקין."
|
||||
|
||||
#: documents/filters.py:411
|
||||
#: documents/filters.py:414
|
||||
msgid "Invalid custom field query expression"
|
||||
msgstr "ביטוי שאילתה לא חוקי של שדה מותאם אישית"
|
||||
|
||||
#: documents/filters.py:421
|
||||
#: documents/filters.py:424
|
||||
msgid "Invalid expression list. Must be nonempty."
|
||||
msgstr "רשימת ביטויים לא חוקית. מוכרך לכלול ערך."
|
||||
|
||||
#: documents/filters.py:442
|
||||
#: documents/filters.py:445
|
||||
msgid "Invalid logical operator {op!r}"
|
||||
msgstr "סימן פעולה לוגית לא חוקי {op!r}"
|
||||
|
||||
#: documents/filters.py:456
|
||||
#: documents/filters.py:459
|
||||
msgid "Maximum number of query conditions exceeded."
|
||||
msgstr "חריגה ממספר תנאי השאילתה המרבי."
|
||||
|
||||
#: documents/filters.py:521
|
||||
#: documents/filters.py:524
|
||||
msgid "{name!r} is not a valid custom field."
|
||||
msgstr "{name!r} הוא לא שדה מותאם אישית חוקי."
|
||||
|
||||
#: documents/filters.py:558
|
||||
#: documents/filters.py:561
|
||||
msgid "{data_type} does not support query expr {expr!r}."
|
||||
msgstr "{data_type} לא תומך בביטוי שאילתה {expr!r}."
|
||||
|
||||
#: documents/filters.py:666 documents/models.py:135
|
||||
#: documents/filters.py:669 documents/models.py:135
|
||||
msgid "Maximum nesting depth exceeded."
|
||||
msgstr "חריגה מעומק הקינון המרבי."
|
||||
|
||||
#: documents/filters.py:851
|
||||
#: documents/filters.py:854
|
||||
msgid "Custom field not found"
|
||||
msgstr "שדה מותאם אישית לא נמצא"
|
||||
|
||||
|
||||
@@ -2,8 +2,8 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: paperless-ngx\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2025-10-28 18:06+0000\n"
|
||||
"PO-Revision-Date: 2025-10-28 18:07\n"
|
||||
"POT-Creation-Date: 2025-11-14 16:09+0000\n"
|
||||
"PO-Revision-Date: 2025-11-14 16:11\n"
|
||||
"Last-Translator: \n"
|
||||
"Language-Team: Croatian\n"
|
||||
"Language: hr_HR\n"
|
||||
@@ -21,39 +21,39 @@ msgstr ""
|
||||
msgid "Documents"
|
||||
msgstr "Dokumenti"
|
||||
|
||||
#: documents/filters.py:392
|
||||
#: documents/filters.py:395
|
||||
msgid "Value must be valid JSON."
|
||||
msgstr ""
|
||||
|
||||
#: documents/filters.py:411
|
||||
#: documents/filters.py:414
|
||||
msgid "Invalid custom field query expression"
|
||||
msgstr ""
|
||||
|
||||
#: documents/filters.py:421
|
||||
#: documents/filters.py:424
|
||||
msgid "Invalid expression list. Must be nonempty."
|
||||
msgstr ""
|
||||
|
||||
#: documents/filters.py:442
|
||||
#: documents/filters.py:445
|
||||
msgid "Invalid logical operator {op!r}"
|
||||
msgstr ""
|
||||
|
||||
#: documents/filters.py:456
|
||||
#: documents/filters.py:459
|
||||
msgid "Maximum number of query conditions exceeded."
|
||||
msgstr ""
|
||||
|
||||
#: documents/filters.py:521
|
||||
#: documents/filters.py:524
|
||||
msgid "{name!r} is not a valid custom field."
|
||||
msgstr ""
|
||||
|
||||
#: documents/filters.py:558
|
||||
#: documents/filters.py:561
|
||||
msgid "{data_type} does not support query expr {expr!r}."
|
||||
msgstr ""
|
||||
|
||||
#: documents/filters.py:666 documents/models.py:135
|
||||
#: documents/filters.py:669 documents/models.py:135
|
||||
msgid "Maximum nesting depth exceeded."
|
||||
msgstr ""
|
||||
|
||||
#: documents/filters.py:851
|
||||
#: documents/filters.py:854
|
||||
msgid "Custom field not found"
|
||||
msgstr ""
|
||||
|
||||
|
||||
@@ -2,8 +2,8 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: paperless-ngx\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2025-10-28 18:06+0000\n"
|
||||
"PO-Revision-Date: 2025-10-28 18:07\n"
|
||||
"POT-Creation-Date: 2025-11-14 16:09+0000\n"
|
||||
"PO-Revision-Date: 2025-11-14 16:11\n"
|
||||
"Last-Translator: \n"
|
||||
"Language-Team: Hungarian\n"
|
||||
"Language: hu_HU\n"
|
||||
@@ -21,39 +21,39 @@ msgstr ""
|
||||
msgid "Documents"
|
||||
msgstr "Dokumentumok"
|
||||
|
||||
#: documents/filters.py:392
|
||||
#: documents/filters.py:395
|
||||
msgid "Value must be valid JSON."
|
||||
msgstr "Érvényes JSON érték szükséges"
|
||||
msgstr "Érvényes JSON érték szükséges."
|
||||
|
||||
#: documents/filters.py:411
|
||||
#: documents/filters.py:414
|
||||
msgid "Invalid custom field query expression"
|
||||
msgstr "Érvénytelen egyéni mező lekérdezési kifejezés"
|
||||
|
||||
#: documents/filters.py:421
|
||||
#: documents/filters.py:424
|
||||
msgid "Invalid expression list. Must be nonempty."
|
||||
msgstr "Érvénytelen kifejezéslista. Nem lehet üres."
|
||||
|
||||
#: documents/filters.py:442
|
||||
#: documents/filters.py:445
|
||||
msgid "Invalid logical operator {op!r}"
|
||||
msgstr "Érvénytelen logikai operátor {op!r}"
|
||||
|
||||
#: documents/filters.py:456
|
||||
#: documents/filters.py:459
|
||||
msgid "Maximum number of query conditions exceeded."
|
||||
msgstr "Maximum lekérdezési feltételszám átlépve."
|
||||
|
||||
#: documents/filters.py:521
|
||||
#: documents/filters.py:524
|
||||
msgid "{name!r} is not a valid custom field."
|
||||
msgstr "{name!r} nem érvényes egyéni mező."
|
||||
|
||||
#: documents/filters.py:558
|
||||
#: documents/filters.py:561
|
||||
msgid "{data_type} does not support query expr {expr!r}."
|
||||
msgstr "{data_type} nem támogatja a(z) {expr!r} lekérdezési kifejezést."
|
||||
msgstr "A(z) {data_type} nem támogatja a {expr!r} kifejezés lekérdezést."
|
||||
|
||||
#: documents/filters.py:666 documents/models.py:135
|
||||
#: documents/filters.py:669 documents/models.py:135
|
||||
msgid "Maximum nesting depth exceeded."
|
||||
msgstr "Maximum beágyazási mélység túllépve."
|
||||
|
||||
#: documents/filters.py:851
|
||||
#: documents/filters.py:854
|
||||
msgid "Custom field not found"
|
||||
msgstr "Az egyéni mező nem található"
|
||||
|
||||
@@ -136,11 +136,11 @@ msgstr "címkék"
|
||||
|
||||
#: documents/models.py:123
|
||||
msgid "Cannot set itself as parent."
|
||||
msgstr ""
|
||||
msgstr "Nem állíthatja be magát szülőként."
|
||||
|
||||
#: documents/models.py:125
|
||||
msgid "Cannot set parent to a descendant."
|
||||
msgstr ""
|
||||
msgstr "Nem lehet szülőt beállítani egy leszármazotthoz."
|
||||
|
||||
#: documents/models.py:142 documents/models.py:190
|
||||
msgid "document type"
|
||||
@@ -758,7 +758,7 @@ msgstr "Válassz"
|
||||
|
||||
#: documents/models.py:795
|
||||
msgid "Long Text"
|
||||
msgstr ""
|
||||
msgstr "Hosszú szöveg"
|
||||
|
||||
#: documents/models.py:807
|
||||
msgid "data type"
|
||||
@@ -858,11 +858,11 @@ msgstr "ezekkel a címkékkel rendelkezik"
|
||||
|
||||
#: documents/models.py:1072
|
||||
msgid "has all of these tag(s)"
|
||||
msgstr ""
|
||||
msgstr "ezen címke(ék) mindegyikét tartalmazza"
|
||||
|
||||
#: documents/models.py:1079
|
||||
msgid "does not have these tag(s)"
|
||||
msgstr ""
|
||||
msgstr "nem tartalmazza ezt a címkét vagy címéket"
|
||||
|
||||
#: documents/models.py:1087
|
||||
msgid "has this document type"
|
||||
@@ -870,7 +870,7 @@ msgstr "ez a dokumentumtípusa"
|
||||
|
||||
#: documents/models.py:1094
|
||||
msgid "does not have these document type(s)"
|
||||
msgstr ""
|
||||
msgstr "nem rendelkezik dokumentumtípussal a"
|
||||
|
||||
#: documents/models.py:1102
|
||||
msgid "has this correspondent"
|
||||
@@ -878,23 +878,23 @@ msgstr "ez a levelezőpartner"
|
||||
|
||||
#: documents/models.py:1109
|
||||
msgid "does not have these correspondent(s)"
|
||||
msgstr ""
|
||||
msgstr "nincs ilyen levelezőpartner(ek).\""
|
||||
|
||||
#: documents/models.py:1117
|
||||
msgid "has this storage path"
|
||||
msgstr ""
|
||||
msgstr "rendelkezik ezzel a tárolási útvonallal"
|
||||
|
||||
#: documents/models.py:1124
|
||||
msgid "does not have these storage path(s)"
|
||||
msgstr ""
|
||||
msgstr "nem rendelkezik ezzel a tárolási útvonallal"
|
||||
|
||||
#: documents/models.py:1128
|
||||
msgid "filter custom field query"
|
||||
msgstr ""
|
||||
msgstr "egyéni mező a lekérdezés szűrésére"
|
||||
|
||||
#: documents/models.py:1131
|
||||
msgid "JSON-encoded custom field query expression."
|
||||
msgstr ""
|
||||
msgstr "JSON-kódolású egyéni mező lekérdezési kifejezés."
|
||||
|
||||
#: documents/models.py:1135
|
||||
msgid "schedule offset days"
|
||||
@@ -1038,7 +1038,7 @@ msgstr "cím hozzárendelése"
|
||||
|
||||
#: documents/models.py:1302
|
||||
msgid "Assign a document title, must be a Jinja2 template, see documentation."
|
||||
msgstr ""
|
||||
msgstr "Dokumentumcím hozzárendelése, amelynek Jinja2 sablonnak kell lennie, lásd a dokumentációt."
|
||||
|
||||
#: documents/models.py:1310 paperless_mail/models.py:274
|
||||
msgid "assign this tag"
|
||||
@@ -1225,20 +1225,20 @@ msgstr "Fájltípus %(type)s nem támogatott"
|
||||
#: documents/serialisers.py:1849
|
||||
#, python-format
|
||||
msgid "Custom field id must be an integer: %(id)s"
|
||||
msgstr ""
|
||||
msgstr "Az egyéni mező azonosítójának egész számnak kell lennie: %(id)s"
|
||||
|
||||
#: documents/serialisers.py:1856
|
||||
#, python-format
|
||||
msgid "Custom field with id %(id)s does not exist"
|
||||
msgstr ""
|
||||
msgstr "A(z) %(id)s azonosítójú egyéni mező nem létezik"
|
||||
|
||||
#: documents/serialisers.py:1873 documents/serialisers.py:1883
|
||||
msgid "Custom fields must be a list of integers or an object mapping ids to values."
|
||||
msgstr ""
|
||||
msgstr "Az egyéni mezőknek egész számok listájának vagy azonosítókat értékekhez rendelő objektumnak kell lenniük."
|
||||
|
||||
#: documents/serialisers.py:1878
|
||||
msgid "Some custom fields don't exist or were specified twice."
|
||||
msgstr ""
|
||||
msgstr "Néhány egyéni mező nem létezik, vagy kétszer lett megadva."
|
||||
|
||||
#: documents/serialisers.py:1993
|
||||
msgid "Invalid variable detected."
|
||||
|
||||
@@ -2,8 +2,8 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: paperless-ngx\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2025-10-28 18:06+0000\n"
|
||||
"PO-Revision-Date: 2025-10-28 18:07\n"
|
||||
"POT-Creation-Date: 2025-11-14 16:09+0000\n"
|
||||
"PO-Revision-Date: 2025-11-14 16:11\n"
|
||||
"Last-Translator: \n"
|
||||
"Language-Team: Indonesian\n"
|
||||
"Language: id_ID\n"
|
||||
@@ -21,39 +21,39 @@ msgstr ""
|
||||
msgid "Documents"
|
||||
msgstr "Dokumen"
|
||||
|
||||
#: documents/filters.py:392
|
||||
#: documents/filters.py:395
|
||||
msgid "Value must be valid JSON."
|
||||
msgstr "Nilai harus berupa JSON yang valid."
|
||||
|
||||
#: documents/filters.py:411
|
||||
#: documents/filters.py:414
|
||||
msgid "Invalid custom field query expression"
|
||||
msgstr "Ekspresi pencarian bidang khusus tidak valid"
|
||||
|
||||
#: documents/filters.py:421
|
||||
#: documents/filters.py:424
|
||||
msgid "Invalid expression list. Must be nonempty."
|
||||
msgstr "Daftar ekspresi tidak valid. Tidak boleh kosong."
|
||||
|
||||
#: documents/filters.py:442
|
||||
#: documents/filters.py:445
|
||||
msgid "Invalid logical operator {op!r}"
|
||||
msgstr "Operator logika {op!r} tidak valid"
|
||||
|
||||
#: documents/filters.py:456
|
||||
#: documents/filters.py:459
|
||||
msgid "Maximum number of query conditions exceeded."
|
||||
msgstr "Jumlah maksimal kondisi pencarian terlampaui."
|
||||
|
||||
#: documents/filters.py:521
|
||||
#: documents/filters.py:524
|
||||
msgid "{name!r} is not a valid custom field."
|
||||
msgstr "{name!r} bukan bidang khusus yang valid."
|
||||
|
||||
#: documents/filters.py:558
|
||||
#: documents/filters.py:561
|
||||
msgid "{data_type} does not support query expr {expr!r}."
|
||||
msgstr "{data_type} tidak mendukung ekspresi pencarian expr {expr!r}."
|
||||
|
||||
#: documents/filters.py:666 documents/models.py:135
|
||||
#: documents/filters.py:669 documents/models.py:135
|
||||
msgid "Maximum nesting depth exceeded."
|
||||
msgstr "Kedalaman susunan maksimal terlampaui."
|
||||
|
||||
#: documents/filters.py:851
|
||||
#: documents/filters.py:854
|
||||
msgid "Custom field not found"
|
||||
msgstr "Bidang khusus tidak ditemukan"
|
||||
|
||||
|
||||
@@ -2,8 +2,8 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: paperless-ngx\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2025-10-28 18:06+0000\n"
|
||||
"PO-Revision-Date: 2025-10-28 18:07\n"
|
||||
"POT-Creation-Date: 2025-11-14 16:09+0000\n"
|
||||
"PO-Revision-Date: 2025-11-14 16:11\n"
|
||||
"Last-Translator: \n"
|
||||
"Language-Team: Italian\n"
|
||||
"Language: it_IT\n"
|
||||
@@ -21,39 +21,39 @@ msgstr ""
|
||||
msgid "Documents"
|
||||
msgstr "Documenti"
|
||||
|
||||
#: documents/filters.py:392
|
||||
#: documents/filters.py:395
|
||||
msgid "Value must be valid JSON."
|
||||
msgstr "Il valore deve essere un JSON valido."
|
||||
|
||||
#: documents/filters.py:411
|
||||
#: documents/filters.py:414
|
||||
msgid "Invalid custom field query expression"
|
||||
msgstr "Campo personalizzato della query non valido"
|
||||
|
||||
#: documents/filters.py:421
|
||||
#: documents/filters.py:424
|
||||
msgid "Invalid expression list. Must be nonempty."
|
||||
msgstr "Elenco delle espressioni non valido. Deve essere non vuoto."
|
||||
|
||||
#: documents/filters.py:442
|
||||
#: documents/filters.py:445
|
||||
msgid "Invalid logical operator {op!r}"
|
||||
msgstr "Operatore logico non valido {op!r}"
|
||||
|
||||
#: documents/filters.py:456
|
||||
#: documents/filters.py:459
|
||||
msgid "Maximum number of query conditions exceeded."
|
||||
msgstr "Numero massimo delle condizioni della jQuery superato."
|
||||
|
||||
#: documents/filters.py:521
|
||||
#: documents/filters.py:524
|
||||
msgid "{name!r} is not a valid custom field."
|
||||
msgstr "{name!r} non è un campo personalizzato valido."
|
||||
|
||||
#: documents/filters.py:558
|
||||
#: documents/filters.py:561
|
||||
msgid "{data_type} does not support query expr {expr!r}."
|
||||
msgstr "{data_type} Non supporta la jQuery Expo {Expo!r}."
|
||||
|
||||
#: documents/filters.py:666 documents/models.py:135
|
||||
#: documents/filters.py:669 documents/models.py:135
|
||||
msgid "Maximum nesting depth exceeded."
|
||||
msgstr "Superata la profondità massima di nidificazione."
|
||||
|
||||
#: documents/filters.py:851
|
||||
#: documents/filters.py:854
|
||||
msgid "Custom field not found"
|
||||
msgstr "Campo personalizzato non trovato"
|
||||
|
||||
@@ -858,11 +858,11 @@ msgstr "ha questi tag(s)"
|
||||
|
||||
#: documents/models.py:1072
|
||||
msgid "has all of these tag(s)"
|
||||
msgstr ""
|
||||
msgstr "ha tutte queste etichette"
|
||||
|
||||
#: documents/models.py:1079
|
||||
msgid "does not have these tag(s)"
|
||||
msgstr ""
|
||||
msgstr "non ha queste etichette"
|
||||
|
||||
#: documents/models.py:1087
|
||||
msgid "has this document type"
|
||||
@@ -870,7 +870,7 @@ msgstr "ha questo tipo di documento"
|
||||
|
||||
#: documents/models.py:1094
|
||||
msgid "does not have these document type(s)"
|
||||
msgstr ""
|
||||
msgstr "non ha questi tipi di documento"
|
||||
|
||||
#: documents/models.py:1102
|
||||
msgid "has this correspondent"
|
||||
@@ -878,7 +878,7 @@ msgstr "ha questo corrispondente"
|
||||
|
||||
#: documents/models.py:1109
|
||||
msgid "does not have these correspondent(s)"
|
||||
msgstr ""
|
||||
msgstr "non ha questi corrispondenti"
|
||||
|
||||
#: documents/models.py:1117
|
||||
msgid "has this storage path"
|
||||
@@ -886,7 +886,7 @@ msgstr "ha questo percorso di archiviazione"
|
||||
|
||||
#: documents/models.py:1124
|
||||
msgid "does not have these storage path(s)"
|
||||
msgstr ""
|
||||
msgstr "non ha questo percorso di archiviazione"
|
||||
|
||||
#: documents/models.py:1128
|
||||
msgid "filter custom field query"
|
||||
@@ -898,7 +898,7 @@ msgstr ""
|
||||
|
||||
#: documents/models.py:1135
|
||||
msgid "schedule offset days"
|
||||
msgstr ""
|
||||
msgstr "giorni di offset della schedulazione"
|
||||
|
||||
#: documents/models.py:1138
|
||||
msgid "The number of days to offset the schedule trigger by."
|
||||
@@ -998,19 +998,19 @@ msgstr "corpo webhook"
|
||||
|
||||
#: documents/models.py:1253
|
||||
msgid "The body to send with the webhook URL if parameters not used."
|
||||
msgstr ""
|
||||
msgstr "Il corpo da inviare con l'URL del webhook se i parametri non vengono utilizzati."
|
||||
|
||||
#: documents/models.py:1257
|
||||
msgid "webhook headers"
|
||||
msgstr ""
|
||||
msgstr "header Webhook"
|
||||
|
||||
#: documents/models.py:1260
|
||||
msgid "The headers to send with the webhook URL."
|
||||
msgstr ""
|
||||
msgstr "Le intestazioni da inviare con l'URL del webhook."
|
||||
|
||||
#: documents/models.py:1265
|
||||
msgid "include document in webhook"
|
||||
msgstr ""
|
||||
msgstr "includi documento nel webhook"
|
||||
|
||||
#: documents/models.py:1276
|
||||
msgid "Assignment"
|
||||
@@ -1038,7 +1038,7 @@ msgstr "assegna titolo"
|
||||
|
||||
#: documents/models.py:1302
|
||||
msgid "Assign a document title, must be a Jinja2 template, see documentation."
|
||||
msgstr ""
|
||||
msgstr "Assegnare un titolo del documento, deve essere un modello Jinja2, vedere la documentazione."
|
||||
|
||||
#: documents/models.py:1310 paperless_mail/models.py:274
|
||||
msgid "assign this tag"
|
||||
@@ -1178,7 +1178,7 @@ msgstr "priorità"
|
||||
|
||||
#: documents/models.py:1534
|
||||
msgid "triggers"
|
||||
msgstr ""
|
||||
msgstr "trigger"
|
||||
|
||||
#: documents/models.py:1541
|
||||
msgid "actions"
|
||||
@@ -1202,11 +1202,11 @@ msgstr "data esecuzione"
|
||||
|
||||
#: documents/models.py:1579
|
||||
msgid "workflow run"
|
||||
msgstr ""
|
||||
msgstr "esecuzione del workflow"
|
||||
|
||||
#: documents/models.py:1580
|
||||
msgid "workflow runs"
|
||||
msgstr ""
|
||||
msgstr "esecuzione del workflow"
|
||||
|
||||
#: documents/serialisers.py:145
|
||||
#, python-format
|
||||
@@ -1225,20 +1225,20 @@ msgstr "Il tipo di file %(type)s non è supportato"
|
||||
#: documents/serialisers.py:1849
|
||||
#, python-format
|
||||
msgid "Custom field id must be an integer: %(id)s"
|
||||
msgstr ""
|
||||
msgstr "L'id del campo personalizzato deve essere un intero: %(id)s"
|
||||
|
||||
#: documents/serialisers.py:1856
|
||||
#, python-format
|
||||
msgid "Custom field with id %(id)s does not exist"
|
||||
msgstr ""
|
||||
msgstr "Il campo personalizzato con id %(id)s non esiste"
|
||||
|
||||
#: documents/serialisers.py:1873 documents/serialisers.py:1883
|
||||
msgid "Custom fields must be a list of integers or an object mapping ids to values."
|
||||
msgstr ""
|
||||
msgstr "I campi personalizzati devono essere un elenco di interi o un id di mappatura."
|
||||
|
||||
#: documents/serialisers.py:1878
|
||||
msgid "Some custom fields don't exist or were specified twice."
|
||||
msgstr ""
|
||||
msgstr "Alcuni campi personalizzati non esistono o sono stati specificati due volte."
|
||||
|
||||
#: documents/serialisers.py:1993
|
||||
msgid "Invalid variable detected."
|
||||
@@ -1482,7 +1482,7 @@ msgstr "Impossibile analizzare l'URI {value}, la posizione di rete o il percorso
|
||||
|
||||
#: documents/validators.py:36
|
||||
msgid "URI scheme '{parts.scheme}' is not allowed. Allowed schemes: {', '.join(allowed_schemes)}"
|
||||
msgstr ""
|
||||
msgstr "Schema URI '{parts.scheme}' non è consentito. Schemi consentiti: {', '.join(allowed_schemes)}"
|
||||
|
||||
#: documents/validators.py:45
|
||||
#, python-brace-format
|
||||
@@ -1599,7 +1599,7 @@ msgstr "Imposta il valore di ripiego DPI dell'immagine"
|
||||
|
||||
#: paperless/models.py:131
|
||||
msgid "Controls the unpaper cleaning"
|
||||
msgstr ""
|
||||
msgstr "Controlla la pulizia della carta"
|
||||
|
||||
#: paperless/models.py:138
|
||||
msgid "Enables deskew"
|
||||
@@ -1635,15 +1635,15 @@ msgstr "Logo applicazione"
|
||||
|
||||
#: paperless/models.py:197
|
||||
msgid "Enables barcode scanning"
|
||||
msgstr ""
|
||||
msgstr "Abilita scansione codici a barre"
|
||||
|
||||
#: paperless/models.py:203
|
||||
msgid "Enables barcode TIFF support"
|
||||
msgstr ""
|
||||
msgstr "Abilita il supporto TIFF del codice a barre"
|
||||
|
||||
#: paperless/models.py:209
|
||||
msgid "Sets the barcode string"
|
||||
msgstr ""
|
||||
msgstr "Imposta la stringa del barcode"
|
||||
|
||||
#: paperless/models.py:217
|
||||
msgid "Retains split pages"
|
||||
@@ -1659,11 +1659,11 @@ msgstr "Imposta il prefisso del codice a barre ASN"
|
||||
|
||||
#: paperless/models.py:237
|
||||
msgid "Sets the barcode upscale factor"
|
||||
msgstr ""
|
||||
msgstr "Imposta il fattore di ingrandimento del codice a barre"
|
||||
|
||||
#: paperless/models.py:244
|
||||
msgid "Sets the barcode DPI"
|
||||
msgstr ""
|
||||
msgstr "Imposta il DPI codice a barre"
|
||||
|
||||
#: paperless/models.py:251
|
||||
msgid "Sets the maximum pages for barcode"
|
||||
@@ -1675,7 +1675,7 @@ msgstr "Abilita tag del codice a barre"
|
||||
|
||||
#: paperless/models.py:264
|
||||
msgid "Sets the tag barcode mapping"
|
||||
msgstr ""
|
||||
msgstr "Imposta la mappatura dei codici a barre dei tag"
|
||||
|
||||
#: paperless/models.py:269
|
||||
msgid "paperless application settings"
|
||||
|
||||
@@ -2,8 +2,8 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: paperless-ngx\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2025-10-28 18:06+0000\n"
|
||||
"PO-Revision-Date: 2025-10-28 18:07\n"
|
||||
"POT-Creation-Date: 2025-11-14 16:09+0000\n"
|
||||
"PO-Revision-Date: 2025-11-14 16:11\n"
|
||||
"Last-Translator: \n"
|
||||
"Language-Team: Japanese\n"
|
||||
"Language: ja_JP\n"
|
||||
@@ -21,39 +21,39 @@ msgstr ""
|
||||
msgid "Documents"
|
||||
msgstr "ドキュメント"
|
||||
|
||||
#: documents/filters.py:392
|
||||
#: documents/filters.py:395
|
||||
msgid "Value must be valid JSON."
|
||||
msgstr "値は有効なJSONである必要があります。"
|
||||
|
||||
#: documents/filters.py:411
|
||||
#: documents/filters.py:414
|
||||
msgid "Invalid custom field query expression"
|
||||
msgstr "無効なカスタムフィールドクエリ式"
|
||||
|
||||
#: documents/filters.py:421
|
||||
#: documents/filters.py:424
|
||||
msgid "Invalid expression list. Must be nonempty."
|
||||
msgstr "無効な式リストです。空であってはなりません。"
|
||||
|
||||
#: documents/filters.py:442
|
||||
#: documents/filters.py:445
|
||||
msgid "Invalid logical operator {op!r}"
|
||||
msgstr "無効な論理演算子 {op!r}"
|
||||
|
||||
#: documents/filters.py:456
|
||||
#: documents/filters.py:459
|
||||
msgid "Maximum number of query conditions exceeded."
|
||||
msgstr "クエリ条件の最大数を超えました。"
|
||||
|
||||
#: documents/filters.py:521
|
||||
#: documents/filters.py:524
|
||||
msgid "{name!r} is not a valid custom field."
|
||||
msgstr "{name!r} は有効なカスタムフィールドではありません。"
|
||||
|
||||
#: documents/filters.py:558
|
||||
#: documents/filters.py:561
|
||||
msgid "{data_type} does not support query expr {expr!r}."
|
||||
msgstr "{data_type} はクエリ expr {expr!r} をサポートしていません。"
|
||||
|
||||
#: documents/filters.py:666 documents/models.py:135
|
||||
#: documents/filters.py:669 documents/models.py:135
|
||||
msgid "Maximum nesting depth exceeded."
|
||||
msgstr "最大ネストの深さを超えました。"
|
||||
|
||||
#: documents/filters.py:851
|
||||
#: documents/filters.py:854
|
||||
msgid "Custom field not found"
|
||||
msgstr "カスタムフィールドが見つかりません"
|
||||
|
||||
|
||||
@@ -2,8 +2,8 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: paperless-ngx\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2025-10-28 18:06+0000\n"
|
||||
"PO-Revision-Date: 2025-10-28 18:07\n"
|
||||
"POT-Creation-Date: 2025-11-14 16:09+0000\n"
|
||||
"PO-Revision-Date: 2025-11-14 16:11\n"
|
||||
"Last-Translator: \n"
|
||||
"Language-Team: Korean\n"
|
||||
"Language: ko_KR\n"
|
||||
@@ -21,39 +21,39 @@ msgstr ""
|
||||
msgid "Documents"
|
||||
msgstr "문서"
|
||||
|
||||
#: documents/filters.py:392
|
||||
#: documents/filters.py:395
|
||||
msgid "Value must be valid JSON."
|
||||
msgstr "값은 유효한 JSON이어야 합니다."
|
||||
|
||||
#: documents/filters.py:411
|
||||
#: documents/filters.py:414
|
||||
msgid "Invalid custom field query expression"
|
||||
msgstr "잘못된 사용자 정의 필드 쿼리 표현식"
|
||||
|
||||
#: documents/filters.py:421
|
||||
#: documents/filters.py:424
|
||||
msgid "Invalid expression list. Must be nonempty."
|
||||
msgstr "잘못된 표현식 목록입니다. 비어 있지 않아야 합니다."
|
||||
|
||||
#: documents/filters.py:442
|
||||
#: documents/filters.py:445
|
||||
msgid "Invalid logical operator {op!r}"
|
||||
msgstr "잘못된 논리 연산자 {op!r}"
|
||||
|
||||
#: documents/filters.py:456
|
||||
#: documents/filters.py:459
|
||||
msgid "Maximum number of query conditions exceeded."
|
||||
msgstr "쿼리 조건의 최대 개수를 초과했습니다."
|
||||
|
||||
#: documents/filters.py:521
|
||||
#: documents/filters.py:524
|
||||
msgid "{name!r} is not a valid custom field."
|
||||
msgstr "{name!r} 은 잘못된 사용자 정의 필드입니다."
|
||||
|
||||
#: documents/filters.py:558
|
||||
#: documents/filters.py:561
|
||||
msgid "{data_type} does not support query expr {expr!r}."
|
||||
msgstr "{data_type}은 쿼리 표현식 {expr!r}을(를) 지원하지 않습니다."
|
||||
|
||||
#: documents/filters.py:666 documents/models.py:135
|
||||
#: documents/filters.py:669 documents/models.py:135
|
||||
msgid "Maximum nesting depth exceeded."
|
||||
msgstr "최대 중첩 깊이를 초과했습니다."
|
||||
|
||||
#: documents/filters.py:851
|
||||
#: documents/filters.py:854
|
||||
msgid "Custom field not found"
|
||||
msgstr "사용자 지정 필드를 찾을 수 없음"
|
||||
|
||||
|
||||
@@ -2,8 +2,8 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: paperless-ngx\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2025-10-28 18:06+0000\n"
|
||||
"PO-Revision-Date: 2025-10-28 18:07\n"
|
||||
"POT-Creation-Date: 2025-11-14 16:09+0000\n"
|
||||
"PO-Revision-Date: 2025-11-14 16:11\n"
|
||||
"Last-Translator: \n"
|
||||
"Language-Team: Luxembourgish\n"
|
||||
"Language: lb_LU\n"
|
||||
@@ -21,39 +21,39 @@ msgstr ""
|
||||
msgid "Documents"
|
||||
msgstr "Dokumenter"
|
||||
|
||||
#: documents/filters.py:392
|
||||
#: documents/filters.py:395
|
||||
msgid "Value must be valid JSON."
|
||||
msgstr ""
|
||||
|
||||
#: documents/filters.py:411
|
||||
#: documents/filters.py:414
|
||||
msgid "Invalid custom field query expression"
|
||||
msgstr ""
|
||||
|
||||
#: documents/filters.py:421
|
||||
#: documents/filters.py:424
|
||||
msgid "Invalid expression list. Must be nonempty."
|
||||
msgstr ""
|
||||
|
||||
#: documents/filters.py:442
|
||||
#: documents/filters.py:445
|
||||
msgid "Invalid logical operator {op!r}"
|
||||
msgstr ""
|
||||
|
||||
#: documents/filters.py:456
|
||||
#: documents/filters.py:459
|
||||
msgid "Maximum number of query conditions exceeded."
|
||||
msgstr ""
|
||||
|
||||
#: documents/filters.py:521
|
||||
#: documents/filters.py:524
|
||||
msgid "{name!r} is not a valid custom field."
|
||||
msgstr ""
|
||||
|
||||
#: documents/filters.py:558
|
||||
#: documents/filters.py:561
|
||||
msgid "{data_type} does not support query expr {expr!r}."
|
||||
msgstr ""
|
||||
|
||||
#: documents/filters.py:666 documents/models.py:135
|
||||
#: documents/filters.py:669 documents/models.py:135
|
||||
msgid "Maximum nesting depth exceeded."
|
||||
msgstr ""
|
||||
|
||||
#: documents/filters.py:851
|
||||
#: documents/filters.py:854
|
||||
msgid "Custom field not found"
|
||||
msgstr ""
|
||||
|
||||
|
||||
@@ -2,8 +2,8 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: paperless-ngx\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2025-10-28 18:06+0000\n"
|
||||
"PO-Revision-Date: 2025-10-28 18:07\n"
|
||||
"POT-Creation-Date: 2025-11-14 16:09+0000\n"
|
||||
"PO-Revision-Date: 2025-11-14 16:11\n"
|
||||
"Last-Translator: \n"
|
||||
"Language-Team: Lithuanian\n"
|
||||
"Language: lt_LT\n"
|
||||
@@ -21,39 +21,39 @@ msgstr ""
|
||||
msgid "Documents"
|
||||
msgstr "Dokumentai"
|
||||
|
||||
#: documents/filters.py:392
|
||||
#: documents/filters.py:395
|
||||
msgid "Value must be valid JSON."
|
||||
msgstr "."
|
||||
|
||||
#: documents/filters.py:411
|
||||
#: documents/filters.py:414
|
||||
msgid "Invalid custom field query expression"
|
||||
msgstr ""
|
||||
|
||||
#: documents/filters.py:421
|
||||
#: documents/filters.py:424
|
||||
msgid "Invalid expression list. Must be nonempty."
|
||||
msgstr "Neteisingas išraiškos sąrašas. Jis turi būti netuščias."
|
||||
|
||||
#: documents/filters.py:442
|
||||
#: documents/filters.py:445
|
||||
msgid "Invalid logical operator {op!r}"
|
||||
msgstr "Neteisingas loginis operatorius {op!r}"
|
||||
|
||||
#: documents/filters.py:456
|
||||
#: documents/filters.py:459
|
||||
msgid "Maximum number of query conditions exceeded."
|
||||
msgstr "Viršytas maksimalus užklausos sąlygų skaičius."
|
||||
|
||||
#: documents/filters.py:521
|
||||
#: documents/filters.py:524
|
||||
msgid "{name!r} is not a valid custom field."
|
||||
msgstr "{name!r} nėra galiojantis pasirinktas laukas."
|
||||
|
||||
#: documents/filters.py:558
|
||||
#: documents/filters.py:561
|
||||
msgid "{data_type} does not support query expr {expr!r}."
|
||||
msgstr "{data_type} nepalaiko užklausos išraiškos {expr!r}."
|
||||
|
||||
#: documents/filters.py:666 documents/models.py:135
|
||||
#: documents/filters.py:669 documents/models.py:135
|
||||
msgid "Maximum nesting depth exceeded."
|
||||
msgstr "Viršytas maksimalus įdėjimo gylis."
|
||||
|
||||
#: documents/filters.py:851
|
||||
#: documents/filters.py:854
|
||||
msgid "Custom field not found"
|
||||
msgstr ""
|
||||
|
||||
|
||||
@@ -2,8 +2,8 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: paperless-ngx\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2025-10-28 18:06+0000\n"
|
||||
"PO-Revision-Date: 2025-10-28 18:07\n"
|
||||
"POT-Creation-Date: 2025-11-14 16:09+0000\n"
|
||||
"PO-Revision-Date: 2025-11-14 16:11\n"
|
||||
"Last-Translator: \n"
|
||||
"Language-Team: Latvian\n"
|
||||
"Language: lv_LV\n"
|
||||
@@ -21,39 +21,39 @@ msgstr ""
|
||||
msgid "Documents"
|
||||
msgstr "Dokuments"
|
||||
|
||||
#: documents/filters.py:392
|
||||
#: documents/filters.py:395
|
||||
msgid "Value must be valid JSON."
|
||||
msgstr ""
|
||||
|
||||
#: documents/filters.py:411
|
||||
#: documents/filters.py:414
|
||||
msgid "Invalid custom field query expression"
|
||||
msgstr ""
|
||||
|
||||
#: documents/filters.py:421
|
||||
#: documents/filters.py:424
|
||||
msgid "Invalid expression list. Must be nonempty."
|
||||
msgstr ""
|
||||
|
||||
#: documents/filters.py:442
|
||||
#: documents/filters.py:445
|
||||
msgid "Invalid logical operator {op!r}"
|
||||
msgstr ""
|
||||
|
||||
#: documents/filters.py:456
|
||||
#: documents/filters.py:459
|
||||
msgid "Maximum number of query conditions exceeded."
|
||||
msgstr ""
|
||||
|
||||
#: documents/filters.py:521
|
||||
#: documents/filters.py:524
|
||||
msgid "{name!r} is not a valid custom field."
|
||||
msgstr ""
|
||||
|
||||
#: documents/filters.py:558
|
||||
#: documents/filters.py:561
|
||||
msgid "{data_type} does not support query expr {expr!r}."
|
||||
msgstr ""
|
||||
|
||||
#: documents/filters.py:666 documents/models.py:135
|
||||
#: documents/filters.py:669 documents/models.py:135
|
||||
msgid "Maximum nesting depth exceeded."
|
||||
msgstr ""
|
||||
|
||||
#: documents/filters.py:851
|
||||
#: documents/filters.py:854
|
||||
msgid "Custom field not found"
|
||||
msgstr ""
|
||||
|
||||
|
||||
2154
src/locale/mk_MK/LC_MESSAGES/django.po
Normal file
2154
src/locale/mk_MK/LC_MESSAGES/django.po
Normal file
File diff suppressed because it is too large
Load Diff
@@ -2,8 +2,8 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: paperless-ngx\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2025-10-28 18:06+0000\n"
|
||||
"PO-Revision-Date: 2025-10-28 18:07\n"
|
||||
"POT-Creation-Date: 2025-11-14 16:09+0000\n"
|
||||
"PO-Revision-Date: 2025-11-14 16:11\n"
|
||||
"Last-Translator: \n"
|
||||
"Language-Team: Malay\n"
|
||||
"Language: ms_MY\n"
|
||||
@@ -21,39 +21,39 @@ msgstr ""
|
||||
msgid "Documents"
|
||||
msgstr "Dokumen"
|
||||
|
||||
#: documents/filters.py:392
|
||||
#: documents/filters.py:395
|
||||
msgid "Value must be valid JSON."
|
||||
msgstr ""
|
||||
|
||||
#: documents/filters.py:411
|
||||
#: documents/filters.py:414
|
||||
msgid "Invalid custom field query expression"
|
||||
msgstr ""
|
||||
|
||||
#: documents/filters.py:421
|
||||
#: documents/filters.py:424
|
||||
msgid "Invalid expression list. Must be nonempty."
|
||||
msgstr ""
|
||||
|
||||
#: documents/filters.py:442
|
||||
#: documents/filters.py:445
|
||||
msgid "Invalid logical operator {op!r}"
|
||||
msgstr ""
|
||||
|
||||
#: documents/filters.py:456
|
||||
#: documents/filters.py:459
|
||||
msgid "Maximum number of query conditions exceeded."
|
||||
msgstr ""
|
||||
|
||||
#: documents/filters.py:521
|
||||
#: documents/filters.py:524
|
||||
msgid "{name!r} is not a valid custom field."
|
||||
msgstr ""
|
||||
|
||||
#: documents/filters.py:558
|
||||
#: documents/filters.py:561
|
||||
msgid "{data_type} does not support query expr {expr!r}."
|
||||
msgstr ""
|
||||
|
||||
#: documents/filters.py:666 documents/models.py:135
|
||||
#: documents/filters.py:669 documents/models.py:135
|
||||
msgid "Maximum nesting depth exceeded."
|
||||
msgstr ""
|
||||
|
||||
#: documents/filters.py:851
|
||||
#: documents/filters.py:854
|
||||
msgid "Custom field not found"
|
||||
msgstr ""
|
||||
|
||||
|
||||
@@ -2,8 +2,8 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: paperless-ngx\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2025-10-28 18:06+0000\n"
|
||||
"PO-Revision-Date: 2025-10-28 18:07\n"
|
||||
"POT-Creation-Date: 2025-11-14 16:09+0000\n"
|
||||
"PO-Revision-Date: 2025-11-14 16:11\n"
|
||||
"Last-Translator: \n"
|
||||
"Language-Team: Dutch\n"
|
||||
"Language: nl_NL\n"
|
||||
@@ -21,39 +21,39 @@ msgstr ""
|
||||
msgid "Documents"
|
||||
msgstr "Documenten"
|
||||
|
||||
#: documents/filters.py:392
|
||||
#: documents/filters.py:395
|
||||
msgid "Value must be valid JSON."
|
||||
msgstr "Waarde moet een geldige JSON zijn."
|
||||
|
||||
#: documents/filters.py:411
|
||||
#: documents/filters.py:414
|
||||
msgid "Invalid custom field query expression"
|
||||
msgstr ""
|
||||
|
||||
#: documents/filters.py:421
|
||||
#: documents/filters.py:424
|
||||
msgid "Invalid expression list. Must be nonempty."
|
||||
msgstr ""
|
||||
|
||||
#: documents/filters.py:442
|
||||
#: documents/filters.py:445
|
||||
msgid "Invalid logical operator {op!r}"
|
||||
msgstr ""
|
||||
|
||||
#: documents/filters.py:456
|
||||
#: documents/filters.py:459
|
||||
msgid "Maximum number of query conditions exceeded."
|
||||
msgstr ""
|
||||
|
||||
#: documents/filters.py:521
|
||||
#: documents/filters.py:524
|
||||
msgid "{name!r} is not a valid custom field."
|
||||
msgstr "{name!r} is geen geldig aangepast veld."
|
||||
|
||||
#: documents/filters.py:558
|
||||
#: documents/filters.py:561
|
||||
msgid "{data_type} does not support query expr {expr!r}."
|
||||
msgstr ""
|
||||
|
||||
#: documents/filters.py:666 documents/models.py:135
|
||||
#: documents/filters.py:669 documents/models.py:135
|
||||
msgid "Maximum nesting depth exceeded."
|
||||
msgstr ""
|
||||
|
||||
#: documents/filters.py:851
|
||||
#: documents/filters.py:854
|
||||
msgid "Custom field not found"
|
||||
msgstr "Aangepast veld niet gevonden"
|
||||
|
||||
|
||||
@@ -2,8 +2,8 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: paperless-ngx\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2025-10-28 18:06+0000\n"
|
||||
"PO-Revision-Date: 2025-10-28 18:08\n"
|
||||
"POT-Creation-Date: 2025-11-14 16:09+0000\n"
|
||||
"PO-Revision-Date: 2025-11-14 16:11\n"
|
||||
"Last-Translator: \n"
|
||||
"Language-Team: Norwegian\n"
|
||||
"Language: no_NO\n"
|
||||
@@ -21,39 +21,39 @@ msgstr ""
|
||||
msgid "Documents"
|
||||
msgstr "Dokumenter"
|
||||
|
||||
#: documents/filters.py:392
|
||||
#: documents/filters.py:395
|
||||
msgid "Value must be valid JSON."
|
||||
msgstr "Verdien må være en gyldig JSON."
|
||||
|
||||
#: documents/filters.py:411
|
||||
#: documents/filters.py:414
|
||||
msgid "Invalid custom field query expression"
|
||||
msgstr ""
|
||||
|
||||
#: documents/filters.py:421
|
||||
#: documents/filters.py:424
|
||||
msgid "Invalid expression list. Must be nonempty."
|
||||
msgstr ""
|
||||
|
||||
#: documents/filters.py:442
|
||||
#: documents/filters.py:445
|
||||
msgid "Invalid logical operator {op!r}"
|
||||
msgstr ""
|
||||
|
||||
#: documents/filters.py:456
|
||||
#: documents/filters.py:459
|
||||
msgid "Maximum number of query conditions exceeded."
|
||||
msgstr ""
|
||||
|
||||
#: documents/filters.py:521
|
||||
#: documents/filters.py:524
|
||||
msgid "{name!r} is not a valid custom field."
|
||||
msgstr ""
|
||||
|
||||
#: documents/filters.py:558
|
||||
#: documents/filters.py:561
|
||||
msgid "{data_type} does not support query expr {expr!r}."
|
||||
msgstr ""
|
||||
|
||||
#: documents/filters.py:666 documents/models.py:135
|
||||
#: documents/filters.py:669 documents/models.py:135
|
||||
msgid "Maximum nesting depth exceeded."
|
||||
msgstr ""
|
||||
|
||||
#: documents/filters.py:851
|
||||
#: documents/filters.py:854
|
||||
msgid "Custom field not found"
|
||||
msgstr "Egendefinert felt ble ikke funnet"
|
||||
|
||||
|
||||
@@ -2,8 +2,8 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: paperless-ngx\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2025-10-28 18:06+0000\n"
|
||||
"PO-Revision-Date: 2025-10-29 12:14\n"
|
||||
"POT-Creation-Date: 2025-11-14 16:09+0000\n"
|
||||
"PO-Revision-Date: 2025-11-14 16:11\n"
|
||||
"Last-Translator: \n"
|
||||
"Language-Team: Polish\n"
|
||||
"Language: pl_PL\n"
|
||||
@@ -21,39 +21,39 @@ msgstr ""
|
||||
msgid "Documents"
|
||||
msgstr "Dokumenty"
|
||||
|
||||
#: documents/filters.py:392
|
||||
#: documents/filters.py:395
|
||||
msgid "Value must be valid JSON."
|
||||
msgstr "Wartość musi być prawidłowym JSON."
|
||||
|
||||
#: documents/filters.py:411
|
||||
#: documents/filters.py:414
|
||||
msgid "Invalid custom field query expression"
|
||||
msgstr "Nieprawidłowe wyrażenie zapytania pola niestandardowego"
|
||||
|
||||
#: documents/filters.py:421
|
||||
#: documents/filters.py:424
|
||||
msgid "Invalid expression list. Must be nonempty."
|
||||
msgstr "Nieprawidłowa lista wyrażeń. Nie może być pusta."
|
||||
|
||||
#: documents/filters.py:442
|
||||
#: documents/filters.py:445
|
||||
msgid "Invalid logical operator {op!r}"
|
||||
msgstr "Nieprawidłowy operator logiczny {op!r}"
|
||||
|
||||
#: documents/filters.py:456
|
||||
#: documents/filters.py:459
|
||||
msgid "Maximum number of query conditions exceeded."
|
||||
msgstr "Maksymalna liczba warunków zapytania została przekroczona."
|
||||
|
||||
#: documents/filters.py:521
|
||||
#: documents/filters.py:524
|
||||
msgid "{name!r} is not a valid custom field."
|
||||
msgstr "{name!r} nie jest prawidłowym polem niestandardowym."
|
||||
|
||||
#: documents/filters.py:558
|
||||
#: documents/filters.py:561
|
||||
msgid "{data_type} does not support query expr {expr!r}."
|
||||
msgstr "{data_type} nie obsługuje wyrażenia zapytania {expr!r}."
|
||||
|
||||
#: documents/filters.py:666 documents/models.py:135
|
||||
#: documents/filters.py:669 documents/models.py:135
|
||||
msgid "Maximum nesting depth exceeded."
|
||||
msgstr "Przekroczono maksymalną głębokość zagnieżdżenia."
|
||||
|
||||
#: documents/filters.py:851
|
||||
#: documents/filters.py:854
|
||||
msgid "Custom field not found"
|
||||
msgstr "Nie znaleziono pola niestandardowego"
|
||||
|
||||
@@ -878,23 +878,23 @@ msgstr "posiada wskazanego nadawcę"
|
||||
|
||||
#: documents/models.py:1109
|
||||
msgid "does not have these correspondent(s)"
|
||||
msgstr ""
|
||||
msgstr "nie posiada korespondenta(-ów)"
|
||||
|
||||
#: documents/models.py:1117
|
||||
msgid "has this storage path"
|
||||
msgstr ""
|
||||
msgstr "ma tę ścieżkę zapisu"
|
||||
|
||||
#: documents/models.py:1124
|
||||
msgid "does not have these storage path(s)"
|
||||
msgstr ""
|
||||
msgstr "nie ma tej ścieżki/ścieżek zapisu"
|
||||
|
||||
#: documents/models.py:1128
|
||||
msgid "filter custom field query"
|
||||
msgstr ""
|
||||
msgstr "filtruj zapytanie pola niestandardowego"
|
||||
|
||||
#: documents/models.py:1131
|
||||
msgid "JSON-encoded custom field query expression."
|
||||
msgstr ""
|
||||
msgstr "Niestandardowe wyrażenie zapytania pola zakodowane w formacie JSON."
|
||||
|
||||
#: documents/models.py:1135
|
||||
msgid "schedule offset days"
|
||||
@@ -1038,7 +1038,7 @@ msgstr "przypisz tytuł"
|
||||
|
||||
#: documents/models.py:1302
|
||||
msgid "Assign a document title, must be a Jinja2 template, see documentation."
|
||||
msgstr ""
|
||||
msgstr "Przypisz tytuł dokumentu, musi być szablonem Jinja2, zobacz dokumentację."
|
||||
|
||||
#: documents/models.py:1310 paperless_mail/models.py:274
|
||||
msgid "assign this tag"
|
||||
@@ -1225,20 +1225,20 @@ msgstr "Typ pliku %(type)s nie jest obsługiwany"
|
||||
#: documents/serialisers.py:1849
|
||||
#, python-format
|
||||
msgid "Custom field id must be an integer: %(id)s"
|
||||
msgstr ""
|
||||
msgstr "Identyfikator pola niestandardowego musi być liczbą całkowitą: %(id)s"
|
||||
|
||||
#: documents/serialisers.py:1856
|
||||
#, python-format
|
||||
msgid "Custom field with id %(id)s does not exist"
|
||||
msgstr ""
|
||||
msgstr "Pole niestandardowe z id %(id)s nie istnieje"
|
||||
|
||||
#: documents/serialisers.py:1873 documents/serialisers.py:1883
|
||||
msgid "Custom fields must be a list of integers or an object mapping ids to values."
|
||||
msgstr ""
|
||||
msgstr "Pola niestandardowe muszą być listą liczb całkowitych lub obiektem mapującym identyfikatory na wartości."
|
||||
|
||||
#: documents/serialisers.py:1878
|
||||
msgid "Some custom fields don't exist or were specified twice."
|
||||
msgstr ""
|
||||
msgstr "Niektóre niestandardowe pola nie istnieją lub zostały określone dwukrotnie."
|
||||
|
||||
#: documents/serialisers.py:1993
|
||||
msgid "Invalid variable detected."
|
||||
@@ -1473,21 +1473,21 @@ msgstr "Na koniec należy wypełnić poniższy formularz:"
|
||||
#: documents/validators.py:24
|
||||
#, python-brace-format
|
||||
msgid "Unable to parse URI {value}, missing scheme"
|
||||
msgstr ""
|
||||
msgstr "Nie można przeanalizować URI {value}, brak schematu"
|
||||
|
||||
#: documents/validators.py:29
|
||||
#, python-brace-format
|
||||
msgid "Unable to parse URI {value}, missing net location or path"
|
||||
msgstr ""
|
||||
msgstr "Nie można przeanalizować URI {value}, brak lokalizacji sieciowej lub ścieżki"
|
||||
|
||||
#: documents/validators.py:36
|
||||
msgid "URI scheme '{parts.scheme}' is not allowed. Allowed schemes: {', '.join(allowed_schemes)}"
|
||||
msgstr ""
|
||||
msgstr "Schemat URI '{parts.scheme}' jest niedozwolony. Dozwolone schematy: {', '.join(allowed_schemes)}"
|
||||
|
||||
#: documents/validators.py:45
|
||||
#, python-brace-format
|
||||
msgid "Unable to parse URI {value}"
|
||||
msgstr ""
|
||||
msgstr "Nie można przetworzyć URI {value}"
|
||||
|
||||
#: paperless/apps.py:11
|
||||
msgid "Paperless"
|
||||
@@ -1815,7 +1815,7 @@ msgstr "Ukraiński"
|
||||
|
||||
#: paperless/settings.py:806
|
||||
msgid "Vietnamese"
|
||||
msgstr ""
|
||||
msgstr "Wietnamski"
|
||||
|
||||
#: paperless/settings.py:807
|
||||
msgid "Chinese Simplified"
|
||||
|
||||
@@ -2,8 +2,8 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: paperless-ngx\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2025-10-28 18:06+0000\n"
|
||||
"PO-Revision-Date: 2025-10-30 23:37\n"
|
||||
"POT-Creation-Date: 2025-11-14 16:09+0000\n"
|
||||
"PO-Revision-Date: 2025-11-14 16:11\n"
|
||||
"Last-Translator: \n"
|
||||
"Language-Team: Portuguese, Brazilian\n"
|
||||
"Language: pt_BR\n"
|
||||
@@ -21,39 +21,39 @@ msgstr ""
|
||||
msgid "Documents"
|
||||
msgstr "Documentos"
|
||||
|
||||
#: documents/filters.py:392
|
||||
#: documents/filters.py:395
|
||||
msgid "Value must be valid JSON."
|
||||
msgstr "O valor deve ser um JSON válido."
|
||||
|
||||
#: documents/filters.py:411
|
||||
#: documents/filters.py:414
|
||||
msgid "Invalid custom field query expression"
|
||||
msgstr "Expressão de consulta de campo personalizado inválida"
|
||||
|
||||
#: documents/filters.py:421
|
||||
#: documents/filters.py:424
|
||||
msgid "Invalid expression list. Must be nonempty."
|
||||
msgstr "Lista de expressões inválida. Deve estar não vazia."
|
||||
|
||||
#: documents/filters.py:442
|
||||
#: documents/filters.py:445
|
||||
msgid "Invalid logical operator {op!r}"
|
||||
msgstr "Operador lógico inválido {op!r}"
|
||||
|
||||
#: documents/filters.py:456
|
||||
#: documents/filters.py:459
|
||||
msgid "Maximum number of query conditions exceeded."
|
||||
msgstr "Número máximo de condições de consulta excedido."
|
||||
|
||||
#: documents/filters.py:521
|
||||
#: documents/filters.py:524
|
||||
msgid "{name!r} is not a valid custom field."
|
||||
msgstr "{name!r} não é um campo personalizado válido."
|
||||
|
||||
#: documents/filters.py:558
|
||||
#: documents/filters.py:561
|
||||
msgid "{data_type} does not support query expr {expr!r}."
|
||||
msgstr "{data_type} Não suporta a consulta expr {expr!r}."
|
||||
|
||||
#: documents/filters.py:666 documents/models.py:135
|
||||
#: documents/filters.py:669 documents/models.py:135
|
||||
msgid "Maximum nesting depth exceeded."
|
||||
msgstr "Profundidade máxima do aninhamento excedida."
|
||||
|
||||
#: documents/filters.py:851
|
||||
#: documents/filters.py:854
|
||||
msgid "Custom field not found"
|
||||
msgstr "Campo personalizado não encontrado"
|
||||
|
||||
|
||||
@@ -2,8 +2,8 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: paperless-ngx\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2025-10-28 18:06+0000\n"
|
||||
"PO-Revision-Date: 2025-10-28 18:08\n"
|
||||
"POT-Creation-Date: 2025-11-14 16:09+0000\n"
|
||||
"PO-Revision-Date: 2025-11-14 16:11\n"
|
||||
"Last-Translator: \n"
|
||||
"Language-Team: Portuguese\n"
|
||||
"Language: pt_PT\n"
|
||||
@@ -21,39 +21,39 @@ msgstr ""
|
||||
msgid "Documents"
|
||||
msgstr "Documentos"
|
||||
|
||||
#: documents/filters.py:392
|
||||
#: documents/filters.py:395
|
||||
msgid "Value must be valid JSON."
|
||||
msgstr "O valor deve ser JSON válido."
|
||||
|
||||
#: documents/filters.py:411
|
||||
#: documents/filters.py:414
|
||||
msgid "Invalid custom field query expression"
|
||||
msgstr "Expressão de consulta de campo personalizado inválido"
|
||||
|
||||
#: documents/filters.py:421
|
||||
#: documents/filters.py:424
|
||||
msgid "Invalid expression list. Must be nonempty."
|
||||
msgstr "Lista de expressões inválida. Não deve estar vazia."
|
||||
|
||||
#: documents/filters.py:442
|
||||
#: documents/filters.py:445
|
||||
msgid "Invalid logical operator {op!r}"
|
||||
msgstr "Operador lógico inválido {op!r}"
|
||||
|
||||
#: documents/filters.py:456
|
||||
#: documents/filters.py:459
|
||||
msgid "Maximum number of query conditions exceeded."
|
||||
msgstr "O número máximo de condições de consulta foi excedido."
|
||||
|
||||
#: documents/filters.py:521
|
||||
#: documents/filters.py:524
|
||||
msgid "{name!r} is not a valid custom field."
|
||||
msgstr "{name!r} não é um campo personalizado válido."
|
||||
|
||||
#: documents/filters.py:558
|
||||
#: documents/filters.py:561
|
||||
msgid "{data_type} does not support query expr {expr!r}."
|
||||
msgstr "{data_type} não aceita a expressão de consulta {expr!r}."
|
||||
|
||||
#: documents/filters.py:666 documents/models.py:135
|
||||
#: documents/filters.py:669 documents/models.py:135
|
||||
msgid "Maximum nesting depth exceeded."
|
||||
msgstr ""
|
||||
|
||||
#: documents/filters.py:851
|
||||
#: documents/filters.py:854
|
||||
msgid "Custom field not found"
|
||||
msgstr "Campo personalizado não encontrado"
|
||||
|
||||
|
||||
@@ -2,8 +2,8 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: paperless-ngx\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2025-10-28 18:06+0000\n"
|
||||
"PO-Revision-Date: 2025-10-28 18:08\n"
|
||||
"POT-Creation-Date: 2025-11-14 16:09+0000\n"
|
||||
"PO-Revision-Date: 2025-11-14 16:11\n"
|
||||
"Last-Translator: \n"
|
||||
"Language-Team: Romanian\n"
|
||||
"Language: ro_RO\n"
|
||||
@@ -21,39 +21,39 @@ msgstr ""
|
||||
msgid "Documents"
|
||||
msgstr "Documente"
|
||||
|
||||
#: documents/filters.py:392
|
||||
#: documents/filters.py:395
|
||||
msgid "Value must be valid JSON."
|
||||
msgstr ""
|
||||
|
||||
#: documents/filters.py:411
|
||||
#: documents/filters.py:414
|
||||
msgid "Invalid custom field query expression"
|
||||
msgstr ""
|
||||
|
||||
#: documents/filters.py:421
|
||||
#: documents/filters.py:424
|
||||
msgid "Invalid expression list. Must be nonempty."
|
||||
msgstr ""
|
||||
|
||||
#: documents/filters.py:442
|
||||
#: documents/filters.py:445
|
||||
msgid "Invalid logical operator {op!r}"
|
||||
msgstr ""
|
||||
|
||||
#: documents/filters.py:456
|
||||
#: documents/filters.py:459
|
||||
msgid "Maximum number of query conditions exceeded."
|
||||
msgstr ""
|
||||
|
||||
#: documents/filters.py:521
|
||||
#: documents/filters.py:524
|
||||
msgid "{name!r} is not a valid custom field."
|
||||
msgstr ""
|
||||
|
||||
#: documents/filters.py:558
|
||||
#: documents/filters.py:561
|
||||
msgid "{data_type} does not support query expr {expr!r}."
|
||||
msgstr ""
|
||||
|
||||
#: documents/filters.py:666 documents/models.py:135
|
||||
#: documents/filters.py:669 documents/models.py:135
|
||||
msgid "Maximum nesting depth exceeded."
|
||||
msgstr ""
|
||||
|
||||
#: documents/filters.py:851
|
||||
#: documents/filters.py:854
|
||||
msgid "Custom field not found"
|
||||
msgstr ""
|
||||
|
||||
|
||||
@@ -2,8 +2,8 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: paperless-ngx\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2025-10-28 18:06+0000\n"
|
||||
"PO-Revision-Date: 2025-11-01 20:24\n"
|
||||
"POT-Creation-Date: 2025-11-14 16:09+0000\n"
|
||||
"PO-Revision-Date: 2025-11-14 16:11\n"
|
||||
"Last-Translator: \n"
|
||||
"Language-Team: Russian\n"
|
||||
"Language: ru_RU\n"
|
||||
@@ -21,39 +21,39 @@ msgstr ""
|
||||
msgid "Documents"
|
||||
msgstr "Документы"
|
||||
|
||||
#: documents/filters.py:392
|
||||
#: documents/filters.py:395
|
||||
msgid "Value must be valid JSON."
|
||||
msgstr "Значение должно быть корректным JSON."
|
||||
|
||||
#: documents/filters.py:411
|
||||
#: documents/filters.py:414
|
||||
msgid "Invalid custom field query expression"
|
||||
msgstr "Неверное выражение запроса пользовательского поля"
|
||||
|
||||
#: documents/filters.py:421
|
||||
#: documents/filters.py:424
|
||||
msgid "Invalid expression list. Must be nonempty."
|
||||
msgstr "Недопустимый список выражений. Не может быть пустым."
|
||||
|
||||
#: documents/filters.py:442
|
||||
#: documents/filters.py:445
|
||||
msgid "Invalid logical operator {op!r}"
|
||||
msgstr "Недопустимый логический оператор {op!r}"
|
||||
|
||||
#: documents/filters.py:456
|
||||
#: documents/filters.py:459
|
||||
msgid "Maximum number of query conditions exceeded."
|
||||
msgstr "Превышено максимальное количество условий запроса."
|
||||
|
||||
#: documents/filters.py:521
|
||||
#: documents/filters.py:524
|
||||
msgid "{name!r} is not a valid custom field."
|
||||
msgstr "{name!r} не является допустимым пользовательским полем."
|
||||
|
||||
#: documents/filters.py:558
|
||||
#: documents/filters.py:561
|
||||
msgid "{data_type} does not support query expr {expr!r}."
|
||||
msgstr "{data_type} не поддерживает запрос {expr!r}."
|
||||
|
||||
#: documents/filters.py:666 documents/models.py:135
|
||||
#: documents/filters.py:669 documents/models.py:135
|
||||
msgid "Maximum nesting depth exceeded."
|
||||
msgstr "Превышена максимальная глубина вложения."
|
||||
|
||||
#: documents/filters.py:851
|
||||
#: documents/filters.py:854
|
||||
msgid "Custom field not found"
|
||||
msgstr "Пользовательское поле не найдено"
|
||||
|
||||
|
||||
@@ -2,8 +2,8 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: paperless-ngx\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2025-10-28 18:06+0000\n"
|
||||
"PO-Revision-Date: 2025-10-28 18:08\n"
|
||||
"POT-Creation-Date: 2025-11-14 16:09+0000\n"
|
||||
"PO-Revision-Date: 2025-11-14 16:11\n"
|
||||
"Last-Translator: \n"
|
||||
"Language-Team: Slovak\n"
|
||||
"Language: sk_SK\n"
|
||||
@@ -21,39 +21,39 @@ msgstr ""
|
||||
msgid "Documents"
|
||||
msgstr "Dokumenty"
|
||||
|
||||
#: documents/filters.py:392
|
||||
#: documents/filters.py:395
|
||||
msgid "Value must be valid JSON."
|
||||
msgstr "Hodnota musí byť vo validnom formáte JSON."
|
||||
|
||||
#: documents/filters.py:411
|
||||
#: documents/filters.py:414
|
||||
msgid "Invalid custom field query expression"
|
||||
msgstr "Neplatný výraz požiadavky na vlastné pole"
|
||||
|
||||
#: documents/filters.py:421
|
||||
#: documents/filters.py:424
|
||||
msgid "Invalid expression list. Must be nonempty."
|
||||
msgstr "Neplatný zoznam výrazov. Nesmie byť prázdny."
|
||||
|
||||
#: documents/filters.py:442
|
||||
#: documents/filters.py:445
|
||||
msgid "Invalid logical operator {op!r}"
|
||||
msgstr "Neplatný logický operátor {op!r}"
|
||||
|
||||
#: documents/filters.py:456
|
||||
#: documents/filters.py:459
|
||||
msgid "Maximum number of query conditions exceeded."
|
||||
msgstr "Prekročili ste maximálny počet podmienok požiadavky."
|
||||
|
||||
#: documents/filters.py:521
|
||||
#: documents/filters.py:524
|
||||
msgid "{name!r} is not a valid custom field."
|
||||
msgstr "{name!r} nie je platné vlastné pole."
|
||||
|
||||
#: documents/filters.py:558
|
||||
#: documents/filters.py:561
|
||||
msgid "{data_type} does not support query expr {expr!r}."
|
||||
msgstr "{data_type} nepodporuje výraz požiadavky {expr!r}."
|
||||
|
||||
#: documents/filters.py:666 documents/models.py:135
|
||||
#: documents/filters.py:669 documents/models.py:135
|
||||
msgid "Maximum nesting depth exceeded."
|
||||
msgstr "Bola prekročená maximálna hĺbka vetvenia."
|
||||
|
||||
#: documents/filters.py:851
|
||||
#: documents/filters.py:854
|
||||
msgid "Custom field not found"
|
||||
msgstr "Vlastné pole nebolo nájdené"
|
||||
|
||||
|
||||
@@ -2,8 +2,8 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: paperless-ngx\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2025-10-28 18:06+0000\n"
|
||||
"PO-Revision-Date: 2025-10-28 18:08\n"
|
||||
"POT-Creation-Date: 2025-11-14 16:09+0000\n"
|
||||
"PO-Revision-Date: 2025-11-14 16:11\n"
|
||||
"Last-Translator: \n"
|
||||
"Language-Team: Slovenian\n"
|
||||
"Language: sl_SI\n"
|
||||
@@ -21,39 +21,39 @@ msgstr ""
|
||||
msgid "Documents"
|
||||
msgstr "Dokumenti"
|
||||
|
||||
#: documents/filters.py:392
|
||||
#: documents/filters.py:395
|
||||
msgid "Value must be valid JSON."
|
||||
msgstr "Vrednost mora biti veljaven JSON."
|
||||
|
||||
#: documents/filters.py:411
|
||||
#: documents/filters.py:414
|
||||
msgid "Invalid custom field query expression"
|
||||
msgstr "Neveljaven izraz poizvedbe po polju po meri"
|
||||
|
||||
#: documents/filters.py:421
|
||||
#: documents/filters.py:424
|
||||
msgid "Invalid expression list. Must be nonempty."
|
||||
msgstr "Neveljaven seznam izrazov. Ne sme biti prazen."
|
||||
|
||||
#: documents/filters.py:442
|
||||
#: documents/filters.py:445
|
||||
msgid "Invalid logical operator {op!r}"
|
||||
msgstr "Neveljaven logični operator {op!r}"
|
||||
|
||||
#: documents/filters.py:456
|
||||
#: documents/filters.py:459
|
||||
msgid "Maximum number of query conditions exceeded."
|
||||
msgstr "Preseženo je bilo največje dovoljeno število pogojev poizvedbe."
|
||||
|
||||
#: documents/filters.py:521
|
||||
#: documents/filters.py:524
|
||||
msgid "{name!r} is not a valid custom field."
|
||||
msgstr "{name!r} ni veljavno polje po meri."
|
||||
|
||||
#: documents/filters.py:558
|
||||
#: documents/filters.py:561
|
||||
msgid "{data_type} does not support query expr {expr!r}."
|
||||
msgstr "{data_type} ne podpira izraza poizvedbe {expr!r}."
|
||||
|
||||
#: documents/filters.py:666 documents/models.py:135
|
||||
#: documents/filters.py:669 documents/models.py:135
|
||||
msgid "Maximum nesting depth exceeded."
|
||||
msgstr "Presežena je bila največja globina gnezdenja."
|
||||
|
||||
#: documents/filters.py:851
|
||||
#: documents/filters.py:854
|
||||
msgid "Custom field not found"
|
||||
msgstr "Polja po meri ni bilo mogoče najti"
|
||||
|
||||
|
||||
@@ -2,8 +2,8 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: paperless-ngx\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2025-10-28 18:06+0000\n"
|
||||
"PO-Revision-Date: 2025-10-28 18:08\n"
|
||||
"POT-Creation-Date: 2025-11-14 16:09+0000\n"
|
||||
"PO-Revision-Date: 2025-11-14 16:11\n"
|
||||
"Last-Translator: \n"
|
||||
"Language-Team: Serbian (Latin)\n"
|
||||
"Language: sr_CS\n"
|
||||
@@ -21,39 +21,39 @@ msgstr ""
|
||||
msgid "Documents"
|
||||
msgstr "Dokumenta"
|
||||
|
||||
#: documents/filters.py:392
|
||||
#: documents/filters.py:395
|
||||
msgid "Value must be valid JSON."
|
||||
msgstr "Vrednost mora da bude važeći JSON."
|
||||
|
||||
#: documents/filters.py:411
|
||||
#: documents/filters.py:414
|
||||
msgid "Invalid custom field query expression"
|
||||
msgstr "Nevažeći izraz upita prilagođen polja"
|
||||
|
||||
#: documents/filters.py:421
|
||||
#: documents/filters.py:424
|
||||
msgid "Invalid expression list. Must be nonempty."
|
||||
msgstr "Nevažeća lista izraza. Ne sme biti prazna."
|
||||
|
||||
#: documents/filters.py:442
|
||||
#: documents/filters.py:445
|
||||
msgid "Invalid logical operator {op!r}"
|
||||
msgstr "Nevažeći logični operator {op!r}"
|
||||
|
||||
#: documents/filters.py:456
|
||||
#: documents/filters.py:459
|
||||
msgid "Maximum number of query conditions exceeded."
|
||||
msgstr "Premašen je maksimalni broj uslova u upitu."
|
||||
|
||||
#: documents/filters.py:521
|
||||
#: documents/filters.py:524
|
||||
msgid "{name!r} is not a valid custom field."
|
||||
msgstr "{name!r} nije validno prilagođeno polje."
|
||||
|
||||
#: documents/filters.py:558
|
||||
#: documents/filters.py:561
|
||||
msgid "{data_type} does not support query expr {expr!r}."
|
||||
msgstr "{data_type} ne podržava izraz u upitu {expr!r}."
|
||||
|
||||
#: documents/filters.py:666 documents/models.py:135
|
||||
#: documents/filters.py:669 documents/models.py:135
|
||||
msgid "Maximum nesting depth exceeded."
|
||||
msgstr "Premašena je maksimalna dubina grananja."
|
||||
|
||||
#: documents/filters.py:851
|
||||
#: documents/filters.py:854
|
||||
msgid "Custom field not found"
|
||||
msgstr "Nije pronađeno prilagođeno polje"
|
||||
|
||||
|
||||
@@ -2,8 +2,8 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: paperless-ngx\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2025-10-28 18:06+0000\n"
|
||||
"PO-Revision-Date: 2025-10-28 18:08\n"
|
||||
"POT-Creation-Date: 2025-11-14 16:09+0000\n"
|
||||
"PO-Revision-Date: 2025-11-14 16:11\n"
|
||||
"Last-Translator: \n"
|
||||
"Language-Team: Swedish\n"
|
||||
"Language: sv_SE\n"
|
||||
@@ -21,39 +21,39 @@ msgstr ""
|
||||
msgid "Documents"
|
||||
msgstr "Dokument"
|
||||
|
||||
#: documents/filters.py:392
|
||||
#: documents/filters.py:395
|
||||
msgid "Value must be valid JSON."
|
||||
msgstr "Värdet måste vara giltigt JSON."
|
||||
|
||||
#: documents/filters.py:411
|
||||
#: documents/filters.py:414
|
||||
msgid "Invalid custom field query expression"
|
||||
msgstr "Ogiltigt sökordsuttryck för anpassade fält"
|
||||
|
||||
#: documents/filters.py:421
|
||||
#: documents/filters.py:424
|
||||
msgid "Invalid expression list. Must be nonempty."
|
||||
msgstr "Ogiltig uttryckslista. Får inte vara tom."
|
||||
|
||||
#: documents/filters.py:442
|
||||
#: documents/filters.py:445
|
||||
msgid "Invalid logical operator {op!r}"
|
||||
msgstr "Ogiltig logisk operator {op!r}"
|
||||
|
||||
#: documents/filters.py:456
|
||||
#: documents/filters.py:459
|
||||
msgid "Maximum number of query conditions exceeded."
|
||||
msgstr "Maximalt antal frågevillkor överskrids."
|
||||
|
||||
#: documents/filters.py:521
|
||||
#: documents/filters.py:524
|
||||
msgid "{name!r} is not a valid custom field."
|
||||
msgstr "{name!r} är inte ett giltigt anpassat fält."
|
||||
|
||||
#: documents/filters.py:558
|
||||
#: documents/filters.py:561
|
||||
msgid "{data_type} does not support query expr {expr!r}."
|
||||
msgstr "{data_type} stöder inte frågan expr {expr!r}."
|
||||
|
||||
#: documents/filters.py:666 documents/models.py:135
|
||||
#: documents/filters.py:669 documents/models.py:135
|
||||
msgid "Maximum nesting depth exceeded."
|
||||
msgstr "Maximalt antal nästlade nivåer överskrids."
|
||||
|
||||
#: documents/filters.py:851
|
||||
#: documents/filters.py:854
|
||||
msgid "Custom field not found"
|
||||
msgstr "Anpassat fält hittades inte"
|
||||
|
||||
|
||||
@@ -2,8 +2,8 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: paperless-ngx\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2025-10-28 18:06+0000\n"
|
||||
"PO-Revision-Date: 2025-10-30 23:37\n"
|
||||
"POT-Creation-Date: 2025-11-14 16:09+0000\n"
|
||||
"PO-Revision-Date: 2025-11-14 16:11\n"
|
||||
"Last-Translator: \n"
|
||||
"Language-Team: Thai\n"
|
||||
"Language: th_TH\n"
|
||||
@@ -21,39 +21,39 @@ msgstr ""
|
||||
msgid "Documents"
|
||||
msgstr "เอกสาร"
|
||||
|
||||
#: documents/filters.py:392
|
||||
#: documents/filters.py:395
|
||||
msgid "Value must be valid JSON."
|
||||
msgstr "ค่า ต้องอยู่ในรูปแบบ JSON ที่ถูกต้อง"
|
||||
|
||||
#: documents/filters.py:411
|
||||
#: documents/filters.py:414
|
||||
msgid "Invalid custom field query expression"
|
||||
msgstr "รูปแบบการค้นหาฟิลด์ที่กำหนดเองไม่ถูกต้อง"
|
||||
|
||||
#: documents/filters.py:421
|
||||
#: documents/filters.py:424
|
||||
msgid "Invalid expression list. Must be nonempty."
|
||||
msgstr "รายการคำสั่งไม่ถูกต้อง ต้องไม่เว้นว่าง"
|
||||
|
||||
#: documents/filters.py:442
|
||||
#: documents/filters.py:445
|
||||
msgid "Invalid logical operator {op!r}"
|
||||
msgstr "ตัวดำเนินการเชิงตรรกะ {op!r} ไม่ถูกต้อง"
|
||||
|
||||
#: documents/filters.py:456
|
||||
#: documents/filters.py:459
|
||||
msgid "Maximum number of query conditions exceeded."
|
||||
msgstr "จำนวนเงื่อนไขในการค้นหาเกินกำหนด"
|
||||
|
||||
#: documents/filters.py:521
|
||||
#: documents/filters.py:524
|
||||
msgid "{name!r} is not a valid custom field."
|
||||
msgstr "{name!r} ไม่ใช่ฟิลด์ที่กำหนดเองที่ถูกต้อง"
|
||||
|
||||
#: documents/filters.py:558
|
||||
#: documents/filters.py:561
|
||||
msgid "{data_type} does not support query expr {expr!r}."
|
||||
msgstr "{data_type} ไม่รองรับรูปแบบการค้นหา {expr!r}"
|
||||
|
||||
#: documents/filters.py:666 documents/models.py:135
|
||||
#: documents/filters.py:669 documents/models.py:135
|
||||
msgid "Maximum nesting depth exceeded."
|
||||
msgstr "จำนวนการซ้อนเงื่อนไขสูงสุดเกินขีดจำกัด"
|
||||
|
||||
#: documents/filters.py:851
|
||||
#: documents/filters.py:854
|
||||
msgid "Custom field not found"
|
||||
msgstr "ไม่พบฟิลด์ที่กำหนด"
|
||||
|
||||
|
||||
@@ -2,8 +2,8 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: paperless-ngx\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2025-10-28 18:06+0000\n"
|
||||
"PO-Revision-Date: 2025-10-28 18:08\n"
|
||||
"POT-Creation-Date: 2025-11-14 16:09+0000\n"
|
||||
"PO-Revision-Date: 2025-11-14 16:11\n"
|
||||
"Last-Translator: \n"
|
||||
"Language-Team: Turkish\n"
|
||||
"Language: tr_TR\n"
|
||||
@@ -21,39 +21,39 @@ msgstr ""
|
||||
msgid "Documents"
|
||||
msgstr "Belgeler"
|
||||
|
||||
#: documents/filters.py:392
|
||||
#: documents/filters.py:395
|
||||
msgid "Value must be valid JSON."
|
||||
msgstr "Değer geçerli bir JSON olmalıdır."
|
||||
|
||||
#: documents/filters.py:411
|
||||
#: documents/filters.py:414
|
||||
msgid "Invalid custom field query expression"
|
||||
msgstr "Geçersiz özel alan sorgu ifadesi"
|
||||
|
||||
#: documents/filters.py:421
|
||||
#: documents/filters.py:424
|
||||
msgid "Invalid expression list. Must be nonempty."
|
||||
msgstr "Geçersiz ifade listesi. Boş olmamalıdır."
|
||||
|
||||
#: documents/filters.py:442
|
||||
#: documents/filters.py:445
|
||||
msgid "Invalid logical operator {op!r}"
|
||||
msgstr "Geçersiz mantıksal işleç {op!r}"
|
||||
|
||||
#: documents/filters.py:456
|
||||
#: documents/filters.py:459
|
||||
msgid "Maximum number of query conditions exceeded."
|
||||
msgstr "En çok sorgu koşulu sayısı aşıldı."
|
||||
|
||||
#: documents/filters.py:521
|
||||
#: documents/filters.py:524
|
||||
msgid "{name!r} is not a valid custom field."
|
||||
msgstr "{name!r} geçerli bir özel alan değil."
|
||||
|
||||
#: documents/filters.py:558
|
||||
#: documents/filters.py:561
|
||||
msgid "{data_type} does not support query expr {expr!r}."
|
||||
msgstr "{data_type}, {expr!r} sorgu ifadesini desteklemiyor."
|
||||
|
||||
#: documents/filters.py:666 documents/models.py:135
|
||||
#: documents/filters.py:669 documents/models.py:135
|
||||
msgid "Maximum nesting depth exceeded."
|
||||
msgstr "En çok iç içe geçme izni aşıldı."
|
||||
|
||||
#: documents/filters.py:851
|
||||
#: documents/filters.py:854
|
||||
msgid "Custom field not found"
|
||||
msgstr "Özel alan bulunamadı"
|
||||
|
||||
|
||||
@@ -2,8 +2,8 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: paperless-ngx\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2025-10-28 18:06+0000\n"
|
||||
"PO-Revision-Date: 2025-10-28 18:08\n"
|
||||
"POT-Creation-Date: 2025-11-14 16:09+0000\n"
|
||||
"PO-Revision-Date: 2025-11-14 16:11\n"
|
||||
"Last-Translator: \n"
|
||||
"Language-Team: Ukrainian\n"
|
||||
"Language: uk_UA\n"
|
||||
@@ -21,39 +21,39 @@ msgstr ""
|
||||
msgid "Documents"
|
||||
msgstr "Документи"
|
||||
|
||||
#: documents/filters.py:392
|
||||
#: documents/filters.py:395
|
||||
msgid "Value must be valid JSON."
|
||||
msgstr "Значення має бути коректним JSON."
|
||||
|
||||
#: documents/filters.py:411
|
||||
#: documents/filters.py:414
|
||||
msgid "Invalid custom field query expression"
|
||||
msgstr ""
|
||||
|
||||
#: documents/filters.py:421
|
||||
#: documents/filters.py:424
|
||||
msgid "Invalid expression list. Must be nonempty."
|
||||
msgstr ""
|
||||
|
||||
#: documents/filters.py:442
|
||||
#: documents/filters.py:445
|
||||
msgid "Invalid logical operator {op!r}"
|
||||
msgstr ""
|
||||
|
||||
#: documents/filters.py:456
|
||||
#: documents/filters.py:459
|
||||
msgid "Maximum number of query conditions exceeded."
|
||||
msgstr ""
|
||||
|
||||
#: documents/filters.py:521
|
||||
#: documents/filters.py:524
|
||||
msgid "{name!r} is not a valid custom field."
|
||||
msgstr ""
|
||||
|
||||
#: documents/filters.py:558
|
||||
#: documents/filters.py:561
|
||||
msgid "{data_type} does not support query expr {expr!r}."
|
||||
msgstr ""
|
||||
|
||||
#: documents/filters.py:666 documents/models.py:135
|
||||
#: documents/filters.py:669 documents/models.py:135
|
||||
msgid "Maximum nesting depth exceeded."
|
||||
msgstr ""
|
||||
|
||||
#: documents/filters.py:851
|
||||
#: documents/filters.py:854
|
||||
msgid "Custom field not found"
|
||||
msgstr ""
|
||||
|
||||
|
||||
@@ -2,8 +2,8 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: paperless-ngx\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2025-10-28 18:06+0000\n"
|
||||
"PO-Revision-Date: 2025-10-28 18:08\n"
|
||||
"POT-Creation-Date: 2025-11-14 16:09+0000\n"
|
||||
"PO-Revision-Date: 2025-11-14 16:11\n"
|
||||
"Last-Translator: \n"
|
||||
"Language-Team: Vietnamese\n"
|
||||
"Language: vi_VN\n"
|
||||
@@ -21,39 +21,39 @@ msgstr ""
|
||||
msgid "Documents"
|
||||
msgstr "Tài liệu"
|
||||
|
||||
#: documents/filters.py:392
|
||||
#: documents/filters.py:395
|
||||
msgid "Value must be valid JSON."
|
||||
msgstr "Giá trị phải là JSON hợp lệ."
|
||||
|
||||
#: documents/filters.py:411
|
||||
#: documents/filters.py:414
|
||||
msgid "Invalid custom field query expression"
|
||||
msgstr "Biểu thức truy vấn trường tùy chỉnh không hợp lệ"
|
||||
|
||||
#: documents/filters.py:421
|
||||
#: documents/filters.py:424
|
||||
msgid "Invalid expression list. Must be nonempty."
|
||||
msgstr "Danh sách biểu thức không hợp lệ. Phải không rỗng."
|
||||
|
||||
#: documents/filters.py:442
|
||||
#: documents/filters.py:445
|
||||
msgid "Invalid logical operator {op!r}"
|
||||
msgstr "Toán tử lô-gic không hợp lệ {op!r}"
|
||||
|
||||
#: documents/filters.py:456
|
||||
#: documents/filters.py:459
|
||||
msgid "Maximum number of query conditions exceeded."
|
||||
msgstr "Đã vượt quá số điều kiện truy vấn tối đa."
|
||||
|
||||
#: documents/filters.py:521
|
||||
#: documents/filters.py:524
|
||||
msgid "{name!r} is not a valid custom field."
|
||||
msgstr "{name!r} không phải là trường tùy chỉnh hợp lệ."
|
||||
|
||||
#: documents/filters.py:558
|
||||
#: documents/filters.py:561
|
||||
msgid "{data_type} does not support query expr {expr!r}."
|
||||
msgstr "{data_type} không hỗ trợ expr truy vấn{expr!r}."
|
||||
|
||||
#: documents/filters.py:666 documents/models.py:135
|
||||
#: documents/filters.py:669 documents/models.py:135
|
||||
msgid "Maximum nesting depth exceeded."
|
||||
msgstr "Đã vượt quá độ sâu lồng nhau tối đa."
|
||||
|
||||
#: documents/filters.py:851
|
||||
#: documents/filters.py:854
|
||||
msgid "Custom field not found"
|
||||
msgstr "Không tìm thấy trường tùy chỉnh"
|
||||
|
||||
@@ -136,7 +136,7 @@ msgstr "thẻ"
|
||||
|
||||
#: documents/models.py:123
|
||||
msgid "Cannot set itself as parent."
|
||||
msgstr ""
|
||||
msgstr "Không thể tự đặt thành thư mục gốc"
|
||||
|
||||
#: documents/models.py:125
|
||||
msgid "Cannot set parent to a descendant."
|
||||
@@ -758,7 +758,7 @@ msgstr "Chọn"
|
||||
|
||||
#: documents/models.py:795
|
||||
msgid "Long Text"
|
||||
msgstr ""
|
||||
msgstr "Văn bản dài"
|
||||
|
||||
#: documents/models.py:807
|
||||
msgid "data type"
|
||||
@@ -858,11 +858,11 @@ msgstr "có những thẻ này"
|
||||
|
||||
#: documents/models.py:1072
|
||||
msgid "has all of these tag(s)"
|
||||
msgstr ""
|
||||
msgstr "có tất cả thẻ này"
|
||||
|
||||
#: documents/models.py:1079
|
||||
msgid "does not have these tag(s)"
|
||||
msgstr ""
|
||||
msgstr "không có các thẻ này"
|
||||
|
||||
#: documents/models.py:1087
|
||||
msgid "has this document type"
|
||||
@@ -870,7 +870,7 @@ msgstr "có loại tài liệu này"
|
||||
|
||||
#: documents/models.py:1094
|
||||
msgid "does not have these document type(s)"
|
||||
msgstr ""
|
||||
msgstr "không có các loại tài liệu này"
|
||||
|
||||
#: documents/models.py:1102
|
||||
msgid "has this correspondent"
|
||||
@@ -878,15 +878,15 @@ msgstr "có phóng viên này"
|
||||
|
||||
#: documents/models.py:1109
|
||||
msgid "does not have these correspondent(s)"
|
||||
msgstr ""
|
||||
msgstr "không có các biên tập viên này"
|
||||
|
||||
#: documents/models.py:1117
|
||||
msgid "has this storage path"
|
||||
msgstr ""
|
||||
msgstr "có đường dẫn lưu trữ này"
|
||||
|
||||
#: documents/models.py:1124
|
||||
msgid "does not have these storage path(s)"
|
||||
msgstr ""
|
||||
msgstr "không có các đường dẫn lưu trữ này"
|
||||
|
||||
#: documents/models.py:1128
|
||||
msgid "filter custom field query"
|
||||
|
||||
@@ -2,8 +2,8 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: paperless-ngx\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2025-10-28 18:06+0000\n"
|
||||
"PO-Revision-Date: 2025-10-28 18:07\n"
|
||||
"POT-Creation-Date: 2025-11-14 16:09+0000\n"
|
||||
"PO-Revision-Date: 2025-11-14 16:11\n"
|
||||
"Last-Translator: \n"
|
||||
"Language-Team: Chinese Simplified\n"
|
||||
"Language: zh_CN\n"
|
||||
@@ -21,39 +21,39 @@ msgstr ""
|
||||
msgid "Documents"
|
||||
msgstr "文档"
|
||||
|
||||
#: documents/filters.py:392
|
||||
#: documents/filters.py:395
|
||||
msgid "Value must be valid JSON."
|
||||
msgstr "值必须是有效的 JSON 格式。"
|
||||
|
||||
#: documents/filters.py:411
|
||||
#: documents/filters.py:414
|
||||
msgid "Invalid custom field query expression"
|
||||
msgstr "无效的自定义字段查询表达式"
|
||||
|
||||
#: documents/filters.py:421
|
||||
#: documents/filters.py:424
|
||||
msgid "Invalid expression list. Must be nonempty."
|
||||
msgstr "无效的表达式列表。必须不为空。"
|
||||
|
||||
#: documents/filters.py:442
|
||||
#: documents/filters.py:445
|
||||
msgid "Invalid logical operator {op!r}"
|
||||
msgstr "无效的逻辑运算符 {op!r}"
|
||||
|
||||
#: documents/filters.py:456
|
||||
#: documents/filters.py:459
|
||||
msgid "Maximum number of query conditions exceeded."
|
||||
msgstr "超出查询条件的最大数量。"
|
||||
|
||||
#: documents/filters.py:521
|
||||
#: documents/filters.py:524
|
||||
msgid "{name!r} is not a valid custom field."
|
||||
msgstr "{name!r} 不是一个有效的自定义字段。"
|
||||
|
||||
#: documents/filters.py:558
|
||||
#: documents/filters.py:561
|
||||
msgid "{data_type} does not support query expr {expr!r}."
|
||||
msgstr "{data_type} 不支持查询表达式 {expr!r}。"
|
||||
|
||||
#: documents/filters.py:666 documents/models.py:135
|
||||
#: documents/filters.py:669 documents/models.py:135
|
||||
msgid "Maximum nesting depth exceeded."
|
||||
msgstr "超出最大嵌套深度。"
|
||||
|
||||
#: documents/filters.py:851
|
||||
#: documents/filters.py:854
|
||||
msgid "Custom field not found"
|
||||
msgstr "Custom field not found"
|
||||
|
||||
|
||||
@@ -2,8 +2,8 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: paperless-ngx\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2025-10-28 18:06+0000\n"
|
||||
"PO-Revision-Date: 2025-11-06 00:35\n"
|
||||
"POT-Creation-Date: 2025-11-14 16:09+0000\n"
|
||||
"PO-Revision-Date: 2025-11-14 16:11\n"
|
||||
"Last-Translator: \n"
|
||||
"Language-Team: Chinese Traditional\n"
|
||||
"Language: zh_TW\n"
|
||||
@@ -21,39 +21,39 @@ msgstr ""
|
||||
msgid "Documents"
|
||||
msgstr "文件"
|
||||
|
||||
#: documents/filters.py:392
|
||||
#: documents/filters.py:395
|
||||
msgid "Value must be valid JSON."
|
||||
msgstr "參數值必須是有效的 JSON。"
|
||||
|
||||
#: documents/filters.py:411
|
||||
#: documents/filters.py:414
|
||||
msgid "Invalid custom field query expression"
|
||||
msgstr "無效的自訂欄位查詢表達式"
|
||||
|
||||
#: documents/filters.py:421
|
||||
#: documents/filters.py:424
|
||||
msgid "Invalid expression list. Must be nonempty."
|
||||
msgstr "無效的表達式列表,不能為空。"
|
||||
|
||||
#: documents/filters.py:442
|
||||
#: documents/filters.py:445
|
||||
msgid "Invalid logical operator {op!r}"
|
||||
msgstr "無效的邏輯運算符 {op!r}"
|
||||
|
||||
#: documents/filters.py:456
|
||||
#: documents/filters.py:459
|
||||
msgid "Maximum number of query conditions exceeded."
|
||||
msgstr "超過查詢條件的最大數量。"
|
||||
|
||||
#: documents/filters.py:521
|
||||
#: documents/filters.py:524
|
||||
msgid "{name!r} is not a valid custom field."
|
||||
msgstr "{name!r} 不是有效的自訂欄位。"
|
||||
|
||||
#: documents/filters.py:558
|
||||
#: documents/filters.py:561
|
||||
msgid "{data_type} does not support query expr {expr!r}."
|
||||
msgstr "{data_type} 不支援查詢表達式 {expr!r}。"
|
||||
|
||||
#: documents/filters.py:666 documents/models.py:135
|
||||
#: documents/filters.py:669 documents/models.py:135
|
||||
msgid "Maximum nesting depth exceeded."
|
||||
msgstr "超過最大巢狀深度。"
|
||||
|
||||
#: documents/filters.py:851
|
||||
#: documents/filters.py:854
|
||||
msgid "Custom field not found"
|
||||
msgstr "找不到自訂欄位"
|
||||
|
||||
|
||||
@@ -2,6 +2,7 @@ import os
|
||||
import shutil
|
||||
import subprocess
|
||||
import tempfile
|
||||
import time
|
||||
from pathlib import Path
|
||||
|
||||
import httpx
|
||||
@@ -53,14 +54,33 @@ class TestUrlCanary:
|
||||
Verify certain URLs are still available so testing is valid still
|
||||
"""
|
||||
|
||||
# Wikimedia rejects requests without a browser-like User-Agent header and returns 403.
|
||||
_WIKIMEDIA_HEADERS = {
|
||||
"User-Agent": (
|
||||
"Mozilla/5.0 (X11; Linux x86_64) "
|
||||
"AppleWebKit/537.36 (KHTML, like Gecko) "
|
||||
"Chrome/123.0.0.0 Safari/537.36"
|
||||
),
|
||||
}
|
||||
@classmethod
|
||||
def _fetch_wikimedia(cls, url: str) -> httpx.Response:
|
||||
"""
|
||||
Wikimedia occasionally throttles automated requests (HTTP 429). Retry a few
|
||||
times with a short backoff so the tests stay stable, and skip if throttling
|
||||
persists.
|
||||
"""
|
||||
last_resp: httpx.Response | None = None
|
||||
# Wikimedia rejects requests without a browser-like User-Agent header and returns 403.
|
||||
headers = {
|
||||
"User-Agent": (
|
||||
"Mozilla/5.0 (X11; Linux x86_64) "
|
||||
"AppleWebKit/537.36 (KHTML, like Gecko) "
|
||||
"Chrome/123.0.0.0 Safari/537.36"
|
||||
),
|
||||
}
|
||||
for delay in (0, 1, 2):
|
||||
resp = httpx.get(url, headers=headers, timeout=30.0)
|
||||
if resp.status_code != httpx.codes.TOO_MANY_REQUESTS:
|
||||
return resp
|
||||
last_resp = resp
|
||||
time.sleep(delay)
|
||||
|
||||
pytest.skip(
|
||||
"Wikimedia throttled the canary request with HTTP 429; try rerunning later.",
|
||||
)
|
||||
return last_resp # pragma: no cover
|
||||
|
||||
def test_online_image_exception_on_not_available(self):
|
||||
"""
|
||||
@@ -76,11 +96,10 @@ class TestUrlCanary:
|
||||
whether this image stays online forever, so here we check if we can detect if is not
|
||||
available anymore.
|
||||
"""
|
||||
resp = self._fetch_wikimedia(
|
||||
"https://upload.wikimedia.org/wikipedia/en/f/f7/nonexistent.png",
|
||||
)
|
||||
with pytest.raises(httpx.HTTPStatusError) as exec_info:
|
||||
resp = httpx.get(
|
||||
"https://upload.wikimedia.org/wikipedia/en/f/f7/nonexistent.png",
|
||||
headers=self._WIKIMEDIA_HEADERS,
|
||||
)
|
||||
resp.raise_for_status()
|
||||
|
||||
assert exec_info.value.response.status_code == httpx.codes.NOT_FOUND
|
||||
@@ -100,9 +119,8 @@ class TestUrlCanary:
|
||||
"""
|
||||
|
||||
# Now check the URL used in samples/sample.html
|
||||
resp = httpx.get(
|
||||
resp = self._fetch_wikimedia(
|
||||
"https://upload.wikimedia.org/wikipedia/en/f/f7/RickRoll.png",
|
||||
headers=self._WIKIMEDIA_HEADERS,
|
||||
)
|
||||
resp.raise_for_status()
|
||||
|
||||
|
||||
Reference in New Issue
Block a user