Compare commits

..
Author SHA1 Message Date
stumpylog 7bdc407ed9 Fix: authorize document versions by their root in the single-object permission check
has_perms_owner_aware judged a document by its own owner and grants, so each
endpoint that fetches a document itself had to remember to map a version to
its root document first, and one that forgot, like the more-like-this search
filter, authorized by a stale version owner.

The check now maps a Document to its root before looking at the owner and the
guardian grants, matching what permitted_document_ids does for id sets. The
eight call sites that mapped the document themselves pass it straight through.
The DRF object permission class needs no change because the document viewset
only ever serves root documents.
2026-10-09 14:43:34 -07:00
Trenton HandClaude Sonnet 5.5 01e1e76f91 Fix: judge versions by their root in the AI similarity permission checks
The AI classifier asked permitted_object_ids for the Document model directly,
which judges a version by its own owner and grants. A version whose owner had
drifted from its private root's could be offered as similar-document context
to a user who cannot see the root. Use permitted_document_ids in both the
vector and full-text paths, which authorizes a version by its root.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-09 13:43:36 -07:00
Trenton HandClaude Sonnet 5.5 a41e06f196 Fix: authorize document versions by their root and speed up permission id sets
permitted_document_ids judged a version by its own owner and grants, so a
version whose owner had drifted from its root's was visible to the wrong
people and hidden from the right ones. Callers patched this individually by
mapping each document to its root first. The query itself was also slow on
MariaDB: the guardian grants were a UNION cast to integers and tested with
IN inside an OR with the owner checks, which MariaDB cannot materialize, so it
re-scans the user's grants for every document. At 20k documents that took
seconds for a user with a couple of hundred grants.

permitted_object_ids now casts the row key to a string, as guardian stores
object_pk, and tests it against a single uncorrelated UNION ALL of the user's
and groups' grants. No integer cast is needed and the user's groups are
matched with an IN subquery rather than a join through the membership table.
Postgres and SQLite build the grant set once, and MariaDB probes guardian's
unique indexes per row, which is cheap. A correlated EXISTS per grant also
fixed MariaDB but was up to 3x slower than before on Postgres and SQLite.

permitted_object_ids also takes an optional parent_field naming a
self-referencing foreign key whose target authorizes the row, and
permitted_document_ids passes root_document, so a version is visible exactly
when its root is. The helper that mapped documents to their roots at the call
sites is no longer needed, so the email, selection data, share link bundle,
trash, bulk download and bulk edit checks use the id set directly.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-09 13:43:36 -07:00
61 changed files with 2312 additions and 1496 deletions

No files matched your search

+1 -1
View File
@@ -8525,7 +8525,7 @@
<context context-type="sourcefile">src/app/components/common/suggestions-dropdown/suggestions-dropdown.component.html</context>
<context context-type="linenumber">54</context>
</context-group>
<target state="translated">{VAR_PLURAL, plural, =1 {1 Vorschlag unten verfügbar} other {<x id="INTERPOLATION"/> Vorschläge unten verfügbar}}</target>
<target state="needs-translation">{VAR_PLURAL, plural, =1 {1 suggestion available below} other {<x id="INTERPOLATION"/> suggestions available below}}</target>
</trans-unit>
<trans-unit id="4169875112244042673" datatype="html" approved="yes">
<source>Suggestion options</source>
+4 -4
View File
@@ -8525,7 +8525,7 @@
<context context-type="sourcefile">src/app/components/common/suggestions-dropdown/suggestions-dropdown.component.html</context>
<context context-type="linenumber">54</context>
</context-group>
<target state="translated">{VAR_PLURAL, plural, one {<x id="INTERPOLATION"/> suggerimenti disponibili sotto} =1 {1 suggerimento disponibile sotto} other {<x id="INTERPOLATION"/> suggerimenti disponibili sotto}}</target>
<target state="needs-translation">{VAR_PLURAL, plural, =1 {1 suggestion available below} other {<x id="INTERPOLATION"/> suggestions available below}}</target>
</trans-unit>
<trans-unit id="4169875112244042673" datatype="html">
<source>Suggestion options</source>
@@ -9219,7 +9219,7 @@
<context context-type="sourcefile">src/app/components/document-detail/document-barcodes/document-barcodes.component.html</context>
<context context-type="linenumber">40,41</context>
</context-group>
<target state="translated">Copia contenuto</target>
<target state="needs-translation">Copy content</target>
</trans-unit>
<trans-unit id="2266163016683537825" datatype="html">
<source>of <x id="INTERPOLATION" equiv-text="{{previewNumPages()}}"/></source>
@@ -9479,7 +9479,7 @@
<context context-type="sourcefile">src/app/components/document-detail/document-detail.component.html</context>
<context context-type="linenumber">360,361</context>
</context-group>
<target state="translated">Codici a barre</target>
<target state="needs-translation">Barcodes</target>
</trans-unit>
<trans-unit id="6992781481378431874" datatype="html" approved="yes">
<source>Original document metadata</source>
@@ -13376,7 +13376,7 @@
<context context-type="sourcefile">src/app/data/paperless-config.ts</context>
<context context-type="linenumber">335</context>
</context-group>
<target state="translated">Contenuti Codice a Barre</target>
<target state="needs-translation">Store Barcode Contents</target>
</trans-unit>
<trans-unit id="7011909364081812031" datatype="html">
<source>AI Enabled</source>
+18 -18
View File
@@ -17,7 +17,7 @@
<context context-type="linenumber">386,393</context>
</context-group>
<note priority="1" from="description">Currently selected slide number read by screen reader</note>
<target state="translated"> Slajd <x id="INTERPOLATION" equiv-text="xt(source?: Ngb"/> z <x id="INTERPOLATION_1" equiv-text="this._cycleToSe"/> </target>
<target state="needs-translation"> Slide <x id="INTERPOLATION" equiv-text="xt(source?: Ngb"/> of <x id="INTERPOLATION_1" equiv-text="this._cycleToSe"/> </target>
</trans-unit>
<trans-unit id="ngb.carousel.previous" datatype="html">
<source>Previous</source>
@@ -507,7 +507,7 @@
<context context-type="sourcefile">src/app/app.component.ts</context>
<context context-type="linenumber">225</context>
</context-group>
<target state="translated">Zadania pomagają śledzić pracę w tle, to, co wymaga uwagi i co zostało ostatnio ukończone.</target>
<target state="needs-translation">Tasks helps you track background work, what needs attention, and what recently completed.</target>
</trans-unit>
<trans-unit id="2755033621682206902" datatype="html">
<source>Check out the settings for various tweaks to the web app.</source>
@@ -571,7 +571,7 @@
<context context-type="sourcefile">src/app/components/admin/config/config.component.html</context>
<context context-type="linenumber">35</context>
</context-group>
<target state="translated">Ta wartość zastępuje <x id="INTERPOLATION" equiv-text="{{option.config_key}}"/>, która jest ustawiona poza Paperless.</target>
<target state="needs-translation">This value overrides <x id="INTERPOLATION" equiv-text="{{option.config_key}}"/>, which is set outside Paperless.</target>
</trans-unit>
<trans-unit id="7221396516204435584" datatype="html">
<source><x id="INTERPOLATION" equiv-text="{{option.config_key}}"/> is set outside Paperless. Enter a value here to override it.</source>
@@ -579,7 +579,7 @@
<context context-type="sourcefile">src/app/components/admin/config/config.component.html</context>
<context context-type="linenumber">37</context>
</context-group>
<target state="translated"><x id="INTERPOLATION" equiv-text="{{option.config_key}}"/> jest ustawiony poza Paperless. Wpisz tutaj wartość, aby go zastąpić.</target>
<target state="needs-translation"><x id="INTERPOLATION" equiv-text="{{option.config_key}}"/> is set outside Paperless. Enter a value here to override it.</target>
</trans-unit>
<trans-unit id="8318849619178340389" datatype="html">
<source>Use the externally configured value</source>
@@ -587,7 +587,7 @@
<context context-type="sourcefile">src/app/components/admin/config/config.component.html</context>
<context context-type="linenumber">42</context>
</context-group>
<target state="translated">Użyj wartości skonfigurowanej zewnętrznie</target>
<target state="needs-translation">Use the externally configured value</target>
</trans-unit>
<trans-unit id="6032629623003430385" datatype="html">
<source>Reset to external</source>
@@ -595,7 +595,7 @@
<context context-type="sourcefile">src/app/components/admin/config/config.component.html</context>
<context context-type="linenumber">43</context>
</context-group>
<target state="translated">Zresetuj na zewnętrzny</target>
<target state="needs-translation">Reset to external</target>
</trans-unit>
<trans-unit id="7808756054397155068" datatype="html">
<source>Reset</source>
@@ -1411,7 +1411,7 @@
<context context-type="sourcefile">src/app/components/admin/settings/settings.component.html</context>
<context context-type="linenumber">264</context>
</context-group>
<target state="translated">Obydwa</target>
<target state="needs-translation">Both</target>
</trans-unit>
<trans-unit id="8967224283122923634" datatype="html">
<source>ML only</source>
@@ -1419,7 +1419,7 @@
<context context-type="sourcefile">src/app/components/admin/settings/settings.component.html</context>
<context context-type="linenumber">266</context>
</context-group>
<target state="translated">Tylko ML</target>
<target state="needs-translation">ML only</target>
</trans-unit>
<trans-unit id="6418969597665857901" datatype="html">
<source>AI only</source>
@@ -1427,7 +1427,7 @@
<context context-type="sourcefile">src/app/components/admin/settings/settings.component.html</context>
<context context-type="linenumber">268</context>
</context-group>
<target state="translated">Tylko SI</target>
<target state="needs-translation">AI only</target>
</trans-unit>
<trans-unit id="1043449647727456069" datatype="html">
<source>Automatically request suggestions for inbox documents</source>
@@ -2211,7 +2211,7 @@
<context context-type="sourcefile">src/app/components/admin/tasks/tasks.component.html</context>
<context context-type="linenumber">4,5</context>
</context-group>
<target state="translated">Zadania zawierają szczegóły dotyczące przetwarzania dokumentów i zadań systemowych.</target>
<target state="needs-translation">Tasks shows detailed information about document consumption and system tasks.</target>
</trans-unit>
<trans-unit id="103921551219467537" datatype="html">
<source>Clear selection</source>
@@ -2327,7 +2327,7 @@
<context context-type="sourcefile">src/app/components/admin/tasks/tasks.component.html</context>
<context context-type="linenumber">92,93</context>
</context-group>
<target state="translated">Szukaj w zadaniach</target>
<target state="needs-translation">Search tasks</target>
</trans-unit>
<trans-unit id="6849725902312323996" datatype="html" approved="yes">
<source>Reset filters</source>
@@ -2651,7 +2651,7 @@
<context context-type="sourcefile">src/app/components/admin/tasks/tasks.component.html</context>
<context context-type="linenumber">207</context>
</context-group>
<target state="translated">Wyświetl szczegóły zadania</target>
<target state="needs-translation">View task details</target>
</trans-unit>
<trans-unit id="1536087519743707362" datatype="html">
<source>Dismiss</source>
@@ -4555,7 +4555,7 @@
<context context-type="sourcefile">src/app/components/common/confirm-dialog/rotate-confirm-dialog/rotate-confirm-dialog.component.html</context>
<context context-type="linenumber">9</context>
</context-group>
<target state="translated">Obróć w lewo</target>
<target state="needs-translation">Rotate counterclockwise</target>
</trans-unit>
<trans-unit id="631338357809243389" datatype="html">
<source>Rotate clockwise</source>
@@ -4563,7 +4563,7 @@
<context context-type="sourcefile">src/app/components/common/confirm-dialog/rotate-confirm-dialog/rotate-confirm-dialog.component.html</context>
<context context-type="linenumber">19</context>
</context-group>
<target state="translated">Obróć w prawo</target>
<target state="needs-translation">Rotate clockwise</target>
</trans-unit>
<trans-unit id="8157388568390631653" datatype="html">
<source>Note that only PDFs will be rotated.</source>
@@ -7641,7 +7641,7 @@
<context context-type="sourcefile">src/app/components/common/pdf-editor/pdf-editor.component.html</context>
<context context-type="linenumber">17</context>
</context-group>
<target state="translated">Obróć zaznaczone strony w lewo</target>
<target state="translated">Obróć wybrane strony przeciwnie do ruchu wskazówek zegara</target>
</trans-unit>
<trans-unit id="4787219034890830544" datatype="html">
<source>Rotate selected pages clockwise</source>
@@ -7649,7 +7649,7 @@
<context context-type="sourcefile">src/app/components/common/pdf-editor/pdf-editor.component.html</context>
<context context-type="linenumber">20</context>
</context-group>
<target state="translated">Obróć zaznaczone strony w prawo</target>
<target state="translated">Obróć wybrane strony zgodnie z ruchem wskazówek zegara</target>
</trans-unit>
<trans-unit id="3441043765105475130" datatype="html">
<source>Delete selected pages</source>
@@ -7665,7 +7665,7 @@
<context context-type="sourcefile">src/app/components/common/pdf-editor/pdf-editor.component.html</context>
<context context-type="linenumber">33</context>
</context-group>
<target state="translated">Obróć stronę w lewo</target>
<target state="translated">Obróć stronę przeciwnie do ruchu wskazówek zegara</target>
</trans-unit>
<trans-unit id="3450236521040548507" datatype="html">
<source>Rotate page clockwise</source>
@@ -7673,7 +7673,7 @@
<context context-type="sourcefile">src/app/components/common/pdf-editor/pdf-editor.component.html</context>
<context context-type="linenumber">36</context>
</context-group>
<target state="translated">Obróć stronę w prawo</target>
<target state="translated">Obróć stronę zgodnie z ruchem wskazówek zegara</target>
</trans-unit>
<trans-unit id="7647925464077975347" datatype="html">
<source>Delete page</source>
+14 -14
View File
@@ -17,7 +17,7 @@
<context context-type="linenumber">386,393</context>
</context-group>
<note priority="1" from="description">Currently selected slide number read by screen reader</note>
<target state="translated"> Слайд <x id="INTERPOLATION" equiv-text="xt(source?: Ngb"/> из <x id="INTERPOLATION_1" equiv-text="this._cycleToSe"/> </target>
<target state="needs-translation"> Slide <x id="INTERPOLATION" equiv-text="xt(source?: Ngb"/> of <x id="INTERPOLATION_1" equiv-text="this._cycleToSe"/> </target>
</trans-unit>
<trans-unit id="ngb.carousel.previous" datatype="html">
<source>Previous</source>
@@ -1403,7 +1403,7 @@
<context context-type="sourcefile">src/app/components/admin/settings/settings.component.html</context>
<context context-type="linenumber">259,260</context>
</context-group>
<target state="translated">Предложения по умолчанию для</target>
<target state="needs-translation">Suggestions default to</target>
</trans-unit>
<trans-unit id="6251586038459969294" datatype="html">
<source>Both</source>
@@ -1411,7 +1411,7 @@
<context context-type="sourcefile">src/app/components/admin/settings/settings.component.html</context>
<context context-type="linenumber">264</context>
</context-group>
<target state="translated">Оба</target>
<target state="needs-translation">Both</target>
</trans-unit>
<trans-unit id="8967224283122923634" datatype="html">
<source>ML only</source>
@@ -1419,7 +1419,7 @@
<context context-type="sourcefile">src/app/components/admin/settings/settings.component.html</context>
<context context-type="linenumber">266</context>
</context-group>
<target state="translated">Только ML</target>
<target state="needs-translation">ML only</target>
</trans-unit>
<trans-unit id="6418969597665857901" datatype="html">
<source>AI only</source>
@@ -1427,7 +1427,7 @@
<context context-type="sourcefile">src/app/components/admin/settings/settings.component.html</context>
<context context-type="linenumber">268</context>
</context-group>
<target state="translated">Только ИИ</target>
<target state="needs-translation">AI only</target>
</trans-unit>
<trans-unit id="1043449647727456069" datatype="html">
<source>Automatically request suggestions for inbox documents</source>
@@ -8525,7 +8525,7 @@
<context context-type="sourcefile">src/app/components/common/suggestions-dropdown/suggestions-dropdown.component.html</context>
<context context-type="linenumber">54</context>
</context-group>
<target state="translated">{VAR_PLURAL, plural, =1 {1 совет} other {<x id="INTERPOLATION"/> советов}}</target>
<target state="needs-translation">{VAR_PLURAL, plural, =1 {1 suggestion available below} other {<x id="INTERPOLATION"/> suggestions available below}}</target>
</trans-unit>
<trans-unit id="4169875112244042673" datatype="html">
<source>Suggestion options</source>
@@ -8533,7 +8533,7 @@
<context context-type="sourcefile">src/app/components/common/suggestions-dropdown/suggestions-dropdown.component.html</context>
<context context-type="linenumber">65,66</context>
</context-group>
<target state="translated">Настройки советов</target>
<target state="needs-translation">Suggestion options</target>
</trans-unit>
<trans-unit id="3145824396228856507" datatype="html">
<source>Not using default</source>
@@ -8541,7 +8541,7 @@
<context context-type="sourcefile">src/app/components/common/suggestions-dropdown/suggestions-dropdown.component.html</context>
<context context-type="linenumber">69,70</context>
</context-group>
<target state="translated">Не использует по умолчанию</target>
<target state="needs-translation">Not using default</target>
</trans-unit>
<trans-unit id="8102623853570619759" datatype="html">
<source>Suggest using:</source>
@@ -8549,7 +8549,7 @@
<context context-type="sourcefile">src/app/components/common/suggestions-dropdown/suggestions-dropdown.component.html</context>
<context context-type="linenumber">74,75</context>
</context-group>
<target state="translated">Предложить используя:</target>
<target state="needs-translation">Suggest using:</target>
</trans-unit>
<trans-unit id="5799391967036896978" datatype="html">
<source>ML</source>
@@ -8557,7 +8557,7 @@
<context context-type="sourcefile">src/app/components/common/suggestions-dropdown/suggestions-dropdown.component.html</context>
<context context-type="linenumber">77</context>
</context-group>
<target state="translated">ML</target>
<target state="needs-translation">ML</target>
</trans-unit>
<trans-unit id="3484984238852181071" datatype="html">
<source>AI</source>
@@ -8565,7 +8565,7 @@
<context context-type="sourcefile">src/app/components/common/suggestions-dropdown/suggestions-dropdown.component.html</context>
<context context-type="linenumber">81</context>
</context-group>
<target state="translated">ИИ</target>
<target state="needs-translation">AI</target>
</trans-unit>
<trans-unit id="9180110319941008393" datatype="html">
<source>Environment</source>
@@ -9219,7 +9219,7 @@
<context context-type="sourcefile">src/app/components/document-detail/document-barcodes/document-barcodes.component.html</context>
<context context-type="linenumber">40,41</context>
</context-group>
<target state="translated">Скопировать содержимое</target>
<target state="needs-translation">Copy content</target>
</trans-unit>
<trans-unit id="2266163016683537825" datatype="html">
<source>of <x id="INTERPOLATION" equiv-text="{{previewNumPages()}}"/></source>
@@ -9479,7 +9479,7 @@
<context context-type="sourcefile">src/app/components/document-detail/document-detail.component.html</context>
<context context-type="linenumber">360,361</context>
</context-group>
<target state="translated">Штрихкоды</target>
<target state="needs-translation">Barcodes</target>
</trans-unit>
<trans-unit id="6992781481378431874" datatype="html" approved="yes">
<source>Original document metadata</source>
@@ -13375,7 +13375,7 @@
<context context-type="sourcefile">src/app/data/paperless-config.ts</context>
<context context-type="linenumber">335</context>
</context-group>
<target state="translated">Сохранить содержимое штрихкодов</target>
<target state="needs-translation">Store Barcode Contents</target>
</trans-unit>
<trans-unit id="7011909364081812031" datatype="html">
<source>AI Enabled</source>
File diff suppressed because it is too large. Load diff
+58 -58
View File
@@ -595,7 +595,7 @@
<context context-type="sourcefile">src/app/components/admin/config/config.component.html</context>
<context context-type="linenumber">43</context>
</context-group>
<target state="translated">重置为外部</target>
<target state="needs-translation">Reset to external</target>
</trans-unit>
<trans-unit id="7808756054397155068" datatype="html">
<source>Reset</source>
@@ -1135,7 +1135,7 @@
<context context-type="sourcefile">src/app/components/admin/settings/settings.component.html</context>
<context context-type="linenumber">115,116</context>
</context-group>
<target state="translated">侧边栏显示项:</target>
<target state="needs-translation">Sidebar items to show:</target>
</trans-unit>
<trans-unit id="1356890996281769972" datatype="html">
<source>Dark mode</source>
@@ -1419,7 +1419,7 @@
<context context-type="sourcefile">src/app/components/admin/settings/settings.component.html</context>
<context context-type="linenumber">266</context>
</context-group>
<target state="translated">仅限 ML</target>
<target state="needs-translation">ML only</target>
</trans-unit>
<trans-unit id="6418969597665857901" datatype="html">
<source>AI only</source>
@@ -1427,7 +1427,7 @@
<context context-type="sourcefile">src/app/components/admin/settings/settings.component.html</context>
<context context-type="linenumber">268</context>
</context-group>
<target state="translated">仅限 AI</target>
<target state="needs-translation">AI only</target>
</trans-unit>
<trans-unit id="1043449647727456069" datatype="html">
<source>Automatically request suggestions for inbox documents</source>
@@ -2887,7 +2887,7 @@
<context context-type="sourcefile">src/app/components/admin/tasks/tasks.component.ts</context>
<context context-type="linenumber">104</context>
</context-group>
<target state="translated">应用 AI 建议</target>
<target state="needs-translation">Apply AI Suggestions</target>
</trans-unit>
<trans-unit id="9172233176401579786" datatype="html">
<source>Scheduled</source>
@@ -3939,7 +3939,7 @@
<context context-type="sourcefile">src/app/components/manage/share-links/share-links.component.html</context>
<context context-type="linenumber">2,3</context>
</context-group>
<target state="translated">分享链接</target>
<target state="needs-translation">Share links</target>
</trans-unit>
<trans-unit id="7844706011418789951" datatype="html">
<source>Administration</source>
@@ -4259,7 +4259,7 @@
<context context-type="sourcefile">src/app/data/saved-view-icons.ts</context>
<context context-type="linenumber">21</context>
</context-group>
<target state="translated">聊天</target>
<target state="needs-translation">Chat</target>
</trans-unit>
<trans-unit id="8066608938393600549" datatype="html">
<source>Message</source>
@@ -4539,7 +4539,7 @@
<context context-type="sourcefile">src/app/components/common/confirm-dialog/reprocess-confirm-dialog/reprocess-confirm-dialog.component.html</context>
<context context-type="linenumber">16,17</context>
</context-group>
<target state="translated">使用远程 OCR</target>
<target state="needs-translation">Use remote OCR</target>
</trans-unit>
<trans-unit id="6733578401091585663" datatype="html">
<source>Sends the document to the configured remote OCR service, which may incur costs.</source>
@@ -4547,7 +4547,7 @@
<context context-type="sourcefile">src/app/components/common/confirm-dialog/reprocess-confirm-dialog/reprocess-confirm-dialog.component.html</context>
<context context-type="linenumber">17,18</context>
</context-group>
<target state="translated">将文档发送到已配置的远程 OCR 服务,可能会产生费用。</target>
<target state="needs-translation">Sends the document to the configured remote OCR service, which may incur costs.</target>
</trans-unit>
<trans-unit id="3883144805282469432" datatype="html">
<source>Rotate counterclockwise</source>
@@ -4655,7 +4655,7 @@
<context context-type="sourcefile">src/app/components/common/input/date/date.component.html</context>
<context context-type="linenumber">16</context>
</context-group>
<target state="translated">打开日期选择器</target>
<target state="needs-translation">Open date picker</target>
</trans-unit>
<trans-unit id="6048892649018070225" datatype="html">
<source>Today</source>
@@ -4779,7 +4779,7 @@
<context context-type="sourcefile">src/app/components/common/custom-fields-query-dropdown/custom-fields-query-dropdown.component.html</context>
<context context-type="linenumber">154</context>
</context-group>
<target state="translated">移除查询</target>
<target state="needs-translation">Remove query</target>
</trans-unit>
<trans-unit id="3184700926171002527" datatype="html">
<source>Any</source>
@@ -4823,7 +4823,7 @@
<context context-type="sourcefile">src/app/components/common/custom-fields-query-dropdown/custom-fields-query-dropdown.component.html</context>
<context context-type="linenumber">196</context>
</context-group>
<target state="translated">移除表达式</target>
<target state="needs-translation">Remove expression</target>
</trans-unit>
<trans-unit id="6630533861307510614" datatype="html">
<source>Clear created relative date</source>
@@ -6931,7 +6931,7 @@
<context context-type="sourcefile">src/app/data/paperless-config.ts</context>
<context context-type="linenumber">58</context>
</context-group>
<target state="translated">远程 OCR</target>
<target state="needs-translation">Remote OCR</target>
</trans-unit>
<trans-unit id="4101630920511881483" datatype="html">
<source>Apply AI suggestions</source>
@@ -6939,7 +6939,7 @@
<context context-type="sourcefile">src/app/components/common/edit-dialog/workflow-edit-dialog/workflow-edit-dialog.component.ts</context>
<context context-type="linenumber">159</context>
</context-group>
<target state="translated">应用 AI 建议</target>
<target state="needs-translation">Apply AI suggestions</target>
</trans-unit>
<trans-unit id="5701618810648052610" datatype="html">
<source>Title</source>
@@ -6975,7 +6975,7 @@
<context context-type="sourcefile">src/app/components/common/edit-dialog/workflow-edit-dialog/workflow-edit-dialog.component.ts</context>
<context context-type="linenumber">186</context>
</context-group>
<target state="translated">创建日期</target>
<target state="needs-translation">Created date</target>
</trans-unit>
<trans-unit id="4522609911791833187" datatype="html">
<source>Has any of these tags</source>
@@ -7396,7 +7396,7 @@
<context context-type="sourcefile">src/app/components/common/input/document-link/document-link.component.html</context>
<context context-type="linenumber">52,53</context>
</context-group>
<target state="translated">不可用</target>
<target state="needs-translation">Unavailable</target>
</trans-unit>
<trans-unit id="5676637575587497817" datatype="html">
<source>Search for documents</source>
@@ -7440,7 +7440,7 @@
<context context-type="sourcefile">src/app/components/common/input/entries/entries.component.html</context>
<context context-type="linenumber">16</context>
</context-group>
<target state="translated">移除条目</target>
<target state="needs-translation">Remove entry</target>
</trans-unit>
<trans-unit id="6932865105766151309" datatype="html">
<source>Upload</source>
@@ -7493,7 +7493,7 @@
<context context-type="sourcefile">src/app/components/common/input/select/select.component.html</context>
<context context-type="linenumber">41</context>
</context-group>
<target state="translated">移除项目</target>
<target state="needs-translation">Remove item</target>
</trans-unit>
<trans-unit id="3686284950598311784" datatype="html">
<source>Private</source>
@@ -7769,7 +7769,7 @@
<context context-type="sourcefile">src/app/components/common/permissions-filter-dropdown/permissions-filter-dropdown.component.html</context>
<context context-type="linenumber">61</context>
</context-group>
<target state="translated">清除选中的用户</target>
<target state="needs-translation">Clear selected users</target>
</trans-unit>
<trans-unit id="8999708063434507268" datatype="html">
<source>Hide unowned</source>
@@ -8481,7 +8481,7 @@
<context context-type="sourcefile">src/app/components/common/suggestions-dropdown/suggestions-dropdown.component.html</context>
<context context-type="linenumber">12,13</context>
</context-group>
<target state="translated">无建议</target>
<target state="needs-translation">No suggestions</target>
</trans-unit>
<trans-unit id="5320136382998259826" datatype="html">
<source>Suggest</source>
@@ -8533,7 +8533,7 @@
<context context-type="sourcefile">src/app/components/common/suggestions-dropdown/suggestions-dropdown.component.html</context>
<context context-type="linenumber">65,66</context>
</context-group>
<target state="translated">建议选项</target>
<target state="needs-translation">Suggestion options</target>
</trans-unit>
<trans-unit id="3145824396228856507" datatype="html">
<source>Not using default</source>
@@ -8541,7 +8541,7 @@
<context context-type="sourcefile">src/app/components/common/suggestions-dropdown/suggestions-dropdown.component.html</context>
<context context-type="linenumber">69,70</context>
</context-group>
<target state="translated">不使用默认值</target>
<target state="needs-translation">Not using default</target>
</trans-unit>
<trans-unit id="8102623853570619759" datatype="html">
<source>Suggest using:</source>
@@ -8549,7 +8549,7 @@
<context context-type="sourcefile">src/app/components/common/suggestions-dropdown/suggestions-dropdown.component.html</context>
<context context-type="linenumber">74,75</context>
</context-group>
<target state="translated">建议使用:</target>
<target state="needs-translation">Suggest using:</target>
</trans-unit>
<trans-unit id="5799391967036896978" datatype="html">
<source>ML</source>
@@ -8557,7 +8557,7 @@
<context context-type="sourcefile">src/app/components/common/suggestions-dropdown/suggestions-dropdown.component.html</context>
<context context-type="linenumber">77</context>
</context-group>
<target state="translated">ML</target>
<target state="needs-translation">ML</target>
</trans-unit>
<trans-unit id="3484984238852181071" datatype="html">
<source>AI</source>
@@ -8565,7 +8565,7 @@
<context context-type="sourcefile">src/app/components/common/suggestions-dropdown/suggestions-dropdown.component.html</context>
<context context-type="linenumber">81</context>
</context-group>
<target state="translated">AI</target>
<target state="needs-translation">AI</target>
</trans-unit>
<trans-unit id="9180110319941008393" datatype="html">
<source>Environment</source>
@@ -9219,7 +9219,7 @@
<context context-type="sourcefile">src/app/components/document-detail/document-barcodes/document-barcodes.component.html</context>
<context context-type="linenumber">40,41</context>
</context-group>
<target state="translated">复制内容</target>
<target state="needs-translation">Copy content</target>
</trans-unit>
<trans-unit id="2266163016683537825" datatype="html">
<source>of <x id="INTERPOLATION" equiv-text="{{previewNumPages()}}"/></source>
@@ -9255,7 +9255,7 @@
<context context-type="sourcefile">src/app/components/document-list/bulk-editor/bulk-editor.component.html</context>
<context context-type="linenumber">154</context>
</context-group>
<target state="translated">下载选项</target>
<target state="needs-translation">Download options</target>
</trans-unit>
<trans-unit id="8659635229098859487" datatype="html">
<source>Download original</source>
@@ -9479,7 +9479,7 @@
<context context-type="sourcefile">src/app/components/document-detail/document-detail.component.html</context>
<context context-type="linenumber">360,361</context>
</context-group>
<target state="translated">条形码</target>
<target state="needs-translation">Barcodes</target>
</trans-unit>
<trans-unit id="6992781481378431874" datatype="html">
<source>Original document metadata</source>
@@ -9727,7 +9727,7 @@
<context context-type="sourcefile">src/app/components/document-detail/document-detail.component.ts</context>
<context context-type="linenumber">1074</context>
</context-group>
<target state="translated">此版本的内容有未保存的更改。</target>
<target state="needs-translation">You have unsaved changes to the content of this version.</target>
</trans-unit>
<trans-unit id="85184271222513014" datatype="html">
<source>Switching versions will discard them.</source>
@@ -9735,7 +9735,7 @@
<context context-type="sourcefile">src/app/components/document-detail/document-detail.component.ts</context>
<context context-type="linenumber">1075</context>
</context-group>
<target state="translated">切换版本将丢弃这些更改。</target>
<target state="needs-translation">Switching versions will discard them.</target>
</trans-unit>
<trans-unit id="2565707334844767610" datatype="html">
<source>Discard and switch</source>
@@ -9743,7 +9743,7 @@
<context context-type="sourcefile">src/app/components/document-detail/document-detail.component.ts</context>
<context context-type="linenumber">1077</context>
</context-group>
<target state="translated">丢弃并切换</target>
<target state="needs-translation">Discard and switch</target>
</trans-unit>
<trans-unit id="2109314380040637387" datatype="html">
<source>Save and switch</source>
@@ -9751,7 +9751,7 @@
<context context-type="sourcefile">src/app/components/document-detail/document-detail.component.ts</context>
<context context-type="linenumber">1079</context>
</context-group>
<target state="translated">保存并切换</target>
<target state="needs-translation">Save and switch</target>
</trans-unit>
<trans-unit id="3456881259945295697" datatype="html">
<source>Error retrieving suggestions.</source>
@@ -9967,7 +9967,7 @@
<context context-type="sourcefile">src/app/components/document-detail/document-version-dropdown/add-existing-document-version-dialog/add-existing-document-version-dialog.component.html</context>
<context context-type="linenumber">13,14</context>
</context-group>
<target state="translated">请选择一份文档,将其添加为新版本。</target>
<target state="needs-translation">Select one document to add as a version.</target>
</trans-unit>
<trans-unit id="337558081609002420" datatype="html">
<source>Add version</source>
@@ -10011,7 +10011,7 @@
<context context-type="sourcefile">src/app/components/document-detail/document-version-dropdown/document-version-dropdown.component.html</context>
<context context-type="linenumber">35,36</context>
</context-group>
<target state="translated">上传新版本</target>
<target state="needs-translation">Upload a new version</target>
</trans-unit>
<trans-unit id="278763911843514709" datatype="html">
<source>Use an existing document</source>
@@ -10019,7 +10019,7 @@
<context context-type="sourcefile">src/app/components/document-detail/document-version-dropdown/document-version-dropdown.component.html</context>
<context context-type="linenumber">44,45</context>
</context-group>
<target state="translated">使用现有文档</target>
<target state="needs-translation">Use an existing document</target>
</trans-unit>
<trans-unit id="1906507263389090131" datatype="html">
<source>Existing</source>
@@ -10027,7 +10027,7 @@
<context context-type="sourcefile">src/app/components/document-detail/document-version-dropdown/document-version-dropdown.component.html</context>
<context context-type="linenumber">47,48</context>
</context-group>
<target state="translated">已有的</target>
<target state="needs-translation">Existing</target>
</trans-unit>
<trans-unit id="3119565892291077820" datatype="html">
<source>Uploading version...</source>
@@ -11234,7 +11234,7 @@
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">208</context>
</context-group>
<target state="translated">创建副本</target>
<target state="needs-translation">Duplicates</target>
</trans-unit>
<trans-unit id="8492379284173601938" datatype="html">
<source>Custom fields (Deprecated)</source>
@@ -11298,7 +11298,7 @@
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">252</context>
</context-group>
<target state="translated">存在</target>
<target state="needs-translation">exist</target>
</trans-unit>
<trans-unit id="4528435301189613620" datatype="html">
<source>do not exist</source>
@@ -11306,7 +11306,7 @@
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">256</context>
</context-group>
<target state="translated">不存在</target>
<target state="needs-translation">do not exist</target>
</trans-unit>
<trans-unit id="5195932016807797291" datatype="html">
<source>Correspondent: <x id="PH" equiv-text="this.correspondentSelectionModel.items.find( (c) =&gt; c.id == +rule.value )?.name"/></source>
@@ -11378,7 +11378,7 @@
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">343</context>
</context-group>
<target state="translated">无重复项</target>
<target state="needs-translation">Without duplicates</target>
</trans-unit>
<trans-unit id="8448347828886552444" datatype="html">
<source>With duplicates</source>
@@ -11386,7 +11386,7 @@
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">344</context>
</context-group>
<target state="translated">带重复项</target>
<target state="needs-translation">With duplicates</target>
</trans-unit>
<trans-unit id="8644099678903817943" datatype="html">
<source>Custom fields query</source>
@@ -11462,7 +11462,7 @@
<context context-type="sourcefile">src/app/components/manage/saved-views/saved-views.component.html</context>
<context context-type="linenumber">21</context>
</context-group>
<target state="translated">图标</target>
<target state="needs-translation">Icon</target>
</trans-unit>
<trans-unit id="8689274715612276035" datatype="html">
<source>Show in sidebar</source>
@@ -12515,7 +12515,7 @@
<context context-type="sourcefile">src/app/components/manage/share-links/share-link-list/share-link-list.component.html</context>
<context context-type="linenumber">40,41</context>
</context-group>
<target state="translated">已过期</target>
<target state="needs-translation">Expired</target>
</trans-unit>
<trans-unit id="2057574872309338088" datatype="html">
<source>Copy share link</source>
@@ -12559,7 +12559,7 @@
<context context-type="sourcefile">src/app/components/manage/share-links/share-link-bundle-list/share-link-bundle-list.component.html</context>
<context context-type="linenumber">164,165</context>
</context-group>
<target state="translated">分享链接合集分页</target>
<target state="needs-translation">Share link bundles pagination</target>
</trans-unit>
<trans-unit id="1541995860059283227" datatype="html">
<source>Failed to load share link bundles.</source>
@@ -12623,7 +12623,7 @@
<context context-type="sourcefile">src/app/components/manage/share-links/share-link-list/share-link-list.component.html</context>
<context context-type="linenumber">15,16</context>
</context-group>
<target state="translated">文档</target>
<target state="needs-translation">Document</target>
</trans-unit>
<trans-unit id="7420713064779772535" datatype="html">
<source>Delete share link</source>
@@ -12631,7 +12631,7 @@
<context context-type="sourcefile">src/app/components/manage/share-links/share-link-list/share-link-list.component.html</context>
<context context-type="linenumber">75,76</context>
</context-group>
<target state="translated">删除分享链接</target>
<target state="needs-translation">Delete share link</target>
</trans-unit>
<trans-unit id="5198271726831144068" datatype="html">
<source>Share links pagination</source>
@@ -12647,7 +12647,7 @@
<context context-type="sourcefile">src/app/components/manage/share-links/share-link-list/share-link-list.component.ts</context>
<context context-type="linenumber">105</context>
</context-group>
<target state="translated">加载分享链接失败。</target>
<target state="needs-translation">Failed to load share links.</target>
</trans-unit>
<trans-unit id="4100863040928608880" datatype="html">
<source>Error retrieving share links.</source>
@@ -12655,7 +12655,7 @@
<context context-type="sourcefile">src/app/components/manage/share-links/share-link-list/share-link-list.component.ts</context>
<context context-type="linenumber">107</context>
</context-group>
<target state="translated">获取分享链接失败。</target>
<target state="needs-translation">Error retrieving share links.</target>
</trans-unit>
<trans-unit id="326120283142363299" datatype="html">
<source>Share link deleted.</source>
@@ -12663,7 +12663,7 @@
<context context-type="sourcefile">src/app/components/manage/share-links/share-link-list/share-link-list.component.ts</context>
<context context-type="linenumber">154</context>
</context-group>
<target state="translated">分享链接已删除。</target>
<target state="needs-translation">Share link deleted.</target>
</trans-unit>
<trans-unit id="4964931417181298145" datatype="html">
<source>Error deleting share link.</source>
@@ -12671,7 +12671,7 @@
<context context-type="sourcefile">src/app/components/manage/share-links/share-link-list/share-link-list.component.ts</context>
<context context-type="linenumber">159</context>
</context-group>
<target state="translated">删除分享链接失败。</target>
<target state="needs-translation">Error deleting share link.</target>
</trans-unit>
<trans-unit id="3439104787814858626" datatype="html">
<source>Manage public links to individual documents and document bundles.</source>
@@ -12679,7 +12679,7 @@
<context context-type="sourcefile">src/app/components/manage/share-links/share-links.component.html</context>
<context context-type="linenumber">4,5</context>
</context-group>
<target state="translated">管理单个文档和文档合集的公开分享链接。</target>
<target state="needs-translation">Manage public links to individual documents and document bundles.</target>
</trans-unit>
<trans-unit id="3740311348735113099" datatype="html">
<source>Document links</source>
@@ -12687,7 +12687,7 @@
<context context-type="sourcefile">src/app/components/manage/share-links/share-links.component.html</context>
<context context-type="linenumber">18,19</context>
</context-group>
<target state="translated">文档链接</target>
<target state="needs-translation">Document links</target>
</trans-unit>
<trans-unit id="8216780576869093031" datatype="html">
<source>Bundles</source>
@@ -12695,7 +12695,7 @@
<context context-type="sourcefile">src/app/components/manage/share-links/share-links.component.html</context>
<context context-type="linenumber">26,27</context>
</context-group>
<target state="translated">捆绑包</target>
<target state="needs-translation">Bundles</target>
</trans-unit>
<trans-unit id="1229748338333965418" datatype="html">
<source>Use workflows to customize the behavior of Paperless-ngx when events &apos;trigger&apos; a workflow.</source>
@@ -13208,7 +13208,7 @@
<context context-type="sourcefile">src/app/data/paperless-config.ts</context>
<context context-type="linenumber">200</context>
</context-group>
<target state="translated">远程 OCR 引擎</target>
<target state="needs-translation">Remote OCR Engine</target>
</trans-unit>
<trans-unit id="2892372808177591734" datatype="html">
<source>Enabling remote OCR sends documents to a third-party service for processing. Consider the privacy implications as well as potential costs before enabling.</source>
@@ -13224,7 +13224,7 @@
<context context-type="sourcefile">src/app/data/paperless-config.ts</context>
<context context-type="linenumber">210</context>
</context-group>
<target state="translated">远程 OCR API 密钥</target>
<target state="needs-translation">Remote OCR API Key</target>
</trans-unit>
<trans-unit id="8592973963881683840" datatype="html">
<source>Remote OCR Endpoint</source>
@@ -13232,7 +13232,7 @@
<context context-type="sourcefile">src/app/data/paperless-config.ts</context>
<context context-type="linenumber">218</context>
</context-group>
<target state="translated">远程 OCR 端点</target>
<target state="needs-translation">Remote OCR Endpoint</target>
</trans-unit>
<trans-unit id="2477780225973884032" datatype="html">
<source>Required when using the Azure AI engine.</source>
@@ -13240,7 +13240,7 @@
<context context-type="sourcefile">src/app/data/paperless-config.ts</context>
<context context-type="linenumber">223</context>
</context-group>
<target state="translated">使用 Azure AI 引擎时必填。</target>
<target state="needs-translation">Required when using the Azure AI engine.</target>
</trans-unit>
<trans-unit id="2908398258708722139" datatype="html">
<source>Remote OCR Mode</source>
@@ -13248,7 +13248,7 @@
<context context-type="sourcefile">src/app/data/paperless-config.ts</context>
<context context-type="linenumber">227</context>
</context-group>
<target state="translated">远程 OCR 模式</target>
<target state="needs-translation">Remote OCR Mode</target>
</trans-unit>
<trans-unit id="4022045371405916558" datatype="html">
<source>Which documents are sent to the remote engine. Use &apos;workflow_only&apos; to keep remote OCR off unless a workflow enables it for a document.</source>
+6 -6
View File
@@ -479,7 +479,7 @@
<context context-type="sourcefile">src/app/app.component.ts</context>
<context context-type="linenumber">201</context>
</context-group>
<target state="translated">標籤、關聯方、文件類型、儲存路徑與自訂欄位等文件屬性皆可在此處管理,亦可在「文件編輯」檢視中建立。</target>
<target state="translated">標籤、關聯方、文件類型、儲存路徑與自訂欄位等屬性皆可在此處管理,亦可在「文件編輯」檢視中建立。</target>
</trans-unit>
<trans-unit id="7851939076947092983" datatype="html">
<source>Manage e-mail accounts and rules for automatically importing documents.</source>
@@ -3859,7 +3859,7 @@
<context context-type="sourcefile">src/app/components/app-frame/app-frame.component.html</context>
<context context-type="linenumber">195</context>
</context-group>
<target state="translated">文件屬性</target>
<target state="translated">屬性</target>
</trans-unit>
<trans-unit id="7437910965833684826" datatype="html">
<source>Correspondents</source>
@@ -8525,7 +8525,7 @@
<context context-type="sourcefile">src/app/components/common/suggestions-dropdown/suggestions-dropdown.component.html</context>
<context context-type="linenumber">54</context>
</context-group>
<target state="translated">{VAR_PLURAL, plural, =1 {以下有 1 個可用建議} other {以下有 <x id="INTERPOLATION"/> 個可用建議}}</target>
<target state="needs-translation">{VAR_PLURAL, plural, =1 {1 suggestion available below} other {<x id="INTERPOLATION"/> suggestions available below}}</target>
</trans-unit>
<trans-unit id="4169875112244042673" datatype="html">
<source>Suggestion options</source>
@@ -9219,7 +9219,7 @@
<context context-type="sourcefile">src/app/components/document-detail/document-barcodes/document-barcodes.component.html</context>
<context context-type="linenumber">40,41</context>
</context-group>
<target state="translated">拷貝內容</target>
<target state="needs-translation">Copy content</target>
</trans-unit>
<trans-unit id="2266163016683537825" datatype="html">
<source>of <x id="INTERPOLATION" equiv-text="{{previewNumPages()}}"/></source>
@@ -9479,7 +9479,7 @@
<context context-type="sourcefile">src/app/components/document-detail/document-detail.component.html</context>
<context context-type="linenumber">360,361</context>
</context-group>
<target state="translated">條碼</target>
<target state="needs-translation">Barcodes</target>
</trans-unit>
<trans-unit id="6992781481378431874" datatype="html">
<source>Original document metadata</source>
@@ -13376,7 +13376,7 @@
<context context-type="sourcefile">src/app/data/paperless-config.ts</context>
<context context-type="linenumber">335</context>
</context-group>
<target state="translated">儲存條碼內容</target>
<target state="needs-translation">Store Barcode Contents</target>
</trans-unit>
<trans-unit id="7011909364081812031" datatype="html">
<source>AI Enabled</source>
+8
View File
@@ -28,6 +28,7 @@ from rest_framework.permissions import BasePermission
from rest_framework.permissions import DjangoObjectPermissions
from documents.models import Document
from documents.versioning import get_root_document
class PaperlessObjectPermissions(DjangoObjectPermissions):
@@ -679,7 +680,14 @@ def has_perms_owner_aware(user, perms, obj):
single-object check still has many production callers. Several callers
remain across ``documents/``, ``paperless_mail/``, and ``paperless_ai/``
-- grep for this function name before removing it.
A document version is authorized by its root document, like in
``permitted_document_ids``, so a version's own owner and grants never
matter. Fetch the root with ``select_related("root_document__owner")`` to
avoid extra queries.
"""
if isinstance(obj, Document):
obj = get_root_document(obj)
checker = ObjectPermissionChecker(user)
return obj.owner is None or obj.owner == user or checker.has_perm(perms, obj)
+1 -2
View File
@@ -90,7 +90,6 @@ from documents.templating.utils import convert_format_str_to_template_format
from documents.templating.workflows import validate_workflow_template
from documents.validators import uri_validator
from documents.validators import url_validator
from documents.versioning import get_root_document
from documents.versioning import has_prefetched_effective_content
from documents.versioning import sort_versions_newest_first
@@ -2895,7 +2894,7 @@ class ShareLinkSerializer(OwnedObjectSerializer):
and has_perms_owner_aware(
self.user,
"view_document",
get_root_document(document),
document,
)
):
return document
@@ -18,6 +18,7 @@ from documents.models import Correspondent
from documents.models import DocumentType
from documents.models import StoragePath
from documents.models import Tag
from documents.permissions import has_perms_owner_aware
from documents.permissions import permitted_document_ids
from documents.permissions import permitted_object_ids
from documents.permissions import restrict_queryset_to_visible
@@ -470,6 +471,92 @@ class TestPermittedDocumentIdsVersions:
)
@pytest.mark.django_db
class TestHasPermsOwnerAwareVersions:
"""
The single-object check agrees with permitted_document_ids: a version is
authorized by its root document.
"""
@pytest.mark.parametrize(
("root_owner", "version_owner", "expected"),
[
pytest.param(
"other",
"nobody",
False,
id="unowned-version-of-private-root",
),
pytest.param("other", "user", False, id="own-version-of-private-root"),
pytest.param("user", "other", True, id="foreign-version-of-own-root"),
pytest.param("nobody", "other", True, id="private-version-of-unowned-root"),
],
)
def test_version_follows_root_owner(
self,
root_owner: str,
version_owner: str,
*,
expected: bool,
) -> None:
"""
GIVEN:
- A root document and a version with differing owners
WHEN:
- The single-object check runs for the version
THEN:
- The version is allowed exactly when its root is
"""
user = UserFactory()
owners = {"user": user, "other": UserFactory(), "nobody": None}
root = DocumentFactory(owner=owners[root_owner])
version = DocumentFactory(root_document=root, owner=owners[version_owner])
assert has_perms_owner_aware(user, "view_document", version) is expected
assert has_perms_owner_aware(user, "view_document", root) is expected
def test_grant_on_root_applies_and_grant_on_version_does_not(self) -> None:
"""
GIVEN:
- A private root with a version, and a second private root with a version
- The user may change only the first root, and was granted the second
root's version directly
WHEN:
- The single-object check runs for each version
THEN:
- Only the first root's version is allowed
"""
user = UserFactory()
shared_root = DocumentFactory(owner=UserFactory())
shared_version = DocumentFactory(root_document=shared_root, owner=UserFactory())
private_root = DocumentFactory(owner=UserFactory())
private_version = DocumentFactory(
root_document=private_root,
owner=UserFactory(),
)
grant_object(user, shared_root, "change_document")
grant_object(user, private_version, "change_document")
assert has_perms_owner_aware(user, "change_document", shared_version)
assert not has_perms_owner_aware(user, "change_document", private_version)
def test_other_models_use_their_own_owner(self) -> None:
"""
GIVEN:
- A tag owned by someone else, and one owned by the user
WHEN:
- The single-object check runs for each
THEN:
- Only the user's own tag is allowed without a grant
"""
user = UserFactory()
mine = TagFactory(owner=user)
theirs = TagFactory(owner=UserFactory())
assert has_perms_owner_aware(user, "view_tag", mine)
assert not has_perms_owner_aware(user, "view_tag", theirs)
@pytest.mark.django_db
class TestAiChatAllDocumentsPermissionBoundary:
"""
+7 -7
View File
@@ -1559,7 +1559,7 @@ class DocumentViewSet(
if request.user is not None and not has_perms_owner_aware(
request.user,
"change_document",
get_root_document(doc),
doc,
):
return HttpResponseForbidden("Insufficient permissions")
@@ -1622,7 +1622,7 @@ class DocumentViewSet(
if request.user is not None and not has_perms_owner_aware(
request.user,
"change_document",
get_root_document(doc),
doc,
):
return HttpResponseForbidden("Insufficient permissions")
@@ -1875,7 +1875,7 @@ class DocumentViewSet(
if currentUser is not None and not has_perms_owner_aware(
currentUser,
"view_document",
get_root_document(doc),
doc,
):
return HttpResponseForbidden("Insufficient permissions to view notes")
except Document.DoesNotExist:
@@ -1897,7 +1897,7 @@ class DocumentViewSet(
if currentUser is not None and not has_perms_owner_aware(
currentUser,
"change_document",
get_root_document(doc),
doc,
):
return HttpResponseForbidden(
"Insufficient permissions to create notes",
@@ -1940,7 +1940,7 @@ class DocumentViewSet(
if currentUser is not None and not has_perms_owner_aware(
currentUser,
"change_document",
get_root_document(doc),
doc,
):
return HttpResponseForbidden("Insufficient permissions to delete notes")
@@ -1990,7 +1990,7 @@ class DocumentViewSet(
if currentUser is not None and not has_perms_owner_aware(
currentUser,
"change_document",
get_root_document(doc),
doc,
):
return HttpResponseForbidden(
"Insufficient permissions to add share link",
@@ -2451,7 +2451,7 @@ class ChatStreamingView(GenericAPIView[Any]):
if not has_perms_owner_aware(
request.user,
"view_document",
get_root_document(document),
document,
):
return HttpResponseForbidden("Insufficient permissions")
+39 -24
View File
@@ -2,8 +2,8 @@ msgid ""
msgstr ""
"Project-Id-Version: paperless-ngx\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2026-10-10 22:04+0000\n"
"PO-Revision-Date: 2026-10-10 22:05\n"
"POT-Creation-Date: 2026-10-05 16:26+0000\n"
"PO-Revision-Date: 2026-10-05 16:27\n"
"Last-Translator: \n"
"Language-Team: Afrikaans\n"
"Language: af_ZA\n"
@@ -1635,48 +1635,48 @@ msgstr ""
msgid "workflow runs"
msgstr ""
#: documents/serialisers.py:516 documents/serialisers.py:873
#: documents/serialisers.py:2903 documents/views.py:343 documents/views.py:2750
#: documents/serialisers.py:515 documents/serialisers.py:872
#: documents/serialisers.py:2902 documents/views.py:343 documents/views.py:2732
#: paperless_mail/serialisers.py:156
msgid "Insufficient permissions."
msgstr ""
#: documents/serialisers.py:709
#: documents/serialisers.py:708
msgid "Invalid color."
msgstr "Ongeldige kleur."
#: documents/serialisers.py:2370
#: documents/serialisers.py:2369
#, python-format
msgid "File type %(type)s not supported"
msgstr "Lêertipe %(type)s word nie ondersteun nie"
#: documents/serialisers.py:2414
#: documents/serialisers.py:2413
#, python-format
msgid "Custom field id must be an integer: %(id)s"
msgstr ""
#: documents/serialisers.py:2421
#: documents/serialisers.py:2420
#, python-format
msgid "Custom field with id %(id)s does not exist"
msgstr ""
#: documents/serialisers.py:2438 documents/serialisers.py:2448
#: documents/serialisers.py:2437 documents/serialisers.py:2447
msgid "Custom fields must be a list of integers or an object mapping ids to values."
msgstr ""
#: documents/serialisers.py:2443
#: documents/serialisers.py:2442
msgid "Some custom fields don't exist or were specified twice."
msgstr ""
#: documents/serialisers.py:2590
#: documents/serialisers.py:2589
msgid "Invalid variable detected."
msgstr "Ongeldige veranderlike bespeur."
#: documents/serialisers.py:2959
#: documents/serialisers.py:2958
msgid "Duplicate document identifiers are not allowed."
msgstr ""
#: documents/serialisers.py:2989 documents/views.py:4797
#: documents/serialisers.py:2988 documents/views.py:4787
#, python-format
msgid "Documents not found: %(ids)s"
msgstr ""
@@ -1912,44 +1912,59 @@ msgstr ""
msgid "As a final step, please complete the following form:"
msgstr ""
#: documents/validators.py:36
msgid ", "
#: documents/validators.py:24
#, python-brace-format
msgid "Unable to parse URI {value}, missing scheme"
msgstr ""
#: documents/views.py:336 documents/views.py:2747
#: documents/validators.py:29
#, python-brace-format
msgid "Unable to parse URI {value}, missing net location or path"
msgstr ""
#: documents/validators.py:36
msgid "URI scheme '{parts.scheme}' is not allowed. Allowed schemes: {', '.join(allowed_schemes)}"
msgstr ""
#: documents/validators.py:45
#, python-brace-format
msgid "Unable to parse URI {value}"
msgstr ""
#: documents/views.py:336 documents/views.py:2729
msgid "Invalid more_like_id"
msgstr ""
#: documents/views.py:1682
#: documents/views.py:1676
msgid "Invalid AI configuration."
msgstr ""
#: documents/views.py:1693
#: documents/views.py:1687
msgid "AI backend request timed out."
msgstr ""
#: documents/views.py:1705
#: documents/views.py:1699
msgid "AI backend rejected the request. Check logs for details."
msgstr ""
#: documents/views.py:2572 documents/views.py:2888
#: documents/views.py:2554 documents/views.py:2870
msgid "Specify only one of text, title_search, query, or more_like_id."
msgstr ""
#: documents/views.py:4813
#: documents/views.py:4800
#, python-format
msgid "Insufficient permissions to share document %(id)s."
msgstr ""
#: documents/views.py:4860
#: documents/views.py:4846
msgid "Bundle is already being processed."
msgstr ""
#: documents/views.py:4924
#: documents/views.py:4910
msgid "The share link bundle is still being prepared. Please try again later."
msgstr ""
#: documents/views.py:4938
#: documents/views.py:4924
msgid "The share link bundle is unavailable."
msgstr ""
+39 -24
View File
@@ -2,8 +2,8 @@ msgid ""
msgstr ""
"Project-Id-Version: paperless-ngx\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2026-10-10 22:04+0000\n"
"PO-Revision-Date: 2026-10-10 22:05\n"
"POT-Creation-Date: 2026-10-05 16:26+0000\n"
"PO-Revision-Date: 2026-10-05 16:27\n"
"Last-Translator: \n"
"Language-Team: Amharic\n"
"Language: am_ET\n"
@@ -1635,48 +1635,48 @@ msgstr ""
msgid "workflow runs"
msgstr ""
#: documents/serialisers.py:516 documents/serialisers.py:873
#: documents/serialisers.py:2903 documents/views.py:343 documents/views.py:2750
#: documents/serialisers.py:515 documents/serialisers.py:872
#: documents/serialisers.py:2902 documents/views.py:343 documents/views.py:2732
#: paperless_mail/serialisers.py:156
msgid "Insufficient permissions."
msgstr ""
#: documents/serialisers.py:709
#: documents/serialisers.py:708
msgid "Invalid color."
msgstr ""
#: documents/serialisers.py:2370
#: documents/serialisers.py:2369
#, python-format
msgid "File type %(type)s not supported"
msgstr ""
#: documents/serialisers.py:2414
#: documents/serialisers.py:2413
#, python-format
msgid "Custom field id must be an integer: %(id)s"
msgstr ""
#: documents/serialisers.py:2421
#: documents/serialisers.py:2420
#, python-format
msgid "Custom field with id %(id)s does not exist"
msgstr ""
#: documents/serialisers.py:2438 documents/serialisers.py:2448
#: documents/serialisers.py:2437 documents/serialisers.py:2447
msgid "Custom fields must be a list of integers or an object mapping ids to values."
msgstr ""
#: documents/serialisers.py:2443
#: documents/serialisers.py:2442
msgid "Some custom fields don't exist or were specified twice."
msgstr ""
#: documents/serialisers.py:2590
#: documents/serialisers.py:2589
msgid "Invalid variable detected."
msgstr ""
#: documents/serialisers.py:2959
#: documents/serialisers.py:2958
msgid "Duplicate document identifiers are not allowed."
msgstr ""
#: documents/serialisers.py:2989 documents/views.py:4797
#: documents/serialisers.py:2988 documents/views.py:4787
#, python-format
msgid "Documents not found: %(ids)s"
msgstr ""
@@ -1912,44 +1912,59 @@ msgstr ""
msgid "As a final step, please complete the following form:"
msgstr ""
#: documents/validators.py:36
msgid ", "
#: documents/validators.py:24
#, python-brace-format
msgid "Unable to parse URI {value}, missing scheme"
msgstr ""
#: documents/views.py:336 documents/views.py:2747
#: documents/validators.py:29
#, python-brace-format
msgid "Unable to parse URI {value}, missing net location or path"
msgstr ""
#: documents/validators.py:36
msgid "URI scheme '{parts.scheme}' is not allowed. Allowed schemes: {', '.join(allowed_schemes)}"
msgstr ""
#: documents/validators.py:45
#, python-brace-format
msgid "Unable to parse URI {value}"
msgstr ""
#: documents/views.py:336 documents/views.py:2729
msgid "Invalid more_like_id"
msgstr ""
#: documents/views.py:1682
#: documents/views.py:1676
msgid "Invalid AI configuration."
msgstr ""
#: documents/views.py:1693
#: documents/views.py:1687
msgid "AI backend request timed out."
msgstr ""
#: documents/views.py:1705
#: documents/views.py:1699
msgid "AI backend rejected the request. Check logs for details."
msgstr ""
#: documents/views.py:2572 documents/views.py:2888
#: documents/views.py:2554 documents/views.py:2870
msgid "Specify only one of text, title_search, query, or more_like_id."
msgstr ""
#: documents/views.py:4813
#: documents/views.py:4800
#, python-format
msgid "Insufficient permissions to share document %(id)s."
msgstr ""
#: documents/views.py:4860
#: documents/views.py:4846
msgid "Bundle is already being processed."
msgstr ""
#: documents/views.py:4924
#: documents/views.py:4910
msgid "The share link bundle is still being prepared. Please try again later."
msgstr ""
#: documents/views.py:4938
#: documents/views.py:4924
msgid "The share link bundle is unavailable."
msgstr ""
+39 -24
View File
@@ -2,8 +2,8 @@ msgid ""
msgstr ""
"Project-Id-Version: paperless-ngx\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2026-10-10 22:04+0000\n"
"PO-Revision-Date: 2026-10-10 22:05\n"
"POT-Creation-Date: 2026-10-05 16:26+0000\n"
"PO-Revision-Date: 2026-10-05 16:27\n"
"Last-Translator: \n"
"Language-Team: Arabic\n"
"Language: ar_SA\n"
@@ -1635,48 +1635,48 @@ msgstr ""
msgid "workflow runs"
msgstr ""
#: documents/serialisers.py:516 documents/serialisers.py:873
#: documents/serialisers.py:2903 documents/views.py:343 documents/views.py:2750
#: documents/serialisers.py:515 documents/serialisers.py:872
#: documents/serialisers.py:2902 documents/views.py:343 documents/views.py:2732
#: paperless_mail/serialisers.py:156
msgid "Insufficient permissions."
msgstr ""
#: documents/serialisers.py:709
#: documents/serialisers.py:708
msgid "Invalid color."
msgstr "لون خاطئ."
#: documents/serialisers.py:2370
#: documents/serialisers.py:2369
#, python-format
msgid "File type %(type)s not supported"
msgstr "نوع الملف %(type)s غير مدعوم"
#: documents/serialisers.py:2414
#: documents/serialisers.py:2413
#, python-format
msgid "Custom field id must be an integer: %(id)s"
msgstr ""
#: documents/serialisers.py:2421
#: documents/serialisers.py:2420
#, python-format
msgid "Custom field with id %(id)s does not exist"
msgstr ""
#: documents/serialisers.py:2438 documents/serialisers.py:2448
#: documents/serialisers.py:2437 documents/serialisers.py:2447
msgid "Custom fields must be a list of integers or an object mapping ids to values."
msgstr ""
#: documents/serialisers.py:2443
#: documents/serialisers.py:2442
msgid "Some custom fields don't exist or were specified twice."
msgstr ""
#: documents/serialisers.py:2590
#: documents/serialisers.py:2589
msgid "Invalid variable detected."
msgstr "اكتشاف متغير خاطئ."
#: documents/serialisers.py:2959
#: documents/serialisers.py:2958
msgid "Duplicate document identifiers are not allowed."
msgstr ""
#: documents/serialisers.py:2989 documents/views.py:4797
#: documents/serialisers.py:2988 documents/views.py:4787
#, python-format
msgid "Documents not found: %(ids)s"
msgstr ""
@@ -1913,44 +1913,59 @@ msgstr "أنت على وشك استعمال حسابك في %(provider_name)s ل
msgid "As a final step, please complete the following form:"
msgstr "كخطوة أخيرة، يرجى ملء النموذج التالي:"
#: documents/validators.py:36
msgid ", "
#: documents/validators.py:24
#, python-brace-format
msgid "Unable to parse URI {value}, missing scheme"
msgstr ""
#: documents/views.py:336 documents/views.py:2747
#: documents/validators.py:29
#, python-brace-format
msgid "Unable to parse URI {value}, missing net location or path"
msgstr ""
#: documents/validators.py:36
msgid "URI scheme '{parts.scheme}' is not allowed. Allowed schemes: {', '.join(allowed_schemes)}"
msgstr ""
#: documents/validators.py:45
#, python-brace-format
msgid "Unable to parse URI {value}"
msgstr ""
#: documents/views.py:336 documents/views.py:2729
msgid "Invalid more_like_id"
msgstr ""
#: documents/views.py:1682
#: documents/views.py:1676
msgid "Invalid AI configuration."
msgstr ""
#: documents/views.py:1693
#: documents/views.py:1687
msgid "AI backend request timed out."
msgstr ""
#: documents/views.py:1705
#: documents/views.py:1699
msgid "AI backend rejected the request. Check logs for details."
msgstr ""
#: documents/views.py:2572 documents/views.py:2888
#: documents/views.py:2554 documents/views.py:2870
msgid "Specify only one of text, title_search, query, or more_like_id."
msgstr ""
#: documents/views.py:4813
#: documents/views.py:4800
#, python-format
msgid "Insufficient permissions to share document %(id)s."
msgstr ""
#: documents/views.py:4860
#: documents/views.py:4846
msgid "Bundle is already being processed."
msgstr ""
#: documents/views.py:4924
#: documents/views.py:4910
msgid "The share link bundle is still being prepared. Please try again later."
msgstr ""
#: documents/views.py:4938
#: documents/views.py:4924
msgid "The share link bundle is unavailable."
msgstr ""
+39 -24
View File
@@ -2,8 +2,8 @@ msgid ""
msgstr ""
"Project-Id-Version: paperless-ngx\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2026-10-10 22:04+0000\n"
"PO-Revision-Date: 2026-10-10 22:05\n"
"POT-Creation-Date: 2026-10-05 16:26+0000\n"
"PO-Revision-Date: 2026-10-05 16:27\n"
"Last-Translator: \n"
"Language-Team: Belarusian\n"
"Language: be_BY\n"
@@ -1635,48 +1635,48 @@ msgstr ""
msgid "workflow runs"
msgstr ""
#: documents/serialisers.py:516 documents/serialisers.py:873
#: documents/serialisers.py:2903 documents/views.py:343 documents/views.py:2750
#: documents/serialisers.py:515 documents/serialisers.py:872
#: documents/serialisers.py:2902 documents/views.py:343 documents/views.py:2732
#: paperless_mail/serialisers.py:156
msgid "Insufficient permissions."
msgstr ""
#: documents/serialisers.py:709
#: documents/serialisers.py:708
msgid "Invalid color."
msgstr "Няправільны колер."
#: documents/serialisers.py:2370
#: documents/serialisers.py:2369
#, python-format
msgid "File type %(type)s not supported"
msgstr "Тып файла %(type)s не падтрымліваецца"
#: documents/serialisers.py:2414
#: documents/serialisers.py:2413
#, python-format
msgid "Custom field id must be an integer: %(id)s"
msgstr ""
#: documents/serialisers.py:2421
#: documents/serialisers.py:2420
#, python-format
msgid "Custom field with id %(id)s does not exist"
msgstr ""
#: documents/serialisers.py:2438 documents/serialisers.py:2448
#: documents/serialisers.py:2437 documents/serialisers.py:2447
msgid "Custom fields must be a list of integers or an object mapping ids to values."
msgstr ""
#: documents/serialisers.py:2443
#: documents/serialisers.py:2442
msgid "Some custom fields don't exist or were specified twice."
msgstr ""
#: documents/serialisers.py:2590
#: documents/serialisers.py:2589
msgid "Invalid variable detected."
msgstr "Выяўлена няправільная зменная."
#: documents/serialisers.py:2959
#: documents/serialisers.py:2958
msgid "Duplicate document identifiers are not allowed."
msgstr ""
#: documents/serialisers.py:2989 documents/views.py:4797
#: documents/serialisers.py:2988 documents/views.py:4787
#, python-format
msgid "Documents not found: %(ids)s"
msgstr ""
@@ -1912,44 +1912,59 @@ msgstr ""
msgid "As a final step, please complete the following form:"
msgstr ""
#: documents/validators.py:36
msgid ", "
#: documents/validators.py:24
#, python-brace-format
msgid "Unable to parse URI {value}, missing scheme"
msgstr ""
#: documents/views.py:336 documents/views.py:2747
#: documents/validators.py:29
#, python-brace-format
msgid "Unable to parse URI {value}, missing net location or path"
msgstr ""
#: documents/validators.py:36
msgid "URI scheme '{parts.scheme}' is not allowed. Allowed schemes: {', '.join(allowed_schemes)}"
msgstr ""
#: documents/validators.py:45
#, python-brace-format
msgid "Unable to parse URI {value}"
msgstr ""
#: documents/views.py:336 documents/views.py:2729
msgid "Invalid more_like_id"
msgstr ""
#: documents/views.py:1682
#: documents/views.py:1676
msgid "Invalid AI configuration."
msgstr ""
#: documents/views.py:1693
#: documents/views.py:1687
msgid "AI backend request timed out."
msgstr ""
#: documents/views.py:1705
#: documents/views.py:1699
msgid "AI backend rejected the request. Check logs for details."
msgstr ""
#: documents/views.py:2572 documents/views.py:2888
#: documents/views.py:2554 documents/views.py:2870
msgid "Specify only one of text, title_search, query, or more_like_id."
msgstr ""
#: documents/views.py:4813
#: documents/views.py:4800
#, python-format
msgid "Insufficient permissions to share document %(id)s."
msgstr ""
#: documents/views.py:4860
#: documents/views.py:4846
msgid "Bundle is already being processed."
msgstr ""
#: documents/views.py:4924
#: documents/views.py:4910
msgid "The share link bundle is still being prepared. Please try again later."
msgstr ""
#: documents/views.py:4938
#: documents/views.py:4924
msgid "The share link bundle is unavailable."
msgstr ""
+39 -24
View File
@@ -2,8 +2,8 @@ msgid ""
msgstr ""
"Project-Id-Version: paperless-ngx\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2026-10-10 22:04+0000\n"
"PO-Revision-Date: 2026-10-10 22:05\n"
"POT-Creation-Date: 2026-10-05 16:26+0000\n"
"PO-Revision-Date: 2026-10-05 16:27\n"
"Last-Translator: \n"
"Language-Team: Bulgarian\n"
"Language: bg_BG\n"
@@ -1635,48 +1635,48 @@ msgstr "стартиране на работния процес"
msgid "workflow runs"
msgstr "стартиране на работните процеси"
#: documents/serialisers.py:516 documents/serialisers.py:873
#: documents/serialisers.py:2903 documents/views.py:343 documents/views.py:2750
#: documents/serialisers.py:515 documents/serialisers.py:872
#: documents/serialisers.py:2902 documents/views.py:343 documents/views.py:2732
#: paperless_mail/serialisers.py:156
msgid "Insufficient permissions."
msgstr ""
#: documents/serialisers.py:709
#: documents/serialisers.py:708
msgid "Invalid color."
msgstr "Невалиден цвят."
#: documents/serialisers.py:2370
#: documents/serialisers.py:2369
#, python-format
msgid "File type %(type)s not supported"
msgstr "Файловия тип %(type)s не се поддържа"
#: documents/serialisers.py:2414
#: documents/serialisers.py:2413
#, python-format
msgid "Custom field id must be an integer: %(id)s"
msgstr ""
#: documents/serialisers.py:2421
#: documents/serialisers.py:2420
#, python-format
msgid "Custom field with id %(id)s does not exist"
msgstr ""
#: documents/serialisers.py:2438 documents/serialisers.py:2448
#: documents/serialisers.py:2437 documents/serialisers.py:2447
msgid "Custom fields must be a list of integers or an object mapping ids to values."
msgstr ""
#: documents/serialisers.py:2443
#: documents/serialisers.py:2442
msgid "Some custom fields don't exist or were specified twice."
msgstr ""
#: documents/serialisers.py:2590
#: documents/serialisers.py:2589
msgid "Invalid variable detected."
msgstr "Засечена е невалидна променлива."
#: documents/serialisers.py:2959
#: documents/serialisers.py:2958
msgid "Duplicate document identifiers are not allowed."
msgstr ""
#: documents/serialisers.py:2989 documents/views.py:4797
#: documents/serialisers.py:2988 documents/views.py:4787
#, python-format
msgid "Documents not found: %(ids)s"
msgstr ""
@@ -1913,44 +1913,59 @@ msgstr "На път сте да използвате профила си в %(pr
msgid "As a final step, please complete the following form:"
msgstr "Като последна стъпка, моля, попълнете следната форма:"
#: documents/validators.py:36
msgid ", "
#: documents/validators.py:24
#, python-brace-format
msgid "Unable to parse URI {value}, missing scheme"
msgstr ""
#: documents/views.py:336 documents/views.py:2747
#: documents/validators.py:29
#, python-brace-format
msgid "Unable to parse URI {value}, missing net location or path"
msgstr ""
#: documents/validators.py:36
msgid "URI scheme '{parts.scheme}' is not allowed. Allowed schemes: {', '.join(allowed_schemes)}"
msgstr ""
#: documents/validators.py:45
#, python-brace-format
msgid "Unable to parse URI {value}"
msgstr ""
#: documents/views.py:336 documents/views.py:2729
msgid "Invalid more_like_id"
msgstr ""
#: documents/views.py:1682
#: documents/views.py:1676
msgid "Invalid AI configuration."
msgstr ""
#: documents/views.py:1693
#: documents/views.py:1687
msgid "AI backend request timed out."
msgstr ""
#: documents/views.py:1705
#: documents/views.py:1699
msgid "AI backend rejected the request. Check logs for details."
msgstr ""
#: documents/views.py:2572 documents/views.py:2888
#: documents/views.py:2554 documents/views.py:2870
msgid "Specify only one of text, title_search, query, or more_like_id."
msgstr ""
#: documents/views.py:4813
#: documents/views.py:4800
#, python-format
msgid "Insufficient permissions to share document %(id)s."
msgstr ""
#: documents/views.py:4860
#: documents/views.py:4846
msgid "Bundle is already being processed."
msgstr ""
#: documents/views.py:4924
#: documents/views.py:4910
msgid "The share link bundle is still being prepared. Please try again later."
msgstr ""
#: documents/views.py:4938
#: documents/views.py:4924
msgid "The share link bundle is unavailable."
msgstr ""
+40 -25
View File
@@ -2,8 +2,8 @@ msgid ""
msgstr ""
"Project-Id-Version: paperless-ngx\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2026-10-10 22:04+0000\n"
"PO-Revision-Date: 2026-10-10 22:05\n"
"POT-Creation-Date: 2026-10-05 16:26+0000\n"
"PO-Revision-Date: 2026-10-05 16:27\n"
"Last-Translator: \n"
"Language-Team: Catalan\n"
"Language: ca_ES\n"
@@ -1635,48 +1635,48 @@ msgstr "data del flux"
msgid "workflow runs"
msgstr "flux corrents"
#: documents/serialisers.py:516 documents/serialisers.py:873
#: documents/serialisers.py:2903 documents/views.py:343 documents/views.py:2750
#: documents/serialisers.py:515 documents/serialisers.py:872
#: documents/serialisers.py:2902 documents/views.py:343 documents/views.py:2732
#: paperless_mail/serialisers.py:156
msgid "Insufficient permissions."
msgstr "Permisos insuficients."
#: documents/serialisers.py:709
#: documents/serialisers.py:708
msgid "Invalid color."
msgstr "Color Invàlid."
#: documents/serialisers.py:2370
#: documents/serialisers.py:2369
#, python-format
msgid "File type %(type)s not supported"
msgstr "Tipus arxiu %(type)s no suportat"
#: documents/serialisers.py:2414
#: documents/serialisers.py:2413
#, python-format
msgid "Custom field id must be an integer: %(id)s"
msgstr "ID de camp personalizat ha de ser enter: %(id)s"
#: documents/serialisers.py:2421
#: documents/serialisers.py:2420
#, python-format
msgid "Custom field with id %(id)s does not exist"
msgstr "Camp personalitzat amb ID %(id)s no existeix"
#: documents/serialisers.py:2438 documents/serialisers.py:2448
#: documents/serialisers.py:2437 documents/serialisers.py:2447
msgid "Custom fields must be a list of integers or an object mapping ids to values."
msgstr "Camps personalitzats han de ser una llista d'enters o un objecte que mapegi els identificadors amb els valors."
#: documents/serialisers.py:2443
#: documents/serialisers.py:2442
msgid "Some custom fields don't exist or were specified twice."
msgstr "Alguns camps personalitzats no existeixen o s'han especificat dues vegades."
#: documents/serialisers.py:2590
#: documents/serialisers.py:2589
msgid "Invalid variable detected."
msgstr "Variable detectada invàlida."
#: documents/serialisers.py:2959
#: documents/serialisers.py:2958
msgid "Duplicate document identifiers are not allowed."
msgstr "Duplicat d'identificadors de documents no permès."
#: documents/serialisers.py:2989 documents/views.py:4797
#: documents/serialisers.py:2988 documents/views.py:4787
#, python-format
msgid "Documents not found: %(ids)s"
msgstr "Documents no trobats: %(ids)s"
@@ -1913,44 +1913,59 @@ msgstr "Estàs a punt d'emprar el teu %(provider_name)s compte per a fer login."
msgid "As a final step, please complete the following form:"
msgstr "Com a pas final, completa el següent formulari:"
#: documents/validators.py:36
msgid ", "
msgstr ""
#: documents/validators.py:24
#, python-brace-format
msgid "Unable to parse URI {value}, missing scheme"
msgstr "No es pot analitzar l'URI {value}, falta l'esquema"
#: documents/views.py:336 documents/views.py:2747
#: documents/validators.py:29
#, python-brace-format
msgid "Unable to parse URI {value}, missing net location or path"
msgstr "No es pot analitzar l'URI {value}, falta la ubicació de xarxa o la ruta"
#: documents/validators.py:36
msgid "URI scheme '{parts.scheme}' is not allowed. Allowed schemes: {', '.join(allowed_schemes)}"
msgstr "L'esquema d'URI '{parts.scheme}' no està permès. Esquemes permesos: {', '.join(allowed_schemes)}"
#: documents/validators.py:45
#, python-brace-format
msgid "Unable to parse URI {value}"
msgstr "No s'ha pogut analitzar l'URI {value}"
#: documents/views.py:336 documents/views.py:2729
msgid "Invalid more_like_id"
msgstr "Invalid more_like_id"
#: documents/views.py:1682
#: documents/views.py:1676
msgid "Invalid AI configuration."
msgstr "Configuració AI invàlida."
#: documents/views.py:1693
#: documents/views.py:1687
msgid "AI backend request timed out."
msgstr ""
#: documents/views.py:1705
#: documents/views.py:1699
msgid "AI backend rejected the request. Check logs for details."
msgstr ""
#: documents/views.py:2572 documents/views.py:2888
#: documents/views.py:2554 documents/views.py:2870
msgid "Specify only one of text, title_search, query, or more_like_id."
msgstr "Especifica només un dels següents valors: text, title_search, query o more_like_id."
#: documents/views.py:4813
#: documents/views.py:4800
#, python-format
msgid "Insufficient permissions to share document %(id)s."
msgstr "Permisos insuficients per compartir document %(id)s."
#: documents/views.py:4860
#: documents/views.py:4846
msgid "Bundle is already being processed."
msgstr "Paquet ja s'està processant."
#: documents/views.py:4924
#: documents/views.py:4910
msgid "The share link bundle is still being prepared. Please try again later."
msgstr "El paquet de link encarà s'està preparant. Prova de nou més tard."
#: documents/views.py:4938
#: documents/views.py:4924
msgid "The share link bundle is unavailable."
msgstr "El paquet d'enllaç no està disponible."
+41 -25
View File
@@ -2,8 +2,8 @@ msgid ""
msgstr ""
"Project-Id-Version: paperless-ngx\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2026-10-10 22:04+0000\n"
"PO-Revision-Date: 2026-10-10 22:05\n"
"POT-Creation-Date: 2026-10-05 16:26+0000\n"
"PO-Revision-Date: 2026-10-05 16:27\n"
"Last-Translator: \n"
"Language-Team: Czech\n"
"Language: cs_CZ\n"
@@ -1635,48 +1635,48 @@ msgstr "spuštění pracovního postupu"
msgid "workflow runs"
msgstr "spuštění pracovních postupů"
#: documents/serialisers.py:516 documents/serialisers.py:873
#: documents/serialisers.py:2903 documents/views.py:343 documents/views.py:2750
#: documents/serialisers.py:515 documents/serialisers.py:872
#: documents/serialisers.py:2902 documents/views.py:343 documents/views.py:2732
#: paperless_mail/serialisers.py:156
msgid "Insufficient permissions."
msgstr "Nedostatečná oprávnění."
#: documents/serialisers.py:709
#: documents/serialisers.py:708
msgid "Invalid color."
msgstr "Neplatná barva."
#: documents/serialisers.py:2370
#: documents/serialisers.py:2369
#, python-format
msgid "File type %(type)s not supported"
msgstr "Typ souboru %(type)s není podporován"
#: documents/serialisers.py:2414
#: documents/serialisers.py:2413
#, python-format
msgid "Custom field id must be an integer: %(id)s"
msgstr "Vlastní ID pole musí být celé číslo: %(id)s"
#: documents/serialisers.py:2421
#: documents/serialisers.py:2420
#, python-format
msgid "Custom field with id %(id)s does not exist"
msgstr "Vlastní pole s ID %(id)s neexistuje"
#: documents/serialisers.py:2438 documents/serialisers.py:2448
#: documents/serialisers.py:2437 documents/serialisers.py:2447
msgid "Custom fields must be a list of integers or an object mapping ids to values."
msgstr "Vlastní pole musí být seznam celých čísel nebo ID pro mapování objektů na hodnoty."
#: documents/serialisers.py:2443
#: documents/serialisers.py:2442
msgid "Some custom fields don't exist or were specified twice."
msgstr "Některá vlastní pole neexistují nebo byla zadána dvakrát."
#: documents/serialisers.py:2590
#: documents/serialisers.py:2589
msgid "Invalid variable detected."
msgstr "Zjištěna neplatná proměnná."
#: documents/serialisers.py:2959
#: documents/serialisers.py:2958
msgid "Duplicate document identifiers are not allowed."
msgstr ""
#: documents/serialisers.py:2989 documents/views.py:4797
#: documents/serialisers.py:2988 documents/views.py:4787
#, python-format
msgid "Documents not found: %(ids)s"
msgstr ""
@@ -1913,44 +1913,60 @@ msgstr "Chystáte se použít svůj účet %(provider_name)s k přihlášení."
msgid "As a final step, please complete the following form:"
msgstr "Jako poslední krok vyplňte následující formulář:"
#: documents/validators.py:36
msgid ", "
msgstr ""
#: documents/validators.py:24
#, python-brace-format
msgid "Unable to parse URI {value}, missing scheme"
msgstr "Nelze analyzovat URI {value}, chybí schéma"
#: documents/views.py:336 documents/views.py:2747
#: documents/validators.py:29
#, python-brace-format
msgid "Unable to parse URI {value}, missing net location or path"
msgstr "Nelze analyzovat URI {value}, chybí síťové umístění nebo cesta"
#: documents/validators.py:36
msgid "URI scheme '{parts.scheme}' is not allowed. Allowed schemes: {', '.join(allowed_schemes)}"
msgstr "URI schéma '{parts.scheme}' není povoleno. Povolená schémata: {',\n"
"'.join(allowed_schemes)}"
#: documents/validators.py:45
#, python-brace-format
msgid "Unable to parse URI {value}"
msgstr "Nelze zpracovat URI {value}"
#: documents/views.py:336 documents/views.py:2729
msgid "Invalid more_like_id"
msgstr ""
#: documents/views.py:1682
#: documents/views.py:1676
msgid "Invalid AI configuration."
msgstr ""
#: documents/views.py:1693
#: documents/views.py:1687
msgid "AI backend request timed out."
msgstr ""
#: documents/views.py:1705
#: documents/views.py:1699
msgid "AI backend rejected the request. Check logs for details."
msgstr ""
#: documents/views.py:2572 documents/views.py:2888
#: documents/views.py:2554 documents/views.py:2870
msgid "Specify only one of text, title_search, query, or more_like_id."
msgstr ""
#: documents/views.py:4813
#: documents/views.py:4800
#, python-format
msgid "Insufficient permissions to share document %(id)s."
msgstr "Nedostatečná oprávnění ke sdílení dokumentu %(id)s."
#: documents/views.py:4860
#: documents/views.py:4846
msgid "Bundle is already being processed."
msgstr ""
#: documents/views.py:4924
#: documents/views.py:4910
msgid "The share link bundle is still being prepared. Please try again later."
msgstr ""
#: documents/views.py:4938
#: documents/views.py:4924
msgid "The share link bundle is unavailable."
msgstr ""
+39 -24
View File
@@ -2,8 +2,8 @@ msgid ""
msgstr ""
"Project-Id-Version: paperless-ngx\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2026-10-10 22:04+0000\n"
"PO-Revision-Date: 2026-10-10 22:05\n"
"POT-Creation-Date: 2026-10-05 16:26+0000\n"
"PO-Revision-Date: 2026-10-05 16:27\n"
"Last-Translator: \n"
"Language-Team: Danish\n"
"Language: da_DK\n"
@@ -1635,48 +1635,48 @@ msgstr "workflow-kørsel"
msgid "workflow runs"
msgstr "workflow-kørsler"
#: documents/serialisers.py:516 documents/serialisers.py:873
#: documents/serialisers.py:2903 documents/views.py:343 documents/views.py:2750
#: documents/serialisers.py:515 documents/serialisers.py:872
#: documents/serialisers.py:2902 documents/views.py:343 documents/views.py:2732
#: paperless_mail/serialisers.py:156
msgid "Insufficient permissions."
msgstr ""
#: documents/serialisers.py:709
#: documents/serialisers.py:708
msgid "Invalid color."
msgstr "Ugyldig farve."
#: documents/serialisers.py:2370
#: documents/serialisers.py:2369
#, python-format
msgid "File type %(type)s not supported"
msgstr "Filtype %(type)s understøttes ikke"
#: documents/serialisers.py:2414
#: documents/serialisers.py:2413
#, python-format
msgid "Custom field id must be an integer: %(id)s"
msgstr ""
#: documents/serialisers.py:2421
#: documents/serialisers.py:2420
#, python-format
msgid "Custom field with id %(id)s does not exist"
msgstr ""
#: documents/serialisers.py:2438 documents/serialisers.py:2448
#: documents/serialisers.py:2437 documents/serialisers.py:2447
msgid "Custom fields must be a list of integers or an object mapping ids to values."
msgstr ""
#: documents/serialisers.py:2443
#: documents/serialisers.py:2442
msgid "Some custom fields don't exist or were specified twice."
msgstr ""
#: documents/serialisers.py:2590
#: documents/serialisers.py:2589
msgid "Invalid variable detected."
msgstr "Ugyldig variabel fundet."
#: documents/serialisers.py:2959
#: documents/serialisers.py:2958
msgid "Duplicate document identifiers are not allowed."
msgstr ""
#: documents/serialisers.py:2989 documents/views.py:4797
#: documents/serialisers.py:2988 documents/views.py:4787
#, python-format
msgid "Documents not found: %(ids)s"
msgstr ""
@@ -1913,44 +1913,59 @@ msgstr "En %(provider_name)s-konto er ved at blive brugt til indlogning."
msgid "As a final step, please complete the following form:"
msgstr "Som sidste trin, udfyld venligst flg. formular:"
#: documents/validators.py:36
msgid ", "
#: documents/validators.py:24
#, python-brace-format
msgid "Unable to parse URI {value}, missing scheme"
msgstr ""
#: documents/views.py:336 documents/views.py:2747
#: documents/validators.py:29
#, python-brace-format
msgid "Unable to parse URI {value}, missing net location or path"
msgstr ""
#: documents/validators.py:36
msgid "URI scheme '{parts.scheme}' is not allowed. Allowed schemes: {', '.join(allowed_schemes)}"
msgstr ""
#: documents/validators.py:45
#, python-brace-format
msgid "Unable to parse URI {value}"
msgstr ""
#: documents/views.py:336 documents/views.py:2729
msgid "Invalid more_like_id"
msgstr ""
#: documents/views.py:1682
#: documents/views.py:1676
msgid "Invalid AI configuration."
msgstr ""
#: documents/views.py:1693
#: documents/views.py:1687
msgid "AI backend request timed out."
msgstr ""
#: documents/views.py:1705
#: documents/views.py:1699
msgid "AI backend rejected the request. Check logs for details."
msgstr ""
#: documents/views.py:2572 documents/views.py:2888
#: documents/views.py:2554 documents/views.py:2870
msgid "Specify only one of text, title_search, query, or more_like_id."
msgstr ""
#: documents/views.py:4813
#: documents/views.py:4800
#, python-format
msgid "Insufficient permissions to share document %(id)s."
msgstr ""
#: documents/views.py:4860
#: documents/views.py:4846
msgid "Bundle is already being processed."
msgstr ""
#: documents/views.py:4924
#: documents/views.py:4910
msgid "The share link bundle is still being prepared. Please try again later."
msgstr ""
#: documents/views.py:4938
#: documents/views.py:4924
msgid "The share link bundle is unavailable."
msgstr ""
+40 -25
View File
@@ -2,8 +2,8 @@ msgid ""
msgstr ""
"Project-Id-Version: paperless-ngx\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2026-10-10 22:04+0000\n"
"PO-Revision-Date: 2026-10-10 22:05\n"
"POT-Creation-Date: 2026-10-05 16:26+0000\n"
"PO-Revision-Date: 2026-10-05 16:27\n"
"Last-Translator: \n"
"Language-Team: German, Switzerland\n"
"Language: de_CH\n"
@@ -1635,48 +1635,48 @@ msgstr "Arbeitsablauf-Ausführung"
msgid "workflow runs"
msgstr "Arbeitsablauf wird ausgeführt"
#: documents/serialisers.py:516 documents/serialisers.py:873
#: documents/serialisers.py:2903 documents/views.py:343 documents/views.py:2750
#: documents/serialisers.py:515 documents/serialisers.py:872
#: documents/serialisers.py:2902 documents/views.py:343 documents/views.py:2732
#: paperless_mail/serialisers.py:156
msgid "Insufficient permissions."
msgstr "Unzureichende Berechtigungen."
#: documents/serialisers.py:709
#: documents/serialisers.py:708
msgid "Invalid color."
msgstr "Ungültige Farbe."
#: documents/serialisers.py:2370
#: documents/serialisers.py:2369
#, python-format
msgid "File type %(type)s not supported"
msgstr "Dateityp %(type)s nicht unterstützt"
#: documents/serialisers.py:2414
#: documents/serialisers.py:2413
#, python-format
msgid "Custom field id must be an integer: %(id)s"
msgstr "Feld-ID eines benutzerdefinierten Felds muss eine Ganzzahl sein: %(id)s"
#: documents/serialisers.py:2421
#: documents/serialisers.py:2420
#, python-format
msgid "Custom field with id %(id)s does not exist"
msgstr "Benutzerdefiniertes Feld mit ID %(id)s existiert nicht"
#: documents/serialisers.py:2438 documents/serialisers.py:2448
#: documents/serialisers.py:2437 documents/serialisers.py:2447
msgid "Custom fields must be a list of integers or an object mapping ids to values."
msgstr "Benutzerdefinierte Felder müssen eine Liste von Ganzzahlen oder ein Objekt mit Zuordnung von IDs zu Werten sein."
#: documents/serialisers.py:2443
#: documents/serialisers.py:2442
msgid "Some custom fields don't exist or were specified twice."
msgstr "Einige benutzerdefinierte Felder existieren nicht oder wurden zweimal angegeben."
#: documents/serialisers.py:2590
#: documents/serialisers.py:2589
msgid "Invalid variable detected."
msgstr "Ungültige Variable erkannt."
#: documents/serialisers.py:2959
#: documents/serialisers.py:2958
msgid "Duplicate document identifiers are not allowed."
msgstr "Doppelte Dokumentbezeichner sind nicht erlaubt."
#: documents/serialisers.py:2989 documents/views.py:4797
#: documents/serialisers.py:2988 documents/views.py:4787
#, python-format
msgid "Documents not found: %(ids)s"
msgstr "Dokumente nicht gefunden: %(ids)s"
@@ -1913,44 +1913,59 @@ msgstr "Sie sind dabei, Ihr %(provider_name)s-Konto zur Anmeldung zu verwenden."
msgid "As a final step, please complete the following form:"
msgstr "Bitte füllen Sie zum Abschluss folgendes Formular aus:"
#: documents/validators.py:36
msgid ", "
msgstr ""
#: documents/validators.py:24
#, python-brace-format
msgid "Unable to parse URI {value}, missing scheme"
msgstr "URI {value} kann nicht gelesen werden, fehlendes Schema"
#: documents/views.py:336 documents/views.py:2747
#: documents/validators.py:29
#, python-brace-format
msgid "Unable to parse URI {value}, missing net location or path"
msgstr "URI {value} kann nicht gelesen werden, Netzadresse oder Pfad fehlt"
#: documents/validators.py:36
msgid "URI scheme '{parts.scheme}' is not allowed. Allowed schemes: {', '.join(allowed_schemes)}"
msgstr "URI-Schema „{parts.scheme}“ ist nicht erlaubt. Erlaubte Schemata: {', '.join(allowed_schemes)}"
#: documents/validators.py:45
#, python-brace-format
msgid "Unable to parse URI {value}"
msgstr "URI {value} kann nicht gelesen werden"
#: documents/views.py:336 documents/views.py:2729
msgid "Invalid more_like_id"
msgstr "Ungültige more_like_id"
#: documents/views.py:1682
#: documents/views.py:1676
msgid "Invalid AI configuration."
msgstr "Ungültige KI-Konfiguration."
#: documents/views.py:1693
#: documents/views.py:1687
msgid "AI backend request timed out."
msgstr ""
#: documents/views.py:1705
#: documents/views.py:1699
msgid "AI backend rejected the request. Check logs for details."
msgstr ""
#: documents/views.py:2572 documents/views.py:2888
#: documents/views.py:2554 documents/views.py:2870
msgid "Specify only one of text, title_search, query, or more_like_id."
msgstr "Geben Sie nur einen von text, title_search, query, oder more_like_id an."
#: documents/views.py:4813
#: documents/views.py:4800
#, python-format
msgid "Insufficient permissions to share document %(id)s."
msgstr "Unzureichende Berechtigungen, um Dokument %(id)s zu teilen."
#: documents/views.py:4860
#: documents/views.py:4846
msgid "Bundle is already being processed."
msgstr "Paket wird bereits verarbeitet."
#: documents/views.py:4924
#: documents/views.py:4910
msgid "The share link bundle is still being prepared. Please try again later."
msgstr "Das Freigabelink-Paket wird noch vorbereitet. Bitte versuchen Sie es später erneut."
#: documents/views.py:4938
#: documents/views.py:4924
msgid "The share link bundle is unavailable."
msgstr "Das Freigabelink-Paket ist nicht verfügbar."
+40 -25
View File
@@ -2,8 +2,8 @@ msgid ""
msgstr ""
"Project-Id-Version: paperless-ngx\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2026-10-10 22:04+0000\n"
"PO-Revision-Date: 2026-10-10 22:05\n"
"POT-Creation-Date: 2026-10-05 16:26+0000\n"
"PO-Revision-Date: 2026-10-06 00:56\n"
"Last-Translator: \n"
"Language-Team: German\n"
"Language: de_DE\n"
@@ -1635,48 +1635,48 @@ msgstr "Arbeitsablauf-Ausführung"
msgid "workflow runs"
msgstr "Arbeitsablauf wird ausgeführt"
#: documents/serialisers.py:516 documents/serialisers.py:873
#: documents/serialisers.py:2903 documents/views.py:343 documents/views.py:2750
#: documents/serialisers.py:515 documents/serialisers.py:872
#: documents/serialisers.py:2902 documents/views.py:343 documents/views.py:2732
#: paperless_mail/serialisers.py:156
msgid "Insufficient permissions."
msgstr "Unzureichende Berechtigungen."
#: documents/serialisers.py:709
#: documents/serialisers.py:708
msgid "Invalid color."
msgstr "Ungültige Farbe."
#: documents/serialisers.py:2370
#: documents/serialisers.py:2369
#, python-format
msgid "File type %(type)s not supported"
msgstr "Dateityp %(type)s nicht unterstützt"
#: documents/serialisers.py:2414
#: documents/serialisers.py:2413
#, python-format
msgid "Custom field id must be an integer: %(id)s"
msgstr "Zusatzfeld-ID muss eine Ganzzahl sein: %(id)s"
#: documents/serialisers.py:2421
#: documents/serialisers.py:2420
#, python-format
msgid "Custom field with id %(id)s does not exist"
msgstr "Zusatzfeld mit ID %(id)s existiert nicht"
#: documents/serialisers.py:2438 documents/serialisers.py:2448
#: documents/serialisers.py:2437 documents/serialisers.py:2447
msgid "Custom fields must be a list of integers or an object mapping ids to values."
msgstr "Zusatzfelder müssen eine Liste von Ganzzahlen oder ein Objekt mit Zuordnung von IDs zu Werten sein."
#: documents/serialisers.py:2443
#: documents/serialisers.py:2442
msgid "Some custom fields don't exist or were specified twice."
msgstr "Einige Zusatzfelder existieren nicht oder wurden zweimal angegeben."
#: documents/serialisers.py:2590
#: documents/serialisers.py:2589
msgid "Invalid variable detected."
msgstr "Ungültige Variable erkannt."
#: documents/serialisers.py:2959
#: documents/serialisers.py:2958
msgid "Duplicate document identifiers are not allowed."
msgstr "Doppelte Dokumentbezeichner sind nicht erlaubt."
#: documents/serialisers.py:2989 documents/views.py:4797
#: documents/serialisers.py:2988 documents/views.py:4787
#, python-format
msgid "Documents not found: %(ids)s"
msgstr "Dokumente nicht gefunden: %(ids)s"
@@ -1913,44 +1913,59 @@ msgstr "Sie sind dabei, Ihr %(provider_name)s-Konto zur Anmeldung zu verwenden."
msgid "As a final step, please complete the following form:"
msgstr "Bitte füllen Sie zum Abschluss folgendes Formular aus:"
#: documents/validators.py:36
msgid ", "
msgstr ""
#: documents/validators.py:24
#, python-brace-format
msgid "Unable to parse URI {value}, missing scheme"
msgstr "URI {value} kann nicht gelesen werden, fehlendes Schema"
#: documents/views.py:336 documents/views.py:2747
#: documents/validators.py:29
#, python-brace-format
msgid "Unable to parse URI {value}, missing net location or path"
msgstr "URI {value} kann nicht gelesen werden, Netzadresse oder Pfad fehlt"
#: documents/validators.py:36
msgid "URI scheme '{parts.scheme}' is not allowed. Allowed schemes: {', '.join(allowed_schemes)}"
msgstr "URI-Schema „{parts.scheme}“ ist nicht erlaubt. Erlaubte Schemata: {', '.join(allowed_schemes)}"
#: documents/validators.py:45
#, python-brace-format
msgid "Unable to parse URI {value}"
msgstr "URI {value} kann nicht gelesen werden"
#: documents/views.py:336 documents/views.py:2729
msgid "Invalid more_like_id"
msgstr "Ungültige more_like_id"
#: documents/views.py:1682
#: documents/views.py:1676
msgid "Invalid AI configuration."
msgstr "Ungültige KI-Konfiguration."
#: documents/views.py:1693
#: documents/views.py:1687
msgid "AI backend request timed out."
msgstr "Zeitüberschreitung bei der KI-Backendanfrage."
#: documents/views.py:1705
#: documents/views.py:1699
msgid "AI backend rejected the request. Check logs for details."
msgstr "Das KI-Backend hat die Anfrage abgelehnt. Details in den Protokollen."
#: documents/views.py:2572 documents/views.py:2888
#: documents/views.py:2554 documents/views.py:2870
msgid "Specify only one of text, title_search, query, or more_like_id."
msgstr "Geben Sie nur einen von text, title_search, query, oder more_like_id an."
#: documents/views.py:4813
#: documents/views.py:4800
#, python-format
msgid "Insufficient permissions to share document %(id)s."
msgstr "Unzureichende Berechtigungen, um Dokument %(id)s zu teilen."
#: documents/views.py:4860
#: documents/views.py:4846
msgid "Bundle is already being processed."
msgstr "Paket wird bereits verarbeitet."
#: documents/views.py:4924
#: documents/views.py:4910
msgid "The share link bundle is still being prepared. Please try again later."
msgstr "Das Freigabelink-Paket wird noch vorbereitet. Bitte versuchen Sie es später erneut."
#: documents/views.py:4938
#: documents/views.py:4924
msgid "The share link bundle is unavailable."
msgstr "Das Freigabelink-Paket ist nicht verfügbar."
+39 -24
View File
@@ -2,8 +2,8 @@ msgid ""
msgstr ""
"Project-Id-Version: paperless-ngx\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2026-10-10 22:04+0000\n"
"PO-Revision-Date: 2026-10-10 22:05\n"
"POT-Creation-Date: 2026-10-05 16:26+0000\n"
"PO-Revision-Date: 2026-10-05 16:27\n"
"Last-Translator: \n"
"Language-Team: Greek\n"
"Language: el_GR\n"
@@ -1635,48 +1635,48 @@ msgstr "εκτέλεση ροής εργασίας"
msgid "workflow runs"
msgstr "εκτελέσεις ροής εργασίας"
#: documents/serialisers.py:516 documents/serialisers.py:873
#: documents/serialisers.py:2903 documents/views.py:343 documents/views.py:2750
#: documents/serialisers.py:515 documents/serialisers.py:872
#: documents/serialisers.py:2902 documents/views.py:343 documents/views.py:2732
#: paperless_mail/serialisers.py:156
msgid "Insufficient permissions."
msgstr ""
#: documents/serialisers.py:709
#: documents/serialisers.py:708
msgid "Invalid color."
msgstr "Άκυρο χρώμα."
#: documents/serialisers.py:2370
#: documents/serialisers.py:2369
#, python-format
msgid "File type %(type)s not supported"
msgstr "Ο τύπος αρχείου %(type)s δεν υποστηρίζεται"
#: documents/serialisers.py:2414
#: documents/serialisers.py:2413
#, python-format
msgid "Custom field id must be an integer: %(id)s"
msgstr ""
#: documents/serialisers.py:2421
#: documents/serialisers.py:2420
#, python-format
msgid "Custom field with id %(id)s does not exist"
msgstr ""
#: documents/serialisers.py:2438 documents/serialisers.py:2448
#: documents/serialisers.py:2437 documents/serialisers.py:2447
msgid "Custom fields must be a list of integers or an object mapping ids to values."
msgstr ""
#: documents/serialisers.py:2443
#: documents/serialisers.py:2442
msgid "Some custom fields don't exist or were specified twice."
msgstr ""
#: documents/serialisers.py:2590
#: documents/serialisers.py:2589
msgid "Invalid variable detected."
msgstr "Εντοπίστηκε μη έγκυρη μεταβλητή."
#: documents/serialisers.py:2959
#: documents/serialisers.py:2958
msgid "Duplicate document identifiers are not allowed."
msgstr ""
#: documents/serialisers.py:2989 documents/views.py:4797
#: documents/serialisers.py:2988 documents/views.py:4787
#, python-format
msgid "Documents not found: %(ids)s"
msgstr ""
@@ -1913,44 +1913,59 @@ msgstr "Πρόκειται να χρησιμοποιήσετε το λογαρι
msgid "As a final step, please complete the following form:"
msgstr "Ως τελικό βήμα, παρακαλούμε να συμπληρώσετε την ακόλουθη φόρμα:"
#: documents/validators.py:36
msgid ", "
#: documents/validators.py:24
#, python-brace-format
msgid "Unable to parse URI {value}, missing scheme"
msgstr ""
#: documents/views.py:336 documents/views.py:2747
#: documents/validators.py:29
#, python-brace-format
msgid "Unable to parse URI {value}, missing net location or path"
msgstr ""
#: documents/validators.py:36
msgid "URI scheme '{parts.scheme}' is not allowed. Allowed schemes: {', '.join(allowed_schemes)}"
msgstr ""
#: documents/validators.py:45
#, python-brace-format
msgid "Unable to parse URI {value}"
msgstr ""
#: documents/views.py:336 documents/views.py:2729
msgid "Invalid more_like_id"
msgstr ""
#: documents/views.py:1682
#: documents/views.py:1676
msgid "Invalid AI configuration."
msgstr ""
#: documents/views.py:1693
#: documents/views.py:1687
msgid "AI backend request timed out."
msgstr ""
#: documents/views.py:1705
#: documents/views.py:1699
msgid "AI backend rejected the request. Check logs for details."
msgstr ""
#: documents/views.py:2572 documents/views.py:2888
#: documents/views.py:2554 documents/views.py:2870
msgid "Specify only one of text, title_search, query, or more_like_id."
msgstr ""
#: documents/views.py:4813
#: documents/views.py:4800
#, python-format
msgid "Insufficient permissions to share document %(id)s."
msgstr ""
#: documents/views.py:4860
#: documents/views.py:4846
msgid "Bundle is already being processed."
msgstr ""
#: documents/views.py:4924
#: documents/views.py:4910
msgid "The share link bundle is still being prepared. Please try again later."
msgstr ""
#: documents/views.py:4938
#: documents/views.py:4924
msgid "The share link bundle is unavailable."
msgstr ""
+12 -12
View File
@@ -2,7 +2,7 @@ msgid ""
msgstr ""
"Project-Id-Version: paperless-ngx\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2026-10-10 22:04+0000\n"
"POT-Creation-Date: 2026-10-08 18:39+0000\n"
"PO-Revision-Date: 2022-02-17 04:17\n"
"Last-Translator: \n"
"Language-Team: English\n"
@@ -1653,7 +1653,7 @@ msgid "workflow runs"
msgstr ""
#: documents/serialisers.py:516 documents/serialisers.py:873
#: documents/serialisers.py:2903 documents/views.py:343 documents/views.py:2750
#: documents/serialisers.py:2903 documents/views.py:344 documents/views.py:2751
#: paperless_mail/serialisers.py:156
msgid "Insufficient permissions."
msgstr ""
@@ -1694,7 +1694,7 @@ msgstr ""
msgid "Duplicate document identifiers are not allowed."
msgstr ""
#: documents/serialisers.py:2989 documents/views.py:4797
#: documents/serialisers.py:2989 documents/views.py:4807
#, python-format
msgid "Documents not found: %(ids)s"
msgstr ""
@@ -1945,40 +1945,40 @@ msgstr ""
msgid ", "
msgstr ""
#: documents/views.py:336 documents/views.py:2747
#: documents/views.py:337 documents/views.py:2748
msgid "Invalid more_like_id"
msgstr ""
#: documents/views.py:1682
#: documents/views.py:1683
msgid "Invalid AI configuration."
msgstr ""
#: documents/views.py:1693
#: documents/views.py:1694
msgid "AI backend request timed out."
msgstr ""
#: documents/views.py:1705
#: documents/views.py:1706
msgid "AI backend rejected the request. Check logs for details."
msgstr ""
#: documents/views.py:2572 documents/views.py:2888
#: documents/views.py:2573 documents/views.py:2889
msgid "Specify only one of text, title_search, query, or more_like_id."
msgstr ""
#: documents/views.py:4813
#: documents/views.py:4823
#, python-format
msgid "Insufficient permissions to share document %(id)s."
msgstr ""
#: documents/views.py:4860
#: documents/views.py:4870
msgid "Bundle is already being processed."
msgstr ""
#: documents/views.py:4924
#: documents/views.py:4934
msgid "The share link bundle is still being prepared. Please try again later."
msgstr ""
#: documents/views.py:4938
#: documents/views.py:4948
msgid "The share link bundle is unavailable."
msgstr ""
+40 -25
View File
@@ -2,8 +2,8 @@ msgid ""
msgstr ""
"Project-Id-Version: paperless-ngx\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2026-10-10 22:04+0000\n"
"PO-Revision-Date: 2026-10-10 22:05\n"
"POT-Creation-Date: 2026-10-05 16:26+0000\n"
"PO-Revision-Date: 2026-10-05 16:27\n"
"Last-Translator: \n"
"Language-Team: Spanish\n"
"Language: es_ES\n"
@@ -1635,48 +1635,48 @@ msgstr "ejecución del flujo de trabajo"
msgid "workflow runs"
msgstr "ejecuciones de flujo de trabajo"
#: documents/serialisers.py:516 documents/serialisers.py:873
#: documents/serialisers.py:2903 documents/views.py:343 documents/views.py:2750
#: documents/serialisers.py:515 documents/serialisers.py:872
#: documents/serialisers.py:2902 documents/views.py:343 documents/views.py:2732
#: paperless_mail/serialisers.py:156
msgid "Insufficient permissions."
msgstr "Permisos insuficientes."
#: documents/serialisers.py:709
#: documents/serialisers.py:708
msgid "Invalid color."
msgstr "Color inválido."
#: documents/serialisers.py:2370
#: documents/serialisers.py:2369
#, python-format
msgid "File type %(type)s not supported"
msgstr "Tipo de fichero %(type)s no suportado"
#: documents/serialisers.py:2414
#: documents/serialisers.py:2413
#, python-format
msgid "Custom field id must be an integer: %(id)s"
msgstr "El id del campo personalizado debe ser un entero: %(id)s"
#: documents/serialisers.py:2421
#: documents/serialisers.py:2420
#, python-format
msgid "Custom field with id %(id)s does not exist"
msgstr "El campo personalizado con identificador %(id)s no existe"
#: documents/serialisers.py:2438 documents/serialisers.py:2448
#: documents/serialisers.py:2437 documents/serialisers.py:2447
msgid "Custom fields must be a list of integers or an object mapping ids to values."
msgstr "Los campos personalizados deben ser una lista de enteros o un identificador de mapeo de objetos a valores."
#: documents/serialisers.py:2443
#: documents/serialisers.py:2442
msgid "Some custom fields don't exist or were specified twice."
msgstr "Algunos campos personalizados no existen o fueron especificados dos veces."
#: documents/serialisers.py:2590
#: documents/serialisers.py:2589
msgid "Invalid variable detected."
msgstr "Variable inválida."
#: documents/serialisers.py:2959
#: documents/serialisers.py:2958
msgid "Duplicate document identifiers are not allowed."
msgstr "No se permiten identificadores de documento duplicados."
#: documents/serialisers.py:2989 documents/views.py:4797
#: documents/serialisers.py:2988 documents/views.py:4787
#, python-format
msgid "Documents not found: %(ids)s"
msgstr "Documentos no encontrados: %(ids)s"
@@ -1913,44 +1913,59 @@ msgstr "Estás a punto de usar tu cuenta de %(provider_name)s para iniciar sesi
msgid "As a final step, please complete the following form:"
msgstr "Como último paso, por favor complete el siguiente formulario:"
#: documents/validators.py:36
msgid ", "
msgstr ""
#: documents/validators.py:24
#, python-brace-format
msgid "Unable to parse URI {value}, missing scheme"
msgstr "No se puede analizar la URI {value}, falta el esquema"
#: documents/views.py:336 documents/views.py:2747
#: documents/validators.py:29
#, python-brace-format
msgid "Unable to parse URI {value}, missing net location or path"
msgstr "No se puede analizar la URI {value}, falta la ubicación de la red o la ruta"
#: documents/validators.py:36
msgid "URI scheme '{parts.scheme}' is not allowed. Allowed schemes: {', '.join(allowed_schemes)}"
msgstr "El esquema URI '{parts.scheme}' no está permitido. Esquemas permitidos: {', '.join(allowed_schemes)}"
#: documents/validators.py:45
#, python-brace-format
msgid "Unable to parse URI {value}"
msgstr "No se puede analizar la URI {value}"
#: documents/views.py:336 documents/views.py:2729
msgid "Invalid more_like_id"
msgstr ""
#: documents/views.py:1682
#: documents/views.py:1676
msgid "Invalid AI configuration."
msgstr "Configuración de IA inválida."
#: documents/views.py:1693
#: documents/views.py:1687
msgid "AI backend request timed out."
msgstr ""
#: documents/views.py:1705
#: documents/views.py:1699
msgid "AI backend rejected the request. Check logs for details."
msgstr ""
#: documents/views.py:2572 documents/views.py:2888
#: documents/views.py:2554 documents/views.py:2870
msgid "Specify only one of text, title_search, query, or more_like_id."
msgstr "Especifique solo uno entre text, title_search, query, o more_like_id."
#: documents/views.py:4813
#: documents/views.py:4800
#, python-format
msgid "Insufficient permissions to share document %(id)s."
msgstr "Permisos insuficientes para compartir el documento %(id)s."
#: documents/views.py:4860
#: documents/views.py:4846
msgid "Bundle is already being processed."
msgstr "El paquete ya está siendo procesado."
#: documents/views.py:4924
#: documents/views.py:4910
msgid "The share link bundle is still being prepared. Please try again later."
msgstr "El paquete de enlace compartido aún está siendo preparado. Por favor, inténtalo de nuevo más tarde."
#: documents/views.py:4938
#: documents/views.py:4924
msgid "The share link bundle is unavailable."
msgstr "El paquete de enlace compartido no está disponible."
+39 -24
View File
@@ -2,8 +2,8 @@ msgid ""
msgstr ""
"Project-Id-Version: paperless-ngx\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2026-10-10 22:04+0000\n"
"PO-Revision-Date: 2026-10-10 22:05\n"
"POT-Creation-Date: 2026-10-05 16:26+0000\n"
"PO-Revision-Date: 2026-10-05 16:27\n"
"Last-Translator: \n"
"Language-Team: Estonian\n"
"Language: et_EE\n"
@@ -1635,48 +1635,48 @@ msgstr ""
msgid "workflow runs"
msgstr ""
#: documents/serialisers.py:516 documents/serialisers.py:873
#: documents/serialisers.py:2903 documents/views.py:343 documents/views.py:2750
#: documents/serialisers.py:515 documents/serialisers.py:872
#: documents/serialisers.py:2902 documents/views.py:343 documents/views.py:2732
#: paperless_mail/serialisers.py:156
msgid "Insufficient permissions."
msgstr ""
#: documents/serialisers.py:709
#: documents/serialisers.py:708
msgid "Invalid color."
msgstr ""
#: documents/serialisers.py:2370
#: documents/serialisers.py:2369
#, python-format
msgid "File type %(type)s not supported"
msgstr ""
#: documents/serialisers.py:2414
#: documents/serialisers.py:2413
#, python-format
msgid "Custom field id must be an integer: %(id)s"
msgstr ""
#: documents/serialisers.py:2421
#: documents/serialisers.py:2420
#, python-format
msgid "Custom field with id %(id)s does not exist"
msgstr ""
#: documents/serialisers.py:2438 documents/serialisers.py:2448
#: documents/serialisers.py:2437 documents/serialisers.py:2447
msgid "Custom fields must be a list of integers or an object mapping ids to values."
msgstr ""
#: documents/serialisers.py:2443
#: documents/serialisers.py:2442
msgid "Some custom fields don't exist or were specified twice."
msgstr ""
#: documents/serialisers.py:2590
#: documents/serialisers.py:2589
msgid "Invalid variable detected."
msgstr ""
#: documents/serialisers.py:2959
#: documents/serialisers.py:2958
msgid "Duplicate document identifiers are not allowed."
msgstr ""
#: documents/serialisers.py:2989 documents/views.py:4797
#: documents/serialisers.py:2988 documents/views.py:4787
#, python-format
msgid "Documents not found: %(ids)s"
msgstr ""
@@ -1912,44 +1912,59 @@ msgstr ""
msgid "As a final step, please complete the following form:"
msgstr ""
#: documents/validators.py:36
msgid ", "
#: documents/validators.py:24
#, python-brace-format
msgid "Unable to parse URI {value}, missing scheme"
msgstr ""
#: documents/views.py:336 documents/views.py:2747
#: documents/validators.py:29
#, python-brace-format
msgid "Unable to parse URI {value}, missing net location or path"
msgstr ""
#: documents/validators.py:36
msgid "URI scheme '{parts.scheme}' is not allowed. Allowed schemes: {', '.join(allowed_schemes)}"
msgstr ""
#: documents/validators.py:45
#, python-brace-format
msgid "Unable to parse URI {value}"
msgstr ""
#: documents/views.py:336 documents/views.py:2729
msgid "Invalid more_like_id"
msgstr ""
#: documents/views.py:1682
#: documents/views.py:1676
msgid "Invalid AI configuration."
msgstr ""
#: documents/views.py:1693
#: documents/views.py:1687
msgid "AI backend request timed out."
msgstr ""
#: documents/views.py:1705
#: documents/views.py:1699
msgid "AI backend rejected the request. Check logs for details."
msgstr ""
#: documents/views.py:2572 documents/views.py:2888
#: documents/views.py:2554 documents/views.py:2870
msgid "Specify only one of text, title_search, query, or more_like_id."
msgstr ""
#: documents/views.py:4813
#: documents/views.py:4800
#, python-format
msgid "Insufficient permissions to share document %(id)s."
msgstr ""
#: documents/views.py:4860
#: documents/views.py:4846
msgid "Bundle is already being processed."
msgstr ""
#: documents/views.py:4924
#: documents/views.py:4910
msgid "The share link bundle is still being prepared. Please try again later."
msgstr ""
#: documents/views.py:4938
#: documents/views.py:4924
msgid "The share link bundle is unavailable."
msgstr ""
+39 -24
View File
@@ -2,8 +2,8 @@ msgid ""
msgstr ""
"Project-Id-Version: paperless-ngx\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2026-10-10 22:04+0000\n"
"PO-Revision-Date: 2026-10-10 22:05\n"
"POT-Creation-Date: 2026-10-05 16:26+0000\n"
"PO-Revision-Date: 2026-10-05 16:27\n"
"Last-Translator: \n"
"Language-Team: Persian\n"
"Language: fa_IR\n"
@@ -1635,48 +1635,48 @@ msgstr "گردش کار"
msgid "workflow runs"
msgstr "گردش کار اجرا می شود"
#: documents/serialisers.py:516 documents/serialisers.py:873
#: documents/serialisers.py:2903 documents/views.py:343 documents/views.py:2750
#: documents/serialisers.py:515 documents/serialisers.py:872
#: documents/serialisers.py:2902 documents/views.py:343 documents/views.py:2732
#: paperless_mail/serialisers.py:156
msgid "Insufficient permissions."
msgstr ""
#: documents/serialisers.py:709
#: documents/serialisers.py:708
msgid "Invalid color."
msgstr "رنگ نامعتبر"
#: documents/serialisers.py:2370
#: documents/serialisers.py:2369
#, python-format
msgid "File type %(type)s not supported"
msgstr ""
#: documents/serialisers.py:2414
#: documents/serialisers.py:2413
#, python-format
msgid "Custom field id must be an integer: %(id)s"
msgstr ""
#: documents/serialisers.py:2421
#: documents/serialisers.py:2420
#, python-format
msgid "Custom field with id %(id)s does not exist"
msgstr ""
#: documents/serialisers.py:2438 documents/serialisers.py:2448
#: documents/serialisers.py:2437 documents/serialisers.py:2447
msgid "Custom fields must be a list of integers or an object mapping ids to values."
msgstr ""
#: documents/serialisers.py:2443
#: documents/serialisers.py:2442
msgid "Some custom fields don't exist or were specified twice."
msgstr ""
#: documents/serialisers.py:2590
#: documents/serialisers.py:2589
msgid "Invalid variable detected."
msgstr "متغیر نامعتبر شناسایی شده است."
#: documents/serialisers.py:2959
#: documents/serialisers.py:2958
msgid "Duplicate document identifiers are not allowed."
msgstr ""
#: documents/serialisers.py:2989 documents/views.py:4797
#: documents/serialisers.py:2988 documents/views.py:4787
#, python-format
msgid "Documents not found: %(ids)s"
msgstr ""
@@ -1912,44 +1912,59 @@ msgstr ""
msgid "As a final step, please complete the following form:"
msgstr "به عنوان مرحله آخر ، لطفاً فرم زیر را تکمیل کنید:"
#: documents/validators.py:36
msgid ", "
#: documents/validators.py:24
#, python-brace-format
msgid "Unable to parse URI {value}, missing scheme"
msgstr ""
#: documents/views.py:336 documents/views.py:2747
#: documents/validators.py:29
#, python-brace-format
msgid "Unable to parse URI {value}, missing net location or path"
msgstr ""
#: documents/validators.py:36
msgid "URI scheme '{parts.scheme}' is not allowed. Allowed schemes: {', '.join(allowed_schemes)}"
msgstr ""
#: documents/validators.py:45
#, python-brace-format
msgid "Unable to parse URI {value}"
msgstr ""
#: documents/views.py:336 documents/views.py:2729
msgid "Invalid more_like_id"
msgstr ""
#: documents/views.py:1682
#: documents/views.py:1676
msgid "Invalid AI configuration."
msgstr ""
#: documents/views.py:1693
#: documents/views.py:1687
msgid "AI backend request timed out."
msgstr ""
#: documents/views.py:1705
#: documents/views.py:1699
msgid "AI backend rejected the request. Check logs for details."
msgstr ""
#: documents/views.py:2572 documents/views.py:2888
#: documents/views.py:2554 documents/views.py:2870
msgid "Specify only one of text, title_search, query, or more_like_id."
msgstr ""
#: documents/views.py:4813
#: documents/views.py:4800
#, python-format
msgid "Insufficient permissions to share document %(id)s."
msgstr ""
#: documents/views.py:4860
#: documents/views.py:4846
msgid "Bundle is already being processed."
msgstr ""
#: documents/views.py:4924
#: documents/views.py:4910
msgid "The share link bundle is still being prepared. Please try again later."
msgstr ""
#: documents/views.py:4938
#: documents/views.py:4924
msgid "The share link bundle is unavailable."
msgstr ""
+39 -24
View File
@@ -2,8 +2,8 @@ msgid ""
msgstr ""
"Project-Id-Version: paperless-ngx\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2026-10-10 22:04+0000\n"
"PO-Revision-Date: 2026-10-10 22:05\n"
"POT-Creation-Date: 2026-10-05 16:26+0000\n"
"PO-Revision-Date: 2026-10-05 16:27\n"
"Last-Translator: \n"
"Language-Team: Finnish\n"
"Language: fi_FI\n"
@@ -1635,48 +1635,48 @@ msgstr ""
msgid "workflow runs"
msgstr ""
#: documents/serialisers.py:516 documents/serialisers.py:873
#: documents/serialisers.py:2903 documents/views.py:343 documents/views.py:2750
#: documents/serialisers.py:515 documents/serialisers.py:872
#: documents/serialisers.py:2902 documents/views.py:343 documents/views.py:2732
#: paperless_mail/serialisers.py:156
msgid "Insufficient permissions."
msgstr ""
#: documents/serialisers.py:709
#: documents/serialisers.py:708
msgid "Invalid color."
msgstr "Virheellinen väri."
#: documents/serialisers.py:2370
#: documents/serialisers.py:2369
#, python-format
msgid "File type %(type)s not supported"
msgstr "Tiedostotyyppiä %(type)s ei tueta"
#: documents/serialisers.py:2414
#: documents/serialisers.py:2413
#, python-format
msgid "Custom field id must be an integer: %(id)s"
msgstr ""
#: documents/serialisers.py:2421
#: documents/serialisers.py:2420
#, python-format
msgid "Custom field with id %(id)s does not exist"
msgstr ""
#: documents/serialisers.py:2438 documents/serialisers.py:2448
#: documents/serialisers.py:2437 documents/serialisers.py:2447
msgid "Custom fields must be a list of integers or an object mapping ids to values."
msgstr ""
#: documents/serialisers.py:2443
#: documents/serialisers.py:2442
msgid "Some custom fields don't exist or were specified twice."
msgstr ""
#: documents/serialisers.py:2590
#: documents/serialisers.py:2589
msgid "Invalid variable detected."
msgstr "Virheellinen muuttuja havaittu."
#: documents/serialisers.py:2959
#: documents/serialisers.py:2958
msgid "Duplicate document identifiers are not allowed."
msgstr ""
#: documents/serialisers.py:2989 documents/views.py:4797
#: documents/serialisers.py:2988 documents/views.py:4787
#, python-format
msgid "Documents not found: %(ids)s"
msgstr ""
@@ -1913,44 +1913,59 @@ msgstr ""
msgid "As a final step, please complete the following form:"
msgstr ""
#: documents/validators.py:36
msgid ", "
#: documents/validators.py:24
#, python-brace-format
msgid "Unable to parse URI {value}, missing scheme"
msgstr ""
#: documents/views.py:336 documents/views.py:2747
#: documents/validators.py:29
#, python-brace-format
msgid "Unable to parse URI {value}, missing net location or path"
msgstr ""
#: documents/validators.py:36
msgid "URI scheme '{parts.scheme}' is not allowed. Allowed schemes: {', '.join(allowed_schemes)}"
msgstr ""
#: documents/validators.py:45
#, python-brace-format
msgid "Unable to parse URI {value}"
msgstr ""
#: documents/views.py:336 documents/views.py:2729
msgid "Invalid more_like_id"
msgstr ""
#: documents/views.py:1682
#: documents/views.py:1676
msgid "Invalid AI configuration."
msgstr ""
#: documents/views.py:1693
#: documents/views.py:1687
msgid "AI backend request timed out."
msgstr ""
#: documents/views.py:1705
#: documents/views.py:1699
msgid "AI backend rejected the request. Check logs for details."
msgstr ""
#: documents/views.py:2572 documents/views.py:2888
#: documents/views.py:2554 documents/views.py:2870
msgid "Specify only one of text, title_search, query, or more_like_id."
msgstr ""
#: documents/views.py:4813
#: documents/views.py:4800
#, python-format
msgid "Insufficient permissions to share document %(id)s."
msgstr ""
#: documents/views.py:4860
#: documents/views.py:4846
msgid "Bundle is already being processed."
msgstr ""
#: documents/views.py:4924
#: documents/views.py:4910
msgid "The share link bundle is still being prepared. Please try again later."
msgstr ""
#: documents/views.py:4938
#: documents/views.py:4924
msgid "The share link bundle is unavailable."
msgstr ""
+40 -25
View File
@@ -2,8 +2,8 @@ msgid ""
msgstr ""
"Project-Id-Version: paperless-ngx\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2026-10-10 22:04+0000\n"
"PO-Revision-Date: 2026-10-10 22:05\n"
"POT-Creation-Date: 2026-10-05 16:26+0000\n"
"PO-Revision-Date: 2026-10-05 16:27\n"
"Last-Translator: \n"
"Language-Team: French\n"
"Language: fr_FR\n"
@@ -1635,48 +1635,48 @@ msgstr "exécution du workflow"
msgid "workflow runs"
msgstr "le flux de travail s'exécute"
#: documents/serialisers.py:516 documents/serialisers.py:873
#: documents/serialisers.py:2903 documents/views.py:343 documents/views.py:2750
#: documents/serialisers.py:515 documents/serialisers.py:872
#: documents/serialisers.py:2902 documents/views.py:343 documents/views.py:2732
#: paperless_mail/serialisers.py:156
msgid "Insufficient permissions."
msgstr "Droits insuffisants."
#: documents/serialisers.py:709
#: documents/serialisers.py:708
msgid "Invalid color."
msgstr "Couleur incorrecte."
#: documents/serialisers.py:2370
#: documents/serialisers.py:2369
#, python-format
msgid "File type %(type)s not supported"
msgstr "Type de fichier %(type)s non pris en charge"
#: documents/serialisers.py:2414
#: documents/serialisers.py:2413
#, python-format
msgid "Custom field id must be an integer: %(id)s"
msgstr "L'id du champ personnalisé doit être un entier : %(id)s"
#: documents/serialisers.py:2421
#: documents/serialisers.py:2420
#, python-format
msgid "Custom field with id %(id)s does not exist"
msgstr "Le champ personnalisé avec l'id %(id)s n'existe pas"
#: documents/serialisers.py:2438 documents/serialisers.py:2448
#: documents/serialisers.py:2437 documents/serialisers.py:2447
msgid "Custom fields must be a list of integers or an object mapping ids to values."
msgstr "Les champs personnalisés doivent être une liste d'entiers ou un mappage d'identifiants à des valeurs."
#: documents/serialisers.py:2443
#: documents/serialisers.py:2442
msgid "Some custom fields don't exist or were specified twice."
msgstr "Certains champs personnalisés n'existent pas ou ont été spécifiés deux fois."
#: documents/serialisers.py:2590
#: documents/serialisers.py:2589
msgid "Invalid variable detected."
msgstr "Variable invalide détectée."
#: documents/serialisers.py:2959
#: documents/serialisers.py:2958
msgid "Duplicate document identifiers are not allowed."
msgstr "Les identificateurs de document en double ne sont pas autorisés."
#: documents/serialisers.py:2989 documents/views.py:4797
#: documents/serialisers.py:2988 documents/views.py:4787
#, python-format
msgid "Documents not found: %(ids)s"
msgstr "Documents introuvables : %(ids)s"
@@ -1912,44 +1912,59 @@ msgstr "Vous vous apprêtez à utiliser votre compte %(provider_name)s pour vous
msgid "As a final step, please complete the following form:"
msgstr "Pour finir, veuillez remplir le formulaire suivant :"
#: documents/validators.py:36
msgid ", "
msgstr ""
#: documents/validators.py:24
#, python-brace-format
msgid "Unable to parse URI {value}, missing scheme"
msgstr "Impossible d'analyser l'URI {value}, schéma manquant"
#: documents/views.py:336 documents/views.py:2747
#: documents/validators.py:29
#, python-brace-format
msgid "Unable to parse URI {value}, missing net location or path"
msgstr "Impossible d'analyser l'URI {value}, emplacement réseau ou chemin manquant"
#: documents/validators.py:36
msgid "URI scheme '{parts.scheme}' is not allowed. Allowed schemes: {', '.join(allowed_schemes)}"
msgstr "Le schéma d'URI « {parts.scheme} » n'est pas autorisé. Schémas autorisés : {', '.join(allowed_schemes)}"
#: documents/validators.py:45
#, python-brace-format
msgid "Unable to parse URI {value}"
msgstr "Impossible d'analyser l'URI {value}"
#: documents/views.py:336 documents/views.py:2729
msgid "Invalid more_like_id"
msgstr "More_like_id invalide"
#: documents/views.py:1682
#: documents/views.py:1676
msgid "Invalid AI configuration."
msgstr "Configuration IA invalide."
#: documents/views.py:1693
#: documents/views.py:1687
msgid "AI backend request timed out."
msgstr "La requête d'arrière-plan IA a expiré."
#: documents/views.py:1705
#: documents/views.py:1699
msgid "AI backend rejected the request. Check logs for details."
msgstr ""
#: documents/views.py:2572 documents/views.py:2888
#: documents/views.py:2554 documents/views.py:2870
msgid "Specify only one of text, title_search, query, or more_like_id."
msgstr "Spécifiez seulement un texte, titre, recherche ou more_like_id."
#: documents/views.py:4813
#: documents/views.py:4800
#, python-format
msgid "Insufficient permissions to share document %(id)s."
msgstr "Droits d'accès insuffisant pour partager %(id)s document."
#: documents/views.py:4860
#: documents/views.py:4846
msgid "Bundle is already being processed."
msgstr "Le paquet est déjà en cours de traitement."
#: documents/views.py:4924
#: documents/views.py:4910
msgid "The share link bundle is still being prepared. Please try again later."
msgstr "Le lot de liens de partage est en cours de préparation. Veuillez réessayer plus tard."
#: documents/views.py:4938
#: documents/views.py:4924
msgid "The share link bundle is unavailable."
msgstr "Le lot de liens de partage n'est pas disponible."
+40 -25
View File
@@ -2,8 +2,8 @@ msgid ""
msgstr ""
"Project-Id-Version: paperless-ngx\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2026-10-10 22:04+0000\n"
"PO-Revision-Date: 2026-10-10 22:05\n"
"POT-Creation-Date: 2026-10-05 16:26+0000\n"
"PO-Revision-Date: 2026-10-05 16:27\n"
"Last-Translator: \n"
"Language-Team: Hebrew\n"
"Language: he_IL\n"
@@ -1636,48 +1636,48 @@ msgstr "הרצת זרימת עבודה"
msgid "workflow runs"
msgstr "הרצות זרימת עבודה"
#: documents/serialisers.py:516 documents/serialisers.py:873
#: documents/serialisers.py:2903 documents/views.py:343 documents/views.py:2750
#: documents/serialisers.py:515 documents/serialisers.py:872
#: documents/serialisers.py:2902 documents/views.py:343 documents/views.py:2732
#: paperless_mail/serialisers.py:156
msgid "Insufficient permissions."
msgstr "הרשאות אינן מספיקות."
#: documents/serialisers.py:709
#: documents/serialisers.py:708
msgid "Invalid color."
msgstr "צבע לא חוקי."
#: documents/serialisers.py:2370
#: documents/serialisers.py:2369
#, python-format
msgid "File type %(type)s not supported"
msgstr "סוג קובץ %(type)s לא נתמך"
#: documents/serialisers.py:2414
#: documents/serialisers.py:2413
#, python-format
msgid "Custom field id must be an integer: %(id)s"
msgstr "שדה מותאם אישית id חייב להיות מספרי: %(id)s"
#: documents/serialisers.py:2421
#: documents/serialisers.py:2420
#, python-format
msgid "Custom field with id %(id)s does not exist"
msgstr "שדה מותאם אישית עם מזהה %(id)s איננו קיים"
#: documents/serialisers.py:2438 documents/serialisers.py:2448
#: documents/serialisers.py:2437 documents/serialisers.py:2447
msgid "Custom fields must be a list of integers or an object mapping ids to values."
msgstr "שדות מותאמים אישית חייבים להיות רשימה של מספרים שלמים או אובייקט הממפה מזהים לערכים."
#: documents/serialisers.py:2443
#: documents/serialisers.py:2442
msgid "Some custom fields don't exist or were specified twice."
msgstr "חלק מהשדות המותאמים אישית אינם קיימים או שהוגדרו פעמיים."
#: documents/serialisers.py:2590
#: documents/serialisers.py:2589
msgid "Invalid variable detected."
msgstr "משתנה לא חוקי זוהה."
#: documents/serialisers.py:2959
#: documents/serialisers.py:2958
msgid "Duplicate document identifiers are not allowed."
msgstr "מזהי מסמכים כפולים אינם מורשים."
#: documents/serialisers.py:2989 documents/views.py:4797
#: documents/serialisers.py:2988 documents/views.py:4787
#, python-format
msgid "Documents not found: %(ids)s"
msgstr "מסמכים לא נמצאו: %(ids)s"
@@ -1914,44 +1914,59 @@ msgstr "שלך כדי להתחבר %(provider_name)s אתה עומד להשתמ
msgid "As a final step, please complete the following form:"
msgstr ": כצעד אחרון, אנא מלא את הטופס הבא:"
#: documents/validators.py:36
msgid ", "
msgstr ""
#: documents/validators.py:24
#, python-brace-format
msgid "Unable to parse URI {value}, missing scheme"
msgstr "לא ניתן לפענח את ה-URI ‏{value}, חסר פרוטוקול (scheme)"
#: documents/views.py:336 documents/views.py:2747
#: documents/validators.py:29
#, python-brace-format
msgid "Unable to parse URI {value}, missing net location or path"
msgstr "לא ניתן לפענח את ה-URI ‏{value}, חסר מיקום רשת (net location) או נתיב"
#: documents/validators.py:36
msgid "URI scheme '{parts.scheme}' is not allowed. Allowed schemes: {', '.join(allowed_schemes)}"
msgstr "פרוטוקול ה-URI ‏'{parts.scheme}' אינו מורשה. הפרוטוקולים המורשים הם: {', '.join(allowed_schemes)}"
#: documents/validators.py:45
#, python-brace-format
msgid "Unable to parse URI {value}"
msgstr "לא ניתן לפענח את ה URI ‏{value}"
#: documents/views.py:336 documents/views.py:2729
msgid "Invalid more_like_id"
msgstr "מזהה more_like_id אינו תקין"
#: documents/views.py:1682
#: documents/views.py:1676
msgid "Invalid AI configuration."
msgstr "הגדרות בינה מלאכותית שגויות."
#: documents/views.py:1693
#: documents/views.py:1687
msgid "AI backend request timed out."
msgstr ""
#: documents/views.py:1705
#: documents/views.py:1699
msgid "AI backend rejected the request. Check logs for details."
msgstr ""
#: documents/views.py:2572 documents/views.py:2888
#: documents/views.py:2554 documents/views.py:2870
msgid "Specify only one of text, title_search, query, or more_like_id."
msgstr "יש לציין רק אחד מהבאים: text‏, title_search‏, query או more_like_id."
#: documents/views.py:4813
#: documents/views.py:4800
#, python-format
msgid "Insufficient permissions to share document %(id)s."
msgstr "הרשאות לא מספיקות לשיתוף מסמך %(id)s."
#: documents/views.py:4860
#: documents/views.py:4846
msgid "Bundle is already being processed."
msgstr "החבילה (Bundle) כבר נמצאת בתהליך עיבוד."
#: documents/views.py:4924
#: documents/views.py:4910
msgid "The share link bundle is still being prepared. Please try again later."
msgstr "חבילת קישור השיתוף עדיין בהכנה. נא לנסות שוב מאוחר יותר."
#: documents/views.py:4938
#: documents/views.py:4924
msgid "The share link bundle is unavailable."
msgstr "חבילת קישור השיתוף אינה זמינה."
+39 -24
View File
@@ -2,8 +2,8 @@ msgid ""
msgstr ""
"Project-Id-Version: paperless-ngx\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2026-10-10 22:04+0000\n"
"PO-Revision-Date: 2026-10-10 22:05\n"
"POT-Creation-Date: 2026-10-05 16:26+0000\n"
"PO-Revision-Date: 2026-10-05 16:27\n"
"Last-Translator: \n"
"Language-Team: Hindi\n"
"Language: hi_IN\n"
@@ -1635,48 +1635,48 @@ msgstr ""
msgid "workflow runs"
msgstr ""
#: documents/serialisers.py:516 documents/serialisers.py:873
#: documents/serialisers.py:2903 documents/views.py:343 documents/views.py:2750
#: documents/serialisers.py:515 documents/serialisers.py:872
#: documents/serialisers.py:2902 documents/views.py:343 documents/views.py:2732
#: paperless_mail/serialisers.py:156
msgid "Insufficient permissions."
msgstr ""
#: documents/serialisers.py:709
#: documents/serialisers.py:708
msgid "Invalid color."
msgstr ""
#: documents/serialisers.py:2370
#: documents/serialisers.py:2369
#, python-format
msgid "File type %(type)s not supported"
msgstr ""
#: documents/serialisers.py:2414
#: documents/serialisers.py:2413
#, python-format
msgid "Custom field id must be an integer: %(id)s"
msgstr ""
#: documents/serialisers.py:2421
#: documents/serialisers.py:2420
#, python-format
msgid "Custom field with id %(id)s does not exist"
msgstr ""
#: documents/serialisers.py:2438 documents/serialisers.py:2448
#: documents/serialisers.py:2437 documents/serialisers.py:2447
msgid "Custom fields must be a list of integers or an object mapping ids to values."
msgstr ""
#: documents/serialisers.py:2443
#: documents/serialisers.py:2442
msgid "Some custom fields don't exist or were specified twice."
msgstr ""
#: documents/serialisers.py:2590
#: documents/serialisers.py:2589
msgid "Invalid variable detected."
msgstr ""
#: documents/serialisers.py:2959
#: documents/serialisers.py:2958
msgid "Duplicate document identifiers are not allowed."
msgstr ""
#: documents/serialisers.py:2989 documents/views.py:4797
#: documents/serialisers.py:2988 documents/views.py:4787
#, python-format
msgid "Documents not found: %(ids)s"
msgstr ""
@@ -1912,44 +1912,59 @@ msgstr ""
msgid "As a final step, please complete the following form:"
msgstr ""
#: documents/validators.py:36
msgid ", "
#: documents/validators.py:24
#, python-brace-format
msgid "Unable to parse URI {value}, missing scheme"
msgstr ""
#: documents/views.py:336 documents/views.py:2747
#: documents/validators.py:29
#, python-brace-format
msgid "Unable to parse URI {value}, missing net location or path"
msgstr ""
#: documents/validators.py:36
msgid "URI scheme '{parts.scheme}' is not allowed. Allowed schemes: {', '.join(allowed_schemes)}"
msgstr ""
#: documents/validators.py:45
#, python-brace-format
msgid "Unable to parse URI {value}"
msgstr ""
#: documents/views.py:336 documents/views.py:2729
msgid "Invalid more_like_id"
msgstr ""
#: documents/views.py:1682
#: documents/views.py:1676
msgid "Invalid AI configuration."
msgstr ""
#: documents/views.py:1693
#: documents/views.py:1687
msgid "AI backend request timed out."
msgstr ""
#: documents/views.py:1705
#: documents/views.py:1699
msgid "AI backend rejected the request. Check logs for details."
msgstr ""
#: documents/views.py:2572 documents/views.py:2888
#: documents/views.py:2554 documents/views.py:2870
msgid "Specify only one of text, title_search, query, or more_like_id."
msgstr ""
#: documents/views.py:4813
#: documents/views.py:4800
#, python-format
msgid "Insufficient permissions to share document %(id)s."
msgstr ""
#: documents/views.py:4860
#: documents/views.py:4846
msgid "Bundle is already being processed."
msgstr ""
#: documents/views.py:4924
#: documents/views.py:4910
msgid "The share link bundle is still being prepared. Please try again later."
msgstr ""
#: documents/views.py:4938
#: documents/views.py:4924
msgid "The share link bundle is unavailable."
msgstr ""
+40 -25
View File
@@ -2,8 +2,8 @@ msgid ""
msgstr ""
"Project-Id-Version: paperless-ngx\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2026-10-10 22:04+0000\n"
"PO-Revision-Date: 2026-10-10 22:05\n"
"POT-Creation-Date: 2026-10-05 16:26+0000\n"
"PO-Revision-Date: 2026-10-05 16:27\n"
"Last-Translator: \n"
"Language-Team: Croatian\n"
"Language: hr_HR\n"
@@ -1635,48 +1635,48 @@ msgstr "pokretanje tijeka rada"
msgid "workflow runs"
msgstr "tijek rada pokrenut"
#: documents/serialisers.py:516 documents/serialisers.py:873
#: documents/serialisers.py:2903 documents/views.py:343 documents/views.py:2750
#: documents/serialisers.py:515 documents/serialisers.py:872
#: documents/serialisers.py:2902 documents/views.py:343 documents/views.py:2732
#: paperless_mail/serialisers.py:156
msgid "Insufficient permissions."
msgstr "Nedovoljne ovlasti."
#: documents/serialisers.py:709
#: documents/serialisers.py:708
msgid "Invalid color."
msgstr "Nevažeća boja."
#: documents/serialisers.py:2370
#: documents/serialisers.py:2369
#, python-format
msgid "File type %(type)s not supported"
msgstr "Vrsta datoteke %(type)s nije podržana"
#: documents/serialisers.py:2414
#: documents/serialisers.py:2413
#, python-format
msgid "Custom field id must be an integer: %(id)s"
msgstr "ID prilagođenog polja mora biti cijeli broj: %(id)s"
#: documents/serialisers.py:2421
#: documents/serialisers.py:2420
#, python-format
msgid "Custom field with id %(id)s does not exist"
msgstr "Prilagođeno polje s ID-om %(id)s ne postoji"
#: documents/serialisers.py:2438 documents/serialisers.py:2448
#: documents/serialisers.py:2437 documents/serialisers.py:2447
msgid "Custom fields must be a list of integers or an object mapping ids to values."
msgstr "Prilagođena polja moraju biti popis cijelih brojeva ili ID-ova objekata koji preslikavaju vrijednosti."
#: documents/serialisers.py:2443
#: documents/serialisers.py:2442
msgid "Some custom fields don't exist or were specified twice."
msgstr "Neka prilagođena polja ne postoje ili su navedena dvaput."
#: documents/serialisers.py:2590
#: documents/serialisers.py:2589
msgid "Invalid variable detected."
msgstr "Otkrivena je nevaljana vrsta datoteke."
#: documents/serialisers.py:2959
#: documents/serialisers.py:2958
msgid "Duplicate document identifiers are not allowed."
msgstr "Duplicirani identifikatori dokumenata nisu dopušteni."
#: documents/serialisers.py:2989 documents/views.py:4797
#: documents/serialisers.py:2988 documents/views.py:4787
#, python-format
msgid "Documents not found: %(ids)s"
msgstr "Dokumenti nisu pronađeni: %(ids)s"
@@ -1913,44 +1913,59 @@ msgstr "Upravo ćete koristiti svoj račun %(provider_name)s za prijavu."
msgid "As a final step, please complete the following form:"
msgstr "Kao posljednji korak ispunite sljedeći obrazac:"
#: documents/validators.py:36
msgid ", "
msgstr ""
#: documents/validators.py:24
#, python-brace-format
msgid "Unable to parse URI {value}, missing scheme"
msgstr "Nije moguće analizirati URI {value}, nedostaje shema"
#: documents/views.py:336 documents/views.py:2747
#: documents/validators.py:29
#, python-brace-format
msgid "Unable to parse URI {value}, missing net location or path"
msgstr "Nije moguće analizirati URI {value}, nedostaje mrežna lokacija ili put"
#: documents/validators.py:36
msgid "URI scheme '{parts.scheme}' is not allowed. Allowed schemes: {', '.join(allowed_schemes)}"
msgstr "URI shema '{parts.scheme}' nije dopuštena. Dopuštene sheme: {', '.join(allowed_schemes)}"
#: documents/validators.py:45
#, python-brace-format
msgid "Unable to parse URI {value}"
msgstr "Nije moguće raščlaniti URI {value}"
#: documents/views.py:336 documents/views.py:2729
msgid "Invalid more_like_id"
msgstr "Nevažeći more_like_id"
#: documents/views.py:1682
#: documents/views.py:1676
msgid "Invalid AI configuration."
msgstr "Nevažeća AI konfiguracija."
#: documents/views.py:1693
#: documents/views.py:1687
msgid "AI backend request timed out."
msgstr "Zahtjev prema AI pozadinskom sustavu je istekao."
#: documents/views.py:1705
#: documents/views.py:1699
msgid "AI backend rejected the request. Check logs for details."
msgstr "AI pozadinski sustav je odbio zahtjev. Provjerite zapise (logs) za više detalja."
#: documents/views.py:2572 documents/views.py:2888
#: documents/views.py:2554 documents/views.py:2870
msgid "Specify only one of text, title_search, query, or more_like_id."
msgstr "Navedite samo jedno od: text, title_search, query ili more_like_id."
#: documents/views.py:4813
#: documents/views.py:4800
#, python-format
msgid "Insufficient permissions to share document %(id)s."
msgstr "Nedovoljne ovlasti za dijeljenje dokumenta %(id)s."
#: documents/views.py:4860
#: documents/views.py:4846
msgid "Bundle is already being processed."
msgstr "Paket se već obrađuje."
#: documents/views.py:4924
#: documents/views.py:4910
msgid "The share link bundle is still being prepared. Please try again later."
msgstr "Paket linka za dijeljenje se još priprema. Pokušajte ponovo kasnije."
#: documents/views.py:4938
#: documents/views.py:4924
msgid "The share link bundle is unavailable."
msgstr "Paket linka za dijeljenje nije dostupan."
+40 -25
View File
@@ -2,8 +2,8 @@ msgid ""
msgstr ""
"Project-Id-Version: paperless-ngx\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2026-10-10 22:04+0000\n"
"PO-Revision-Date: 2026-10-10 22:05\n"
"POT-Creation-Date: 2026-10-05 16:26+0000\n"
"PO-Revision-Date: 2026-10-05 16:27\n"
"Last-Translator: \n"
"Language-Team: Hungarian\n"
"Language: hu_HU\n"
@@ -1635,48 +1635,48 @@ msgstr "munkafolyamat futtatás"
msgid "workflow runs"
msgstr "munkafolyamat futtatások"
#: documents/serialisers.py:516 documents/serialisers.py:873
#: documents/serialisers.py:2903 documents/views.py:343 documents/views.py:2750
#: documents/serialisers.py:515 documents/serialisers.py:872
#: documents/serialisers.py:2902 documents/views.py:343 documents/views.py:2732
#: paperless_mail/serialisers.py:156
msgid "Insufficient permissions."
msgstr "Nincs jogosúltsága."
#: documents/serialisers.py:709
#: documents/serialisers.py:708
msgid "Invalid color."
msgstr "Érvénytelen szín."
#: documents/serialisers.py:2370
#: documents/serialisers.py:2369
#, python-format
msgid "File type %(type)s not supported"
msgstr "%(type)s fájltípus nem támogatott"
#: documents/serialisers.py:2414
#: documents/serialisers.py:2413
#, python-format
msgid "Custom field id must be an integer: %(id)s"
msgstr "Az egyéni mező azonosítójának egész számnak kell lennie: %(id)s"
#: documents/serialisers.py:2421
#: documents/serialisers.py:2420
#, python-format
msgid "Custom field with id %(id)s does not exist"
msgstr "A(z) %(id)s azonosítójú egyéni mező nem létezik"
#: documents/serialisers.py:2438 documents/serialisers.py:2448
#: documents/serialisers.py:2437 documents/serialisers.py:2447
msgid "Custom fields must be a list of integers or an object mapping ids to values."
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:2443
#: documents/serialisers.py:2442
msgid "Some custom fields don't exist or were specified twice."
msgstr "Néhány egyéni mező nem létezik, vagy kétszer lett megadva."
#: documents/serialisers.py:2590
#: documents/serialisers.py:2589
msgid "Invalid variable detected."
msgstr "Érvénytelen változó észlelve."
#: documents/serialisers.py:2959
#: documents/serialisers.py:2958
msgid "Duplicate document identifiers are not allowed."
msgstr "A dokumentumazonosítók duplikálása nem megengedett."
#: documents/serialisers.py:2989 documents/views.py:4797
#: documents/serialisers.py:2988 documents/views.py:4787
#, python-format
msgid "Documents not found: %(ids)s"
msgstr "Dokumentumok nem találhatók: %(ids)s"
@@ -1913,44 +1913,59 @@ msgstr "A %(provider_name)s felhasználói fiókkal fogsz belépni."
msgid "As a final step, please complete the following form:"
msgstr "Utolsó lépésként kérjük válaszoljon az alábbi kérdésekre:"
#: documents/validators.py:36
msgid ", "
msgstr ""
#: documents/validators.py:24
#, python-brace-format
msgid "Unable to parse URI {value}, missing scheme"
msgstr "A {value} URI értelmezése sikertelen, hiányzó séma"
#: documents/views.py:336 documents/views.py:2747
#: documents/validators.py:29
#, python-brace-format
msgid "Unable to parse URI {value}, missing net location or path"
msgstr "A {value} URI értelmezése sikertelen, hiányzó hálózati vagy elérési útvonal"
#: documents/validators.py:36
msgid "URI scheme '{parts.scheme}' is not allowed. Allowed schemes: {', '.join(allowed_schemes)}"
msgstr "A '{parts.scheme}' séma nem engedélyezett. Engedélyezett sémák: {', '.join(allowed_schemes)}"
#: documents/validators.py:45
#, python-brace-format
msgid "Unable to parse URI {value}"
msgstr "A {value} URI értelmezése sikertelen"
#: documents/views.py:336 documents/views.py:2729
msgid "Invalid more_like_id"
msgstr "Érvénytelen more_like_id"
#: documents/views.py:1682
#: documents/views.py:1676
msgid "Invalid AI configuration."
msgstr "Érvénytelen MI konfiguráció."
#: documents/views.py:1693
#: documents/views.py:1687
msgid "AI backend request timed out."
msgstr ""
#: documents/views.py:1705
#: documents/views.py:1699
msgid "AI backend rejected the request. Check logs for details."
msgstr ""
#: documents/views.py:2572 documents/views.py:2888
#: documents/views.py:2554 documents/views.py:2870
msgid "Specify only one of text, title_search, query, or more_like_id."
msgstr "A text, title_search, query, vagy more_like_id közül csak egyet adjon meg."
#: documents/views.py:4813
#: documents/views.py:4800
#, python-format
msgid "Insufficient permissions to share document %(id)s."
msgstr "Nincs megfelelő jogosultság a %(id)s dokumentum megosztásához."
#: documents/views.py:4860
#: documents/views.py:4846
msgid "Bundle is already being processed."
msgstr "A csomag feldolgozása már folyamatban van."
#: documents/views.py:4924
#: documents/views.py:4910
msgid "The share link bundle is still being prepared. Please try again later."
msgstr "A megosztási linkcsomag készítése folyamatban. Kérjük, próbálja meg később."
#: documents/views.py:4938
#: documents/views.py:4924
msgid "The share link bundle is unavailable."
msgstr "A megosztási linkcsomag nem elérhető."
+40 -25
View File
@@ -2,8 +2,8 @@ msgid ""
msgstr ""
"Project-Id-Version: paperless-ngx\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2026-10-10 22:04+0000\n"
"PO-Revision-Date: 2026-10-10 22:05\n"
"POT-Creation-Date: 2026-10-05 16:26+0000\n"
"PO-Revision-Date: 2026-10-05 16:27\n"
"Last-Translator: \n"
"Language-Team: Indonesian\n"
"Language: id_ID\n"
@@ -1635,48 +1635,48 @@ msgstr "jalankan alur kerja"
msgid "workflow runs"
msgstr "daftar jalankan alur kerja"
#: documents/serialisers.py:516 documents/serialisers.py:873
#: documents/serialisers.py:2903 documents/views.py:343 documents/views.py:2750
#: documents/serialisers.py:515 documents/serialisers.py:872
#: documents/serialisers.py:2902 documents/views.py:343 documents/views.py:2732
#: paperless_mail/serialisers.py:156
msgid "Insufficient permissions."
msgstr "Izin tidak mencukupi"
#: documents/serialisers.py:709
#: documents/serialisers.py:708
msgid "Invalid color."
msgstr "Warna tidak sesuai."
#: documents/serialisers.py:2370
#: documents/serialisers.py:2369
#, python-format
msgid "File type %(type)s not supported"
msgstr "Jenis berkas %(type)s tidak didukung"
#: documents/serialisers.py:2414
#: documents/serialisers.py:2413
#, python-format
msgid "Custom field id must be an integer: %(id)s"
msgstr "Id kolom kustom harus berupa bilangan bulat: %(id)s"
#: documents/serialisers.py:2421
#: documents/serialisers.py:2420
#, python-format
msgid "Custom field with id %(id)s does not exist"
msgstr "Kolom kustom dengan id %(id)s tidak ada"
#: documents/serialisers.py:2438 documents/serialisers.py:2448
#: documents/serialisers.py:2437 documents/serialisers.py:2447
msgid "Custom fields must be a list of integers or an object mapping ids to values."
msgstr "Kolom kustom harus berupa daftar bilangan bulat atau objek yang memetakan id ke nilai."
#: documents/serialisers.py:2443
#: documents/serialisers.py:2442
msgid "Some custom fields don't exist or were specified twice."
msgstr "Beberapa kolom kustom tidak ada atau ditentukan dua kali."
#: documents/serialisers.py:2590
#: documents/serialisers.py:2589
msgid "Invalid variable detected."
msgstr "Variabel ilegal terdeteksi."
#: documents/serialisers.py:2959
#: documents/serialisers.py:2958
msgid "Duplicate document identifiers are not allowed."
msgstr "Penggunaan pengenal dokumen ganda tidak diperbolehkan."
#: documents/serialisers.py:2989 documents/views.py:4797
#: documents/serialisers.py:2988 documents/views.py:4787
#, python-format
msgid "Documents not found: %(ids)s"
msgstr "Dokumen tidak ditemukan: %(ids)s"
@@ -1913,44 +1913,59 @@ msgstr "Anda akan menggunakan akun %(provider_name)s Anda untuk masuk."
msgid "As a final step, please complete the following form:"
msgstr "Sebagai langkah terakhir, mohon formulir berikut:"
#: documents/validators.py:36
msgid ", "
msgstr ""
#: documents/validators.py:24
#, python-brace-format
msgid "Unable to parse URI {value}, missing scheme"
msgstr "Gagal membaca URI {value}, skema tidak ditemukan"
#: documents/views.py:336 documents/views.py:2747
#: documents/validators.py:29
#, python-brace-format
msgid "Unable to parse URI {value}, missing net location or path"
msgstr "Gagal membaca URI {value}, lokasi jaringan atau path tidak ditemukan"
#: documents/validators.py:36
msgid "URI scheme '{parts.scheme}' is not allowed. Allowed schemes: {', '.join(allowed_schemes)}"
msgstr "Skema URI '{parts.scheme}' tidak diizinkan. Skema yang diizinkan: {', '.join(allowed_schemes)}"
#: documents/validators.py:45
#, python-brace-format
msgid "Unable to parse URI {value}"
msgstr "Gagal membaca URI {value}"
#: documents/views.py:336 documents/views.py:2729
msgid "Invalid more_like_id"
msgstr ""
#: documents/views.py:1682
#: documents/views.py:1676
msgid "Invalid AI configuration."
msgstr ""
#: documents/views.py:1693
#: documents/views.py:1687
msgid "AI backend request timed out."
msgstr ""
#: documents/views.py:1705
#: documents/views.py:1699
msgid "AI backend rejected the request. Check logs for details."
msgstr ""
#: documents/views.py:2572 documents/views.py:2888
#: documents/views.py:2554 documents/views.py:2870
msgid "Specify only one of text, title_search, query, or more_like_id."
msgstr ""
#: documents/views.py:4813
#: documents/views.py:4800
#, python-format
msgid "Insufficient permissions to share document %(id)s."
msgstr "Izin tidak mencukupi untuk berbagi dokumen %(id)s"
#: documents/views.py:4860
#: documents/views.py:4846
msgid "Bundle is already being processed."
msgstr "Paket sedang diproses."
#: documents/views.py:4924
#: documents/views.py:4910
msgid "The share link bundle is still being prepared. Please try again later."
msgstr "Bundel tautan berbagi masih dalam proses persiapan. Silakan coba lagi nanti."
#: documents/views.py:4938
#: documents/views.py:4924
msgid "The share link bundle is unavailable."
msgstr "Bundel tautan berbagi tidak tersedia."
+49 -34
View File
@@ -2,8 +2,8 @@ msgid ""
msgstr ""
"Project-Id-Version: paperless-ngx\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2026-10-10 22:04+0000\n"
"PO-Revision-Date: 2026-10-10 22:05\n"
"POT-Creation-Date: 2026-10-05 16:26+0000\n"
"PO-Revision-Date: 2026-10-05 16:27\n"
"Last-Translator: \n"
"Language-Team: Italian\n"
"Language: it_IT\n"
@@ -253,7 +253,7 @@ msgstr "documento radice per questa versione"
#: documents/models.py:325
msgid "version index"
msgstr "indice versione"
msgstr "indice della versione"
#: documents/models.py:329
msgid "Index of this version within the root document."
@@ -261,11 +261,11 @@ msgstr "Indice di questa versione all'interno del documento radice."
#: documents/models.py:333
msgid "version label"
msgstr "etichetta versione"
msgstr "etichetta della versione"
#: documents/models.py:337
msgid "Optional short label for a document version."
msgstr "Etichetta abbreviata facoltativa per una versione del documento."
msgstr "Etichetta breve facoltativa per una versione del documento."
#: documents/models.py:342 documents/models.py:961 documents/models.py:992
#: documents/models.py:1096 documents/models.py:2126
@@ -1006,23 +1006,23 @@ msgstr "note"
#: documents/models.py:996
msgid "page"
msgstr "pagina"
msgstr ""
#: documents/models.py:997
msgid "Page of the original file, starting at 1"
msgstr "Pagina del file originale, partendo da 1"
msgstr ""
#: documents/models.py:1052
msgid "format"
msgstr "formato"
msgstr ""
#: documents/models.py:1056
msgid "document barcode"
msgstr "codice a barre del documento"
msgstr ""
#: documents/models.py:1057
msgid "document barcodes"
msgstr "codici a barre del documento"
msgstr ""
#: documents/models.py:1066
msgid "Original"
@@ -1635,48 +1635,48 @@ msgstr "esecuzione del flusso di lavoro"
msgid "workflow runs"
msgstr "esecuzioni del flusso di lavoro"
#: documents/serialisers.py:516 documents/serialisers.py:873
#: documents/serialisers.py:2903 documents/views.py:343 documents/views.py:2750
#: documents/serialisers.py:515 documents/serialisers.py:872
#: documents/serialisers.py:2902 documents/views.py:343 documents/views.py:2732
#: paperless_mail/serialisers.py:156
msgid "Insufficient permissions."
msgstr "Autorizzazioni insufficienti."
#: documents/serialisers.py:709
#: documents/serialisers.py:708
msgid "Invalid color."
msgstr "Colore non valido."
#: documents/serialisers.py:2370
#: documents/serialisers.py:2369
#, python-format
msgid "File type %(type)s not supported"
msgstr "Il tipo di file %(type)s non è supportato"
#: documents/serialisers.py:2414
#: documents/serialisers.py:2413
#, python-format
msgid "Custom field id must be an integer: %(id)s"
msgstr "L'ID del campo personalizzato deve essere un numero intero: %(id)s"
#: documents/serialisers.py:2421
#: documents/serialisers.py:2420
#, python-format
msgid "Custom field with id %(id)s does not exist"
msgstr "Il campo personalizzato con ID %(id)s non esiste"
#: documents/serialisers.py:2438 documents/serialisers.py:2448
#: documents/serialisers.py:2437 documents/serialisers.py:2447
msgid "Custom fields must be a list of integers or an object mapping ids to values."
msgstr "I campi personalizzati devono essere un elenco di numeri interi o un oggetto che mappa gli ID ai valori."
#: documents/serialisers.py:2443
#: documents/serialisers.py:2442
msgid "Some custom fields don't exist or were specified twice."
msgstr "Alcuni campi personalizzati non esistono o sono stati specificati due volte."
#: documents/serialisers.py:2590
#: documents/serialisers.py:2589
msgid "Invalid variable detected."
msgstr "Variabile non valida rilevata."
#: documents/serialisers.py:2959
#: documents/serialisers.py:2958
msgid "Duplicate document identifiers are not allowed."
msgstr "Non sono consentiti identificatori di documenti duplicati."
#: documents/serialisers.py:2989 documents/views.py:4797
#: documents/serialisers.py:2988 documents/views.py:4787
#, python-format
msgid "Documents not found: %(ids)s"
msgstr "Documenti non trovati: %(ids)s"
@@ -1913,44 +1913,59 @@ msgstr "Stai per utilizzare il tuo account %(provider_name)s per effettuare il l
msgid "As a final step, please complete the following form:"
msgstr "Come ultimo passo, compila il seguente modulo:"
#: documents/validators.py:36
msgid ", "
msgstr ", "
#: documents/validators.py:24
#, python-brace-format
msgid "Unable to parse URI {value}, missing scheme"
msgstr "Impossibile analizzare l'URI {value}, schema mancante"
#: documents/views.py:336 documents/views.py:2747
#: documents/validators.py:29
#, python-brace-format
msgid "Unable to parse URI {value}, missing net location or path"
msgstr "Impossibile analizzare l'URI {value}, posizione o percorso di rete mancante"
#: documents/validators.py:36
msgid "URI scheme '{parts.scheme}' is not allowed. Allowed schemes: {', '.join(allowed_schemes)}"
msgstr "Lo schema URI '{parts.scheme}' non è consentito. Schemi consentiti: {', '.join(allowed_schemes)}"
#: documents/validators.py:45
#, python-brace-format
msgid "Unable to parse URI {value}"
msgstr "Impossibile analizzare l'URI {value}"
#: documents/views.py:336 documents/views.py:2729
msgid "Invalid more_like_id"
msgstr "more_like_id non valido"
#: documents/views.py:1682
#: documents/views.py:1676
msgid "Invalid AI configuration."
msgstr "Configurazione AI non valida."
#: documents/views.py:1693
#: documents/views.py:1687
msgid "AI backend request timed out."
msgstr "Richiesta di backend AI scaduta."
#: documents/views.py:1705
#: documents/views.py:1699
msgid "AI backend rejected the request. Check logs for details."
msgstr "Il backend IA ha rifiutato la richiesta. Controlla i log per i dettagli."
#: documents/views.py:2572 documents/views.py:2888
#: documents/views.py:2554 documents/views.py:2870
msgid "Specify only one of text, title_search, query, or more_like_id."
msgstr "Specificare solo uno tra text, title_search, query o more_like_id."
#: documents/views.py:4813
#: documents/views.py:4800
#, python-format
msgid "Insufficient permissions to share document %(id)s."
msgstr "Autorizzazioni insufficienti per condividere il documento %(id)s."
#: documents/views.py:4860
#: documents/views.py:4846
msgid "Bundle is already being processed."
msgstr "Il pacchetto è già in fase di elaborazione."
#: documents/views.py:4924
#: documents/views.py:4910
msgid "The share link bundle is still being prepared. Please try again later."
msgstr "Il pacchetto di link di condivisione è ancora in fase di preparazione. Riprova più tardi."
#: documents/views.py:4938
#: documents/views.py:4924
msgid "The share link bundle is unavailable."
msgstr "Il pacchetto di link di condivisione non è disponibile."
@@ -2168,7 +2183,7 @@ msgstr "Abilita la suddivisione sui codici a barre dei tag"
#: paperless/models.py:308
msgid "Stores the values of detected barcodes"
msgstr "Memorizza i valori dei codici a barre individuati"
msgstr ""
#: paperless/models.py:318
msgid "Sets the remote OCR engine"
+39 -24
View File
@@ -2,8 +2,8 @@ msgid ""
msgstr ""
"Project-Id-Version: paperless-ngx\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2026-10-10 22:04+0000\n"
"PO-Revision-Date: 2026-10-10 22:05\n"
"POT-Creation-Date: 2026-10-05 16:26+0000\n"
"PO-Revision-Date: 2026-10-05 16:27\n"
"Last-Translator: \n"
"Language-Team: Japanese\n"
"Language: ja_JP\n"
@@ -1635,48 +1635,48 @@ msgstr "ワークフローの実行"
msgid "workflow runs"
msgstr "ワークフローの実行"
#: documents/serialisers.py:516 documents/serialisers.py:873
#: documents/serialisers.py:2903 documents/views.py:343 documents/views.py:2750
#: documents/serialisers.py:515 documents/serialisers.py:872
#: documents/serialisers.py:2902 documents/views.py:343 documents/views.py:2732
#: paperless_mail/serialisers.py:156
msgid "Insufficient permissions."
msgstr ""
#: documents/serialisers.py:709
#: documents/serialisers.py:708
msgid "Invalid color."
msgstr "無効な色"
#: documents/serialisers.py:2370
#: documents/serialisers.py:2369
#, python-format
msgid "File type %(type)s not supported"
msgstr "ファイルタイプ %(type)s はサポートされていません"
#: documents/serialisers.py:2414
#: documents/serialisers.py:2413
#, python-format
msgid "Custom field id must be an integer: %(id)s"
msgstr ""
#: documents/serialisers.py:2421
#: documents/serialisers.py:2420
#, python-format
msgid "Custom field with id %(id)s does not exist"
msgstr ""
#: documents/serialisers.py:2438 documents/serialisers.py:2448
#: documents/serialisers.py:2437 documents/serialisers.py:2447
msgid "Custom fields must be a list of integers or an object mapping ids to values."
msgstr ""
#: documents/serialisers.py:2443
#: documents/serialisers.py:2442
msgid "Some custom fields don't exist or were specified twice."
msgstr ""
#: documents/serialisers.py:2590
#: documents/serialisers.py:2589
msgid "Invalid variable detected."
msgstr "無効な変数を検出しました"
#: documents/serialisers.py:2959
#: documents/serialisers.py:2958
msgid "Duplicate document identifiers are not allowed."
msgstr ""
#: documents/serialisers.py:2989 documents/views.py:4797
#: documents/serialisers.py:2988 documents/views.py:4787
#, python-format
msgid "Documents not found: %(ids)s"
msgstr ""
@@ -1913,44 +1913,59 @@ msgstr "%(provider_name)s アカウントでログインしようとしていま
msgid "As a final step, please complete the following form:"
msgstr "最後のステップとして、以下のフォームに記入してください"
#: documents/validators.py:36
msgid ", "
#: documents/validators.py:24
#, python-brace-format
msgid "Unable to parse URI {value}, missing scheme"
msgstr ""
#: documents/views.py:336 documents/views.py:2747
#: documents/validators.py:29
#, python-brace-format
msgid "Unable to parse URI {value}, missing net location or path"
msgstr ""
#: documents/validators.py:36
msgid "URI scheme '{parts.scheme}' is not allowed. Allowed schemes: {', '.join(allowed_schemes)}"
msgstr ""
#: documents/validators.py:45
#, python-brace-format
msgid "Unable to parse URI {value}"
msgstr ""
#: documents/views.py:336 documents/views.py:2729
msgid "Invalid more_like_id"
msgstr ""
#: documents/views.py:1682
#: documents/views.py:1676
msgid "Invalid AI configuration."
msgstr ""
#: documents/views.py:1693
#: documents/views.py:1687
msgid "AI backend request timed out."
msgstr ""
#: documents/views.py:1705
#: documents/views.py:1699
msgid "AI backend rejected the request. Check logs for details."
msgstr ""
#: documents/views.py:2572 documents/views.py:2888
#: documents/views.py:2554 documents/views.py:2870
msgid "Specify only one of text, title_search, query, or more_like_id."
msgstr ""
#: documents/views.py:4813
#: documents/views.py:4800
#, python-format
msgid "Insufficient permissions to share document %(id)s."
msgstr ""
#: documents/views.py:4860
#: documents/views.py:4846
msgid "Bundle is already being processed."
msgstr ""
#: documents/views.py:4924
#: documents/views.py:4910
msgid "The share link bundle is still being prepared. Please try again later."
msgstr ""
#: documents/views.py:4938
#: documents/views.py:4924
msgid "The share link bundle is unavailable."
msgstr ""
+40 -25
View File
@@ -2,8 +2,8 @@ msgid ""
msgstr ""
"Project-Id-Version: paperless-ngx\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2026-10-10 22:04+0000\n"
"PO-Revision-Date: 2026-10-10 22:05\n"
"POT-Creation-Date: 2026-10-05 16:26+0000\n"
"PO-Revision-Date: 2026-10-05 16:27\n"
"Last-Translator: \n"
"Language-Team: Korean\n"
"Language: ko_KR\n"
@@ -1635,48 +1635,48 @@ msgstr "워크플로 실행"
msgid "workflow runs"
msgstr "워크플로우 실행"
#: documents/serialisers.py:516 documents/serialisers.py:873
#: documents/serialisers.py:2903 documents/views.py:343 documents/views.py:2750
#: documents/serialisers.py:515 documents/serialisers.py:872
#: documents/serialisers.py:2902 documents/views.py:343 documents/views.py:2732
#: paperless_mail/serialisers.py:156
msgid "Insufficient permissions."
msgstr ""
#: documents/serialisers.py:709
#: documents/serialisers.py:708
msgid "Invalid color."
msgstr ""
#: documents/serialisers.py:2370
#: documents/serialisers.py:2369
#, python-format
msgid "File type %(type)s not supported"
msgstr ""
#: documents/serialisers.py:2414
#: documents/serialisers.py:2413
#, python-format
msgid "Custom field id must be an integer: %(id)s"
msgstr "사용자 정의 ID 필드는 반드시 정수여야 합니다: %(id)s"
#: documents/serialisers.py:2421
#: documents/serialisers.py:2420
#, python-format
msgid "Custom field with id %(id)s does not exist"
msgstr "%(id)s를 ID로 가지는 사용자 정의 필드가 존재하지 않습니다."
#: documents/serialisers.py:2438 documents/serialisers.py:2448
#: documents/serialisers.py:2437 documents/serialisers.py:2447
msgid "Custom fields must be a list of integers or an object mapping ids to values."
msgstr "사용자 정의 필드는 정수 리스트이거나, ID를 값에 매핑하는 객체여야 합니다."
#: documents/serialisers.py:2443
#: documents/serialisers.py:2442
msgid "Some custom fields don't exist or were specified twice."
msgstr "존재하지 않거나 중복된 사용자 정의 필드가 있습니다."
#: documents/serialisers.py:2590
#: documents/serialisers.py:2589
msgid "Invalid variable detected."
msgstr "잘못된 변수가 감지되었습니다."
#: documents/serialisers.py:2959
#: documents/serialisers.py:2958
msgid "Duplicate document identifiers are not allowed."
msgstr ""
#: documents/serialisers.py:2989 documents/views.py:4797
#: documents/serialisers.py:2988 documents/views.py:4787
#, python-format
msgid "Documents not found: %(ids)s"
msgstr ""
@@ -1913,44 +1913,59 @@ msgstr "%(provider_name)s 의 계정을 사용하여 로그인하려고 합니
msgid "As a final step, please complete the following form:"
msgstr "마지막 단계로 다음 양식을 작성해 주세요:"
#: documents/validators.py:36
msgid ", "
msgstr ""
#: documents/validators.py:24
#, python-brace-format
msgid "Unable to parse URI {value}, missing scheme"
msgstr "{value} URI를 파싱할 수 없습니다: 스킴이 누락되었습니다."
#: documents/views.py:336 documents/views.py:2747
#: documents/validators.py:29
#, python-brace-format
msgid "Unable to parse URI {value}, missing net location or path"
msgstr "{value} URI를 파싱할 수 없습니다: 네트워크 위치 또는 경로가 누락되었습니다."
#: documents/validators.py:36
msgid "URI scheme '{parts.scheme}' is not allowed. Allowed schemes: {', '.join(allowed_schemes)}"
msgstr "URI 스킴 '{parts.scheme}'는 허용되지 않습니다. 허용된 스킴: {', '.join(allowed_schemes)}"
#: documents/validators.py:45
#, python-brace-format
msgid "Unable to parse URI {value}"
msgstr "{value} URI를 파싱할 수 없음"
#: documents/views.py:336 documents/views.py:2729
msgid "Invalid more_like_id"
msgstr ""
#: documents/views.py:1682
#: documents/views.py:1676
msgid "Invalid AI configuration."
msgstr ""
#: documents/views.py:1693
#: documents/views.py:1687
msgid "AI backend request timed out."
msgstr ""
#: documents/views.py:1705
#: documents/views.py:1699
msgid "AI backend rejected the request. Check logs for details."
msgstr ""
#: documents/views.py:2572 documents/views.py:2888
#: documents/views.py:2554 documents/views.py:2870
msgid "Specify only one of text, title_search, query, or more_like_id."
msgstr ""
#: documents/views.py:4813
#: documents/views.py:4800
#, python-format
msgid "Insufficient permissions to share document %(id)s."
msgstr ""
#: documents/views.py:4860
#: documents/views.py:4846
msgid "Bundle is already being processed."
msgstr ""
#: documents/views.py:4924
#: documents/views.py:4910
msgid "The share link bundle is still being prepared. Please try again later."
msgstr ""
#: documents/views.py:4938
#: documents/views.py:4924
msgid "The share link bundle is unavailable."
msgstr ""
+39 -24
View File
@@ -2,8 +2,8 @@ msgid ""
msgstr ""
"Project-Id-Version: paperless-ngx\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2026-10-10 22:04+0000\n"
"PO-Revision-Date: 2026-10-10 22:05\n"
"POT-Creation-Date: 2026-10-05 16:26+0000\n"
"PO-Revision-Date: 2026-10-05 16:27\n"
"Last-Translator: \n"
"Language-Team: Luxembourgish\n"
"Language: lb_LU\n"
@@ -1635,48 +1635,48 @@ msgstr ""
msgid "workflow runs"
msgstr ""
#: documents/serialisers.py:516 documents/serialisers.py:873
#: documents/serialisers.py:2903 documents/views.py:343 documents/views.py:2750
#: documents/serialisers.py:515 documents/serialisers.py:872
#: documents/serialisers.py:2902 documents/views.py:343 documents/views.py:2732
#: paperless_mail/serialisers.py:156
msgid "Insufficient permissions."
msgstr ""
#: documents/serialisers.py:709
#: documents/serialisers.py:708
msgid "Invalid color."
msgstr "Ongëlteg Faarf."
#: documents/serialisers.py:2370
#: documents/serialisers.py:2369
#, python-format
msgid "File type %(type)s not supported"
msgstr "Fichierstyp %(type)s net ënnerstëtzt"
#: documents/serialisers.py:2414
#: documents/serialisers.py:2413
#, python-format
msgid "Custom field id must be an integer: %(id)s"
msgstr ""
#: documents/serialisers.py:2421
#: documents/serialisers.py:2420
#, python-format
msgid "Custom field with id %(id)s does not exist"
msgstr ""
#: documents/serialisers.py:2438 documents/serialisers.py:2448
#: documents/serialisers.py:2437 documents/serialisers.py:2447
msgid "Custom fields must be a list of integers or an object mapping ids to values."
msgstr ""
#: documents/serialisers.py:2443
#: documents/serialisers.py:2442
msgid "Some custom fields don't exist or were specified twice."
msgstr ""
#: documents/serialisers.py:2590
#: documents/serialisers.py:2589
msgid "Invalid variable detected."
msgstr "Ongëlteg Zeechen detektéiert."
#: documents/serialisers.py:2959
#: documents/serialisers.py:2958
msgid "Duplicate document identifiers are not allowed."
msgstr ""
#: documents/serialisers.py:2989 documents/views.py:4797
#: documents/serialisers.py:2988 documents/views.py:4787
#, python-format
msgid "Documents not found: %(ids)s"
msgstr ""
@@ -1912,44 +1912,59 @@ msgstr ""
msgid "As a final step, please complete the following form:"
msgstr ""
#: documents/validators.py:36
msgid ", "
#: documents/validators.py:24
#, python-brace-format
msgid "Unable to parse URI {value}, missing scheme"
msgstr ""
#: documents/views.py:336 documents/views.py:2747
#: documents/validators.py:29
#, python-brace-format
msgid "Unable to parse URI {value}, missing net location or path"
msgstr ""
#: documents/validators.py:36
msgid "URI scheme '{parts.scheme}' is not allowed. Allowed schemes: {', '.join(allowed_schemes)}"
msgstr ""
#: documents/validators.py:45
#, python-brace-format
msgid "Unable to parse URI {value}"
msgstr ""
#: documents/views.py:336 documents/views.py:2729
msgid "Invalid more_like_id"
msgstr ""
#: documents/views.py:1682
#: documents/views.py:1676
msgid "Invalid AI configuration."
msgstr ""
#: documents/views.py:1693
#: documents/views.py:1687
msgid "AI backend request timed out."
msgstr ""
#: documents/views.py:1705
#: documents/views.py:1699
msgid "AI backend rejected the request. Check logs for details."
msgstr ""
#: documents/views.py:2572 documents/views.py:2888
#: documents/views.py:2554 documents/views.py:2870
msgid "Specify only one of text, title_search, query, or more_like_id."
msgstr ""
#: documents/views.py:4813
#: documents/views.py:4800
#, python-format
msgid "Insufficient permissions to share document %(id)s."
msgstr ""
#: documents/views.py:4860
#: documents/views.py:4846
msgid "Bundle is already being processed."
msgstr ""
#: documents/views.py:4924
#: documents/views.py:4910
msgid "The share link bundle is still being prepared. Please try again later."
msgstr ""
#: documents/views.py:4938
#: documents/views.py:4924
msgid "The share link bundle is unavailable."
msgstr ""
+40 -25
View File
@@ -2,8 +2,8 @@ msgid ""
msgstr ""
"Project-Id-Version: paperless-ngx\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2026-10-10 22:04+0000\n"
"PO-Revision-Date: 2026-10-10 22:05\n"
"POT-Creation-Date: 2026-10-05 16:26+0000\n"
"PO-Revision-Date: 2026-10-05 16:27\n"
"Last-Translator: \n"
"Language-Team: Lithuanian\n"
"Language: lt_LT\n"
@@ -1635,48 +1635,48 @@ msgstr ""
msgid "workflow runs"
msgstr ""
#: documents/serialisers.py:516 documents/serialisers.py:873
#: documents/serialisers.py:2903 documents/views.py:343 documents/views.py:2750
#: documents/serialisers.py:515 documents/serialisers.py:872
#: documents/serialisers.py:2902 documents/views.py:343 documents/views.py:2732
#: paperless_mail/serialisers.py:156
msgid "Insufficient permissions."
msgstr ""
#: documents/serialisers.py:709
#: documents/serialisers.py:708
msgid "Invalid color."
msgstr ""
#: documents/serialisers.py:2370
#: documents/serialisers.py:2369
#, python-format
msgid "File type %(type)s not supported"
msgstr ""
#: documents/serialisers.py:2414
#: documents/serialisers.py:2413
#, python-format
msgid "Custom field id must be an integer: %(id)s"
msgstr ""
#: documents/serialisers.py:2421
#: documents/serialisers.py:2420
#, python-format
msgid "Custom field with id %(id)s does not exist"
msgstr ""
#: documents/serialisers.py:2438 documents/serialisers.py:2448
#: documents/serialisers.py:2437 documents/serialisers.py:2447
msgid "Custom fields must be a list of integers or an object mapping ids to values."
msgstr ""
#: documents/serialisers.py:2443
#: documents/serialisers.py:2442
msgid "Some custom fields don't exist or were specified twice."
msgstr ""
#: documents/serialisers.py:2590
#: documents/serialisers.py:2589
msgid "Invalid variable detected."
msgstr ""
#: documents/serialisers.py:2959
#: documents/serialisers.py:2958
msgid "Duplicate document identifiers are not allowed."
msgstr ""
#: documents/serialisers.py:2989 documents/views.py:4797
#: documents/serialisers.py:2988 documents/views.py:4787
#, python-format
msgid "Documents not found: %(ids)s"
msgstr ""
@@ -1912,44 +1912,59 @@ msgstr "Ketinate prisijungimui naudoti savo %(provider_name)s paskyrą."
msgid "As a final step, please complete the following form:"
msgstr "Galiausiai užpildykite šią formą:"
#: documents/validators.py:36
msgid ", "
msgstr ""
#: documents/validators.py:24
#, python-brace-format
msgid "Unable to parse URI {value}, missing scheme"
msgstr "Nepavyko apdoroti URI {value}, trūksta schemos"
#: documents/views.py:336 documents/views.py:2747
#: documents/validators.py:29
#, python-brace-format
msgid "Unable to parse URI {value}, missing net location or path"
msgstr "Nepavyko apdoroti URI {value}, trūksta tinklo vietos arba kelio"
#: documents/validators.py:36
msgid "URI scheme '{parts.scheme}' is not allowed. Allowed schemes: {', '.join(allowed_schemes)}"
msgstr "URI schema '{parts.scheme}' nėra leistina. Galimos schemos: {', '.join(allowed_schemes)}"
#: documents/validators.py:45
#, python-brace-format
msgid "Unable to parse URI {value}"
msgstr "Nepavyko apdoroti URI {value}"
#: documents/views.py:336 documents/views.py:2729
msgid "Invalid more_like_id"
msgstr ""
#: documents/views.py:1682
#: documents/views.py:1676
msgid "Invalid AI configuration."
msgstr ""
#: documents/views.py:1693
#: documents/views.py:1687
msgid "AI backend request timed out."
msgstr ""
#: documents/views.py:1705
#: documents/views.py:1699
msgid "AI backend rejected the request. Check logs for details."
msgstr ""
#: documents/views.py:2572 documents/views.py:2888
#: documents/views.py:2554 documents/views.py:2870
msgid "Specify only one of text, title_search, query, or more_like_id."
msgstr ""
#: documents/views.py:4813
#: documents/views.py:4800
#, python-format
msgid "Insufficient permissions to share document %(id)s."
msgstr "Nepakanka leidimų bendrinti dokumentą %(id)s."
#: documents/views.py:4860
#: documents/views.py:4846
msgid "Bundle is already being processed."
msgstr "Rinkinys jau apdorojamas."
#: documents/views.py:4924
#: documents/views.py:4910
msgid "The share link bundle is still being prepared. Please try again later."
msgstr "Bendrinimo nuorodų rinkinys vis dar ruošiamas. Bandykite dar kartą vėliau."
#: documents/views.py:4938
#: documents/views.py:4924
msgid "The share link bundle is unavailable."
msgstr "Dalinimos nuorodų rinkinys yra nepasiekiamas."
+39 -24
View File
@@ -2,8 +2,8 @@ msgid ""
msgstr ""
"Project-Id-Version: paperless-ngx\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2026-10-10 22:04+0000\n"
"PO-Revision-Date: 2026-10-10 22:05\n"
"POT-Creation-Date: 2026-10-05 16:26+0000\n"
"PO-Revision-Date: 2026-10-05 16:27\n"
"Last-Translator: \n"
"Language-Team: Latvian\n"
"Language: lv_LV\n"
@@ -1635,48 +1635,48 @@ msgstr ""
msgid "workflow runs"
msgstr ""
#: documents/serialisers.py:516 documents/serialisers.py:873
#: documents/serialisers.py:2903 documents/views.py:343 documents/views.py:2750
#: documents/serialisers.py:515 documents/serialisers.py:872
#: documents/serialisers.py:2902 documents/views.py:343 documents/views.py:2732
#: paperless_mail/serialisers.py:156
msgid "Insufficient permissions."
msgstr ""
#: documents/serialisers.py:709
#: documents/serialisers.py:708
msgid "Invalid color."
msgstr ""
#: documents/serialisers.py:2370
#: documents/serialisers.py:2369
#, python-format
msgid "File type %(type)s not supported"
msgstr ""
#: documents/serialisers.py:2414
#: documents/serialisers.py:2413
#, python-format
msgid "Custom field id must be an integer: %(id)s"
msgstr ""
#: documents/serialisers.py:2421
#: documents/serialisers.py:2420
#, python-format
msgid "Custom field with id %(id)s does not exist"
msgstr ""
#: documents/serialisers.py:2438 documents/serialisers.py:2448
#: documents/serialisers.py:2437 documents/serialisers.py:2447
msgid "Custom fields must be a list of integers or an object mapping ids to values."
msgstr ""
#: documents/serialisers.py:2443
#: documents/serialisers.py:2442
msgid "Some custom fields don't exist or were specified twice."
msgstr ""
#: documents/serialisers.py:2590
#: documents/serialisers.py:2589
msgid "Invalid variable detected."
msgstr ""
#: documents/serialisers.py:2959
#: documents/serialisers.py:2958
msgid "Duplicate document identifiers are not allowed."
msgstr ""
#: documents/serialisers.py:2989 documents/views.py:4797
#: documents/serialisers.py:2988 documents/views.py:4787
#, python-format
msgid "Documents not found: %(ids)s"
msgstr ""
@@ -1912,44 +1912,59 @@ msgstr ""
msgid "As a final step, please complete the following form:"
msgstr ""
#: documents/validators.py:36
msgid ", "
#: documents/validators.py:24
#, python-brace-format
msgid "Unable to parse URI {value}, missing scheme"
msgstr ""
#: documents/views.py:336 documents/views.py:2747
#: documents/validators.py:29
#, python-brace-format
msgid "Unable to parse URI {value}, missing net location or path"
msgstr ""
#: documents/validators.py:36
msgid "URI scheme '{parts.scheme}' is not allowed. Allowed schemes: {', '.join(allowed_schemes)}"
msgstr ""
#: documents/validators.py:45
#, python-brace-format
msgid "Unable to parse URI {value}"
msgstr ""
#: documents/views.py:336 documents/views.py:2729
msgid "Invalid more_like_id"
msgstr ""
#: documents/views.py:1682
#: documents/views.py:1676
msgid "Invalid AI configuration."
msgstr ""
#: documents/views.py:1693
#: documents/views.py:1687
msgid "AI backend request timed out."
msgstr ""
#: documents/views.py:1705
#: documents/views.py:1699
msgid "AI backend rejected the request. Check logs for details."
msgstr ""
#: documents/views.py:2572 documents/views.py:2888
#: documents/views.py:2554 documents/views.py:2870
msgid "Specify only one of text, title_search, query, or more_like_id."
msgstr ""
#: documents/views.py:4813
#: documents/views.py:4800
#, python-format
msgid "Insufficient permissions to share document %(id)s."
msgstr ""
#: documents/views.py:4860
#: documents/views.py:4846
msgid "Bundle is already being processed."
msgstr ""
#: documents/views.py:4924
#: documents/views.py:4910
msgid "The share link bundle is still being prepared. Please try again later."
msgstr ""
#: documents/views.py:4938
#: documents/views.py:4924
msgid "The share link bundle is unavailable."
msgstr ""
+39 -24
View File
@@ -2,8 +2,8 @@ msgid ""
msgstr ""
"Project-Id-Version: paperless-ngx\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2026-10-10 22:04+0000\n"
"PO-Revision-Date: 2026-10-10 22:05\n"
"POT-Creation-Date: 2026-10-05 16:26+0000\n"
"PO-Revision-Date: 2026-10-05 16:27\n"
"Last-Translator: \n"
"Language-Team: Macedonian\n"
"Language: mk_MK\n"
@@ -1635,48 +1635,48 @@ msgstr ""
msgid "workflow runs"
msgstr ""
#: documents/serialisers.py:516 documents/serialisers.py:873
#: documents/serialisers.py:2903 documents/views.py:343 documents/views.py:2750
#: documents/serialisers.py:515 documents/serialisers.py:872
#: documents/serialisers.py:2902 documents/views.py:343 documents/views.py:2732
#: paperless_mail/serialisers.py:156
msgid "Insufficient permissions."
msgstr ""
#: documents/serialisers.py:709
#: documents/serialisers.py:708
msgid "Invalid color."
msgstr ""
#: documents/serialisers.py:2370
#: documents/serialisers.py:2369
#, python-format
msgid "File type %(type)s not supported"
msgstr ""
#: documents/serialisers.py:2414
#: documents/serialisers.py:2413
#, python-format
msgid "Custom field id must be an integer: %(id)s"
msgstr ""
#: documents/serialisers.py:2421
#: documents/serialisers.py:2420
#, python-format
msgid "Custom field with id %(id)s does not exist"
msgstr ""
#: documents/serialisers.py:2438 documents/serialisers.py:2448
#: documents/serialisers.py:2437 documents/serialisers.py:2447
msgid "Custom fields must be a list of integers or an object mapping ids to values."
msgstr ""
#: documents/serialisers.py:2443
#: documents/serialisers.py:2442
msgid "Some custom fields don't exist or were specified twice."
msgstr ""
#: documents/serialisers.py:2590
#: documents/serialisers.py:2589
msgid "Invalid variable detected."
msgstr ""
#: documents/serialisers.py:2959
#: documents/serialisers.py:2958
msgid "Duplicate document identifiers are not allowed."
msgstr ""
#: documents/serialisers.py:2989 documents/views.py:4797
#: documents/serialisers.py:2988 documents/views.py:4787
#, python-format
msgid "Documents not found: %(ids)s"
msgstr ""
@@ -1912,44 +1912,59 @@ msgstr ""
msgid "As a final step, please complete the following form:"
msgstr ""
#: documents/validators.py:36
msgid ", "
#: documents/validators.py:24
#, python-brace-format
msgid "Unable to parse URI {value}, missing scheme"
msgstr ""
#: documents/views.py:336 documents/views.py:2747
#: documents/validators.py:29
#, python-brace-format
msgid "Unable to parse URI {value}, missing net location or path"
msgstr ""
#: documents/validators.py:36
msgid "URI scheme '{parts.scheme}' is not allowed. Allowed schemes: {', '.join(allowed_schemes)}"
msgstr ""
#: documents/validators.py:45
#, python-brace-format
msgid "Unable to parse URI {value}"
msgstr ""
#: documents/views.py:336 documents/views.py:2729
msgid "Invalid more_like_id"
msgstr ""
#: documents/views.py:1682
#: documents/views.py:1676
msgid "Invalid AI configuration."
msgstr ""
#: documents/views.py:1693
#: documents/views.py:1687
msgid "AI backend request timed out."
msgstr ""
#: documents/views.py:1705
#: documents/views.py:1699
msgid "AI backend rejected the request. Check logs for details."
msgstr ""
#: documents/views.py:2572 documents/views.py:2888
#: documents/views.py:2554 documents/views.py:2870
msgid "Specify only one of text, title_search, query, or more_like_id."
msgstr ""
#: documents/views.py:4813
#: documents/views.py:4800
#, python-format
msgid "Insufficient permissions to share document %(id)s."
msgstr ""
#: documents/views.py:4860
#: documents/views.py:4846
msgid "Bundle is already being processed."
msgstr ""
#: documents/views.py:4924
#: documents/views.py:4910
msgid "The share link bundle is still being prepared. Please try again later."
msgstr ""
#: documents/views.py:4938
#: documents/views.py:4924
msgid "The share link bundle is unavailable."
msgstr ""
+39 -24
View File
@@ -2,8 +2,8 @@ msgid ""
msgstr ""
"Project-Id-Version: paperless-ngx\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2026-10-10 22:04+0000\n"
"PO-Revision-Date: 2026-10-10 22:05\n"
"POT-Creation-Date: 2026-10-05 16:26+0000\n"
"PO-Revision-Date: 2026-10-05 16:27\n"
"Last-Translator: \n"
"Language-Team: Malay\n"
"Language: ms_MY\n"
@@ -1635,48 +1635,48 @@ msgstr ""
msgid "workflow runs"
msgstr ""
#: documents/serialisers.py:516 documents/serialisers.py:873
#: documents/serialisers.py:2903 documents/views.py:343 documents/views.py:2750
#: documents/serialisers.py:515 documents/serialisers.py:872
#: documents/serialisers.py:2902 documents/views.py:343 documents/views.py:2732
#: paperless_mail/serialisers.py:156
msgid "Insufficient permissions."
msgstr ""
#: documents/serialisers.py:709
#: documents/serialisers.py:708
msgid "Invalid color."
msgstr ""
#: documents/serialisers.py:2370
#: documents/serialisers.py:2369
#, python-format
msgid "File type %(type)s not supported"
msgstr ""
#: documents/serialisers.py:2414
#: documents/serialisers.py:2413
#, python-format
msgid "Custom field id must be an integer: %(id)s"
msgstr ""
#: documents/serialisers.py:2421
#: documents/serialisers.py:2420
#, python-format
msgid "Custom field with id %(id)s does not exist"
msgstr ""
#: documents/serialisers.py:2438 documents/serialisers.py:2448
#: documents/serialisers.py:2437 documents/serialisers.py:2447
msgid "Custom fields must be a list of integers or an object mapping ids to values."
msgstr ""
#: documents/serialisers.py:2443
#: documents/serialisers.py:2442
msgid "Some custom fields don't exist or were specified twice."
msgstr ""
#: documents/serialisers.py:2590
#: documents/serialisers.py:2589
msgid "Invalid variable detected."
msgstr ""
#: documents/serialisers.py:2959
#: documents/serialisers.py:2958
msgid "Duplicate document identifiers are not allowed."
msgstr ""
#: documents/serialisers.py:2989 documents/views.py:4797
#: documents/serialisers.py:2988 documents/views.py:4787
#, python-format
msgid "Documents not found: %(ids)s"
msgstr ""
@@ -1912,44 +1912,59 @@ msgstr ""
msgid "As a final step, please complete the following form:"
msgstr ""
#: documents/validators.py:36
msgid ", "
#: documents/validators.py:24
#, python-brace-format
msgid "Unable to parse URI {value}, missing scheme"
msgstr ""
#: documents/views.py:336 documents/views.py:2747
#: documents/validators.py:29
#, python-brace-format
msgid "Unable to parse URI {value}, missing net location or path"
msgstr ""
#: documents/validators.py:36
msgid "URI scheme '{parts.scheme}' is not allowed. Allowed schemes: {', '.join(allowed_schemes)}"
msgstr ""
#: documents/validators.py:45
#, python-brace-format
msgid "Unable to parse URI {value}"
msgstr ""
#: documents/views.py:336 documents/views.py:2729
msgid "Invalid more_like_id"
msgstr ""
#: documents/views.py:1682
#: documents/views.py:1676
msgid "Invalid AI configuration."
msgstr ""
#: documents/views.py:1693
#: documents/views.py:1687
msgid "AI backend request timed out."
msgstr ""
#: documents/views.py:1705
#: documents/views.py:1699
msgid "AI backend rejected the request. Check logs for details."
msgstr ""
#: documents/views.py:2572 documents/views.py:2888
#: documents/views.py:2554 documents/views.py:2870
msgid "Specify only one of text, title_search, query, or more_like_id."
msgstr ""
#: documents/views.py:4813
#: documents/views.py:4800
#, python-format
msgid "Insufficient permissions to share document %(id)s."
msgstr ""
#: documents/views.py:4860
#: documents/views.py:4846
msgid "Bundle is already being processed."
msgstr ""
#: documents/views.py:4924
#: documents/views.py:4910
msgid "The share link bundle is still being prepared. Please try again later."
msgstr ""
#: documents/views.py:4938
#: documents/views.py:4924
msgid "The share link bundle is unavailable."
msgstr ""
+39 -24
View File
@@ -2,8 +2,8 @@ msgid ""
msgstr ""
"Project-Id-Version: paperless-ngx\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2026-10-10 22:04+0000\n"
"PO-Revision-Date: 2026-10-10 22:05\n"
"POT-Creation-Date: 2026-10-05 16:26+0000\n"
"PO-Revision-Date: 2026-10-05 16:27\n"
"Last-Translator: \n"
"Language-Team: Dutch\n"
"Language: nl_NL\n"
@@ -1635,48 +1635,48 @@ msgstr ""
msgid "workflow runs"
msgstr ""
#: documents/serialisers.py:516 documents/serialisers.py:873
#: documents/serialisers.py:2903 documents/views.py:343 documents/views.py:2750
#: documents/serialisers.py:515 documents/serialisers.py:872
#: documents/serialisers.py:2902 documents/views.py:343 documents/views.py:2732
#: paperless_mail/serialisers.py:156
msgid "Insufficient permissions."
msgstr ""
#: documents/serialisers.py:709
#: documents/serialisers.py:708
msgid "Invalid color."
msgstr "Ongeldig kleur."
#: documents/serialisers.py:2370
#: documents/serialisers.py:2369
#, python-format
msgid "File type %(type)s not supported"
msgstr "Bestandstype %(type)s niet ondersteund"
#: documents/serialisers.py:2414
#: documents/serialisers.py:2413
#, python-format
msgid "Custom field id must be an integer: %(id)s"
msgstr ""
#: documents/serialisers.py:2421
#: documents/serialisers.py:2420
#, python-format
msgid "Custom field with id %(id)s does not exist"
msgstr "Aangepast veld met id %(id)s bestaat niet"
#: documents/serialisers.py:2438 documents/serialisers.py:2448
#: documents/serialisers.py:2437 documents/serialisers.py:2447
msgid "Custom fields must be a list of integers or an object mapping ids to values."
msgstr "Aangepaste velden moeten een lijst van numerieke waarden zijn of een object mapping id naar waarden."
#: documents/serialisers.py:2443
#: documents/serialisers.py:2442
msgid "Some custom fields don't exist or were specified twice."
msgstr "Sommige aangepaste velden bestaan niet of zijn dubbel opgegeven."
#: documents/serialisers.py:2590
#: documents/serialisers.py:2589
msgid "Invalid variable detected."
msgstr "Ongeldige variabele ontdekt."
#: documents/serialisers.py:2959
#: documents/serialisers.py:2958
msgid "Duplicate document identifiers are not allowed."
msgstr ""
#: documents/serialisers.py:2989 documents/views.py:4797
#: documents/serialisers.py:2988 documents/views.py:4787
#, python-format
msgid "Documents not found: %(ids)s"
msgstr ""
@@ -1913,44 +1913,59 @@ msgstr "Je staat op het punt om met je %(provider_name)s account in te loggen."
msgid "As a final step, please complete the following form:"
msgstr "Vul als laatste stap het volgende formulier in:"
#: documents/validators.py:36
msgid ", "
#: documents/validators.py:24
#, python-brace-format
msgid "Unable to parse URI {value}, missing scheme"
msgstr ""
#: documents/views.py:336 documents/views.py:2747
#: documents/validators.py:29
#, python-brace-format
msgid "Unable to parse URI {value}, missing net location or path"
msgstr ""
#: documents/validators.py:36
msgid "URI scheme '{parts.scheme}' is not allowed. Allowed schemes: {', '.join(allowed_schemes)}"
msgstr ""
#: documents/validators.py:45
#, python-brace-format
msgid "Unable to parse URI {value}"
msgstr ""
#: documents/views.py:336 documents/views.py:2729
msgid "Invalid more_like_id"
msgstr ""
#: documents/views.py:1682
#: documents/views.py:1676
msgid "Invalid AI configuration."
msgstr ""
#: documents/views.py:1693
#: documents/views.py:1687
msgid "AI backend request timed out."
msgstr ""
#: documents/views.py:1705
#: documents/views.py:1699
msgid "AI backend rejected the request. Check logs for details."
msgstr ""
#: documents/views.py:2572 documents/views.py:2888
#: documents/views.py:2554 documents/views.py:2870
msgid "Specify only one of text, title_search, query, or more_like_id."
msgstr ""
#: documents/views.py:4813
#: documents/views.py:4800
#, python-format
msgid "Insufficient permissions to share document %(id)s."
msgstr ""
#: documents/views.py:4860
#: documents/views.py:4846
msgid "Bundle is already being processed."
msgstr ""
#: documents/views.py:4924
#: documents/views.py:4910
msgid "The share link bundle is still being prepared. Please try again later."
msgstr ""
#: documents/views.py:4938
#: documents/views.py:4924
msgid "The share link bundle is unavailable."
msgstr ""
+40 -25
View File
@@ -2,8 +2,8 @@ msgid ""
msgstr ""
"Project-Id-Version: paperless-ngx\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2026-10-10 22:04+0000\n"
"PO-Revision-Date: 2026-10-10 22:05\n"
"POT-Creation-Date: 2026-10-05 16:26+0000\n"
"PO-Revision-Date: 2026-10-05 16:27\n"
"Last-Translator: \n"
"Language-Team: Norwegian\n"
"Language: no_NO\n"
@@ -1635,48 +1635,48 @@ msgstr "workflow run (NO)"
msgid "workflow runs"
msgstr "workflow runs (NO)"
#: documents/serialisers.py:516 documents/serialisers.py:873
#: documents/serialisers.py:2903 documents/views.py:343 documents/views.py:2750
#: documents/serialisers.py:515 documents/serialisers.py:872
#: documents/serialisers.py:2902 documents/views.py:343 documents/views.py:2732
#: paperless_mail/serialisers.py:156
msgid "Insufficient permissions."
msgstr "Utilstrekkelige tillatelser."
#: documents/serialisers.py:709
#: documents/serialisers.py:708
msgid "Invalid color."
msgstr "Ugyldig farge."
#: documents/serialisers.py:2370
#: documents/serialisers.py:2369
#, python-format
msgid "File type %(type)s not supported"
msgstr "Filtype %(type)s støttes ikke"
#: documents/serialisers.py:2414
#: documents/serialisers.py:2413
#, python-format
msgid "Custom field id must be an integer: %(id)s"
msgstr "Egendefinert felt-id må være et heltall: %(id)s"
#: documents/serialisers.py:2421
#: documents/serialisers.py:2420
#, python-format
msgid "Custom field with id %(id)s does not exist"
msgstr "Egendefinert felt med id %(id)s finnes ikke"
#: documents/serialisers.py:2438 documents/serialisers.py:2448
#: documents/serialisers.py:2437 documents/serialisers.py:2447
msgid "Custom fields must be a list of integers or an object mapping ids to values."
msgstr "Custom fields must be a list of integers or an object mapping ids to values. (NO)"
#: documents/serialisers.py:2443
#: documents/serialisers.py:2442
msgid "Some custom fields don't exist or were specified twice."
msgstr "Some custom fields don't exist or were specified twice. (NO)"
#: documents/serialisers.py:2590
#: documents/serialisers.py:2589
msgid "Invalid variable detected."
msgstr "Ugyldig variabel oppdaget."
#: documents/serialisers.py:2959
#: documents/serialisers.py:2958
msgid "Duplicate document identifiers are not allowed."
msgstr "Duplicate document identifiers are not allowed. (NO)"
#: documents/serialisers.py:2989 documents/views.py:4797
#: documents/serialisers.py:2988 documents/views.py:4787
#, python-format
msgid "Documents not found: %(ids)s"
msgstr "Documents not found: %(ids)s (NO)"
@@ -1913,44 +1913,59 @@ msgstr "You are about to use your %(provider_name)s account to login. (NO)"
msgid "As a final step, please complete the following form:"
msgstr "As a final step, please complete the following form: (NO)"
#: documents/validators.py:36
msgid ", "
msgstr ""
#: documents/validators.py:24
#, python-brace-format
msgid "Unable to parse URI {value}, missing scheme"
msgstr "Unable to parse URI {value}, missing scheme (NO)"
#: documents/views.py:336 documents/views.py:2747
#: documents/validators.py:29
#, python-brace-format
msgid "Unable to parse URI {value}, missing net location or path"
msgstr "Unable to parse URI {value}, missing net location or path (NO)"
#: documents/validators.py:36
msgid "URI scheme '{parts.scheme}' is not allowed. Allowed schemes: {', '.join(allowed_schemes)}"
msgstr "URI scheme '{parts.scheme}' is not allowed. Allowed schemes: {', '.join(allowed_schemes)} (NO)"
#: documents/validators.py:45
#, python-brace-format
msgid "Unable to parse URI {value}"
msgstr "Unable to parse URI {value} (NO)"
#: documents/views.py:336 documents/views.py:2729
msgid "Invalid more_like_id"
msgstr "Invalid more_like_id (NO)"
#: documents/views.py:1682
#: documents/views.py:1676
msgid "Invalid AI configuration."
msgstr "Invalid AI configuration. (NO)"
#: documents/views.py:1693
#: documents/views.py:1687
msgid "AI backend request timed out."
msgstr "Forespørselen til KI-tjenesten fikk tidsavbrudd."
#: documents/views.py:1705
#: documents/views.py:1699
msgid "AI backend rejected the request. Check logs for details."
msgstr ""
#: documents/views.py:2572 documents/views.py:2888
#: documents/views.py:2554 documents/views.py:2870
msgid "Specify only one of text, title_search, query, or more_like_id."
msgstr "Specify only one of text, title_search, query, or more_like_id. (NO)"
#: documents/views.py:4813
#: documents/views.py:4800
#, python-format
msgid "Insufficient permissions to share document %(id)s."
msgstr "Insufficient permissions to share document %(id)s. (NO)"
#: documents/views.py:4860
#: documents/views.py:4846
msgid "Bundle is already being processed."
msgstr "Bundle is already being processed. (NO)"
#: documents/views.py:4924
#: documents/views.py:4910
msgid "The share link bundle is still being prepared. Please try again later."
msgstr "The share link bundle is still being prepared. Please try again later. (NO)"
#: documents/views.py:4938
#: documents/views.py:4924
msgid "The share link bundle is unavailable."
msgstr "The share link bundle is unavailable. (NO)"
+40 -25
View File
@@ -2,8 +2,8 @@ msgid ""
msgstr ""
"Project-Id-Version: paperless-ngx\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2026-10-10 22:04+0000\n"
"PO-Revision-Date: 2026-10-10 22:05\n"
"POT-Creation-Date: 2026-10-05 16:26+0000\n"
"PO-Revision-Date: 2026-10-05 16:27\n"
"Last-Translator: \n"
"Language-Team: Polish\n"
"Language: pl_PL\n"
@@ -1635,48 +1635,48 @@ msgstr "uruchomienie przepływu pracy"
msgid "workflow runs"
msgstr "uruchomienia przepływu pracy"
#: documents/serialisers.py:516 documents/serialisers.py:873
#: documents/serialisers.py:2903 documents/views.py:343 documents/views.py:2750
#: documents/serialisers.py:515 documents/serialisers.py:872
#: documents/serialisers.py:2902 documents/views.py:343 documents/views.py:2732
#: paperless_mail/serialisers.py:156
msgid "Insufficient permissions."
msgstr "Niewystarczające uprawnienia."
#: documents/serialisers.py:709
#: documents/serialisers.py:708
msgid "Invalid color."
msgstr "Nieprawidłowy kolor."
#: documents/serialisers.py:2370
#: documents/serialisers.py:2369
#, python-format
msgid "File type %(type)s not supported"
msgstr "Typ pliku %(type)s nie jest obsługiwany"
#: documents/serialisers.py:2414
#: documents/serialisers.py:2413
#, python-format
msgid "Custom field id must be an integer: %(id)s"
msgstr "Identyfikator pola niestandardowego musi być liczbą całkowitą: %(id)s"
#: documents/serialisers.py:2421
#: documents/serialisers.py:2420
#, python-format
msgid "Custom field with id %(id)s does not exist"
msgstr "Pole niestandardowe z id %(id)s nie istnieje"
#: documents/serialisers.py:2438 documents/serialisers.py:2448
#: documents/serialisers.py:2437 documents/serialisers.py:2447
msgid "Custom fields must be a list of integers or an object mapping ids to values."
msgstr "Pola niestandardowe muszą być listą liczb całkowitych lub obiektem mapującym identyfikatory na wartości."
#: documents/serialisers.py:2443
#: documents/serialisers.py:2442
msgid "Some custom fields don't exist or were specified twice."
msgstr "Niektóre niestandardowe pola nie istnieją lub zostały określone dwukrotnie."
#: documents/serialisers.py:2590
#: documents/serialisers.py:2589
msgid "Invalid variable detected."
msgstr "Wykryto nieprawidłową zmienną."
#: documents/serialisers.py:2959
#: documents/serialisers.py:2958
msgid "Duplicate document identifiers are not allowed."
msgstr "Nie dopuszcza się powielania identyfikatorów dokumentów."
#: documents/serialisers.py:2989 documents/views.py:4797
#: documents/serialisers.py:2988 documents/views.py:4787
#, python-format
msgid "Documents not found: %(ids)s"
msgstr "Nie znaleziono dokumentów: %(ids)s"
@@ -1913,44 +1913,59 @@ msgstr "Zamierzasz użyć konta %(provider_name)s aby się zalogować."
msgid "As a final step, please complete the following form:"
msgstr "Na koniec należy wypełnić poniższy formularz:"
#: documents/validators.py:36
msgid ", "
msgstr ""
#: documents/validators.py:24
#, python-brace-format
msgid "Unable to parse URI {value}, missing scheme"
msgstr "Nie można przeanalizować URI {value}, brak schematu"
#: documents/views.py:336 documents/views.py:2747
#: documents/validators.py:29
#, python-brace-format
msgid "Unable to parse URI {value}, missing net location or path"
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 "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 "Nie można przetworzyć URI {value}"
#: documents/views.py:336 documents/views.py:2729
msgid "Invalid more_like_id"
msgstr "Nieprawidłowy more_like_id"
#: documents/views.py:1682
#: documents/views.py:1676
msgid "Invalid AI configuration."
msgstr ""
#: documents/views.py:1693
#: documents/views.py:1687
msgid "AI backend request timed out."
msgstr ""
#: documents/views.py:1705
#: documents/views.py:1699
msgid "AI backend rejected the request. Check logs for details."
msgstr ""
#: documents/views.py:2572 documents/views.py:2888
#: documents/views.py:2554 documents/views.py:2870
msgid "Specify only one of text, title_search, query, or more_like_id."
msgstr ""
#: documents/views.py:4813
#: documents/views.py:4800
#, python-format
msgid "Insufficient permissions to share document %(id)s."
msgstr "Brak uprawnień do udostępnienia dokumentu %(id)s."
#: documents/views.py:4860
#: documents/views.py:4846
msgid "Bundle is already being processed."
msgstr "Pakiet jest już przetwarzany."
#: documents/views.py:4924
#: documents/views.py:4910
msgid "The share link bundle is still being prepared. Please try again later."
msgstr "Pakiet do udostępnienia jest nadal przygotowywany. Spróbuj ponownie później."
#: documents/views.py:4938
#: documents/views.py:4924
msgid "The share link bundle is unavailable."
msgstr "Pakiet do udostępnienia jest niedostępny."
+40 -24
View File
@@ -2,8 +2,8 @@ msgid ""
msgstr ""
"Project-Id-Version: paperless-ngx\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2026-10-10 22:04+0000\n"
"PO-Revision-Date: 2026-10-10 22:05\n"
"POT-Creation-Date: 2026-10-05 16:26+0000\n"
"PO-Revision-Date: 2026-10-05 16:27\n"
"Last-Translator: \n"
"Language-Team: Portuguese, Brazilian\n"
"Language: pt_BR\n"
@@ -1636,48 +1636,48 @@ msgstr "execução do fluxo de trabalho"
msgid "workflow runs"
msgstr "execução de fluxo de trabalho"
#: documents/serialisers.py:516 documents/serialisers.py:873
#: documents/serialisers.py:2903 documents/views.py:343 documents/views.py:2750
#: documents/serialisers.py:515 documents/serialisers.py:872
#: documents/serialisers.py:2902 documents/views.py:343 documents/views.py:2732
#: paperless_mail/serialisers.py:156
msgid "Insufficient permissions."
msgstr "Permissões insuficientes."
#: documents/serialisers.py:709
#: documents/serialisers.py:708
msgid "Invalid color."
msgstr "Cor inválida."
#: documents/serialisers.py:2370
#: documents/serialisers.py:2369
#, python-format
msgid "File type %(type)s not supported"
msgstr "Tipo de arquivo %(type)s não suportado"
#: documents/serialisers.py:2414
#: documents/serialisers.py:2413
#, python-format
msgid "Custom field id must be an integer: %(id)s"
msgstr "O ID do campo personalizado deve ser um número inteiro: %(id)s"
#: documents/serialisers.py:2421
#: documents/serialisers.py:2420
#, python-format
msgid "Custom field with id %(id)s does not exist"
msgstr "Não existe um campo personalizado com o ID %(id)s"
#: documents/serialisers.py:2438 documents/serialisers.py:2448
#: documents/serialisers.py:2437 documents/serialisers.py:2447
msgid "Custom fields must be a list of integers or an object mapping ids to values."
msgstr "Campos personalizados devem estar em uma lista de números inteiros ou em um objeto que relacione IDs a valores."
#: documents/serialisers.py:2443
#: documents/serialisers.py:2442
msgid "Some custom fields don't exist or were specified twice."
msgstr "Campos personalizados inválidos ou duplicados."
#: documents/serialisers.py:2590
#: documents/serialisers.py:2589
msgid "Invalid variable detected."
msgstr "Variável inválida detectada."
#: documents/serialisers.py:2959
#: documents/serialisers.py:2958
msgid "Duplicate document identifiers are not allowed."
msgstr "Não são permitidos identificadores de documento duplicados."
#: documents/serialisers.py:2989 documents/views.py:4797
#: documents/serialisers.py:2988 documents/views.py:4787
#, python-format
msgid "Documents not found: %(ids)s"
msgstr "Documentos não encontrados: %(ids)s"
@@ -1914,44 +1914,60 @@ msgstr "Você está prestes a usar sua conta %(provider_name)s para entrar."
msgid "As a final step, please complete the following form:"
msgstr "Como etapa final, por favor preencha o seguinte formulário:"
#: documents/validators.py:36
msgid ", "
#: documents/validators.py:24
#, python-brace-format
msgid "Unable to parse URI {value}, missing scheme"
msgstr "Não é possível analisar o URI {value}, esquema ausente"
#: documents/validators.py:29
#, python-brace-format
msgid "Unable to parse URI {value}, missing net location or path"
msgstr ""
#: documents/views.py:336 documents/views.py:2747
#: documents/validators.py:36
msgid "URI scheme '{parts.scheme}' is not allowed. Allowed schemes: {', '.join(allowed_schemes)}"
msgstr "Esquema URI '{parts.scheme}' não é permitido. Esquemas permitidos:\n"
"{', '.join(allowed_schemes)}"
#: documents/validators.py:45
#, python-brace-format
msgid "Unable to parse URI {value}"
msgstr "Não é possível analisar o URI {value}"
#: documents/views.py:336 documents/views.py:2729
msgid "Invalid more_like_id"
msgstr "more_like_id inválido"
#: documents/views.py:1682
#: documents/views.py:1676
msgid "Invalid AI configuration."
msgstr "Configuração de IA inválida."
#: documents/views.py:1693
#: documents/views.py:1687
msgid "AI backend request timed out."
msgstr "A requisição backend da IA expirou."
#: documents/views.py:1705
#: documents/views.py:1699
msgid "AI backend rejected the request. Check logs for details."
msgstr ""
#: documents/views.py:2572 documents/views.py:2888
#: documents/views.py:2554 documents/views.py:2870
msgid "Specify only one of text, title_search, query, or more_like_id."
msgstr "Especifique apenas um text, title_search, consulta ou mais_like_id."
#: documents/views.py:4813
#: documents/views.py:4800
#, python-format
msgid "Insufficient permissions to share document %(id)s."
msgstr "Permissões insuficientes para compartilhar o documento %(id)s."
#: documents/views.py:4860
#: documents/views.py:4846
msgid "Bundle is already being processed."
msgstr "Pacote já está sendo processado."
#: documents/views.py:4924
#: documents/views.py:4910
msgid "The share link bundle is still being prepared. Please try again later."
msgstr "O pacote de link de compartilhamento ainda está sendo preparado. Tente novamente mais tarde."
#: documents/views.py:4938
#: documents/views.py:4924
msgid "The share link bundle is unavailable."
msgstr "O pacote de link de compartilhamento não está disponível."
+39 -24
View File
@@ -2,8 +2,8 @@ msgid ""
msgstr ""
"Project-Id-Version: paperless-ngx\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2026-10-10 22:04+0000\n"
"PO-Revision-Date: 2026-10-10 22:05\n"
"POT-Creation-Date: 2026-10-05 16:26+0000\n"
"PO-Revision-Date: 2026-10-05 16:27\n"
"Last-Translator: \n"
"Language-Team: Portuguese\n"
"Language: pt_PT\n"
@@ -1635,48 +1635,48 @@ msgstr ""
msgid "workflow runs"
msgstr ""
#: documents/serialisers.py:516 documents/serialisers.py:873
#: documents/serialisers.py:2903 documents/views.py:343 documents/views.py:2750
#: documents/serialisers.py:515 documents/serialisers.py:872
#: documents/serialisers.py:2902 documents/views.py:343 documents/views.py:2732
#: paperless_mail/serialisers.py:156
msgid "Insufficient permissions."
msgstr ""
#: documents/serialisers.py:709
#: documents/serialisers.py:708
msgid "Invalid color."
msgstr "Cor invalida."
#: documents/serialisers.py:2370
#: documents/serialisers.py:2369
#, python-format
msgid "File type %(type)s not supported"
msgstr "Tipo de arquivo %(type)s não suportado"
#: documents/serialisers.py:2414
#: documents/serialisers.py:2413
#, python-format
msgid "Custom field id must be an integer: %(id)s"
msgstr ""
#: documents/serialisers.py:2421
#: documents/serialisers.py:2420
#, python-format
msgid "Custom field with id %(id)s does not exist"
msgstr ""
#: documents/serialisers.py:2438 documents/serialisers.py:2448
#: documents/serialisers.py:2437 documents/serialisers.py:2447
msgid "Custom fields must be a list of integers or an object mapping ids to values."
msgstr ""
#: documents/serialisers.py:2443
#: documents/serialisers.py:2442
msgid "Some custom fields don't exist or were specified twice."
msgstr ""
#: documents/serialisers.py:2590
#: documents/serialisers.py:2589
msgid "Invalid variable detected."
msgstr "Variável inválida detetada."
#: documents/serialisers.py:2959
#: documents/serialisers.py:2958
msgid "Duplicate document identifiers are not allowed."
msgstr ""
#: documents/serialisers.py:2989 documents/views.py:4797
#: documents/serialisers.py:2988 documents/views.py:4787
#, python-format
msgid "Documents not found: %(ids)s"
msgstr ""
@@ -1913,44 +1913,59 @@ msgstr ""
msgid "As a final step, please complete the following form:"
msgstr ""
#: documents/validators.py:36
msgid ", "
#: documents/validators.py:24
#, python-brace-format
msgid "Unable to parse URI {value}, missing scheme"
msgstr "Não foi possível analisar o URI {value}, o esquema está em falta"
#: documents/validators.py:29
#, python-brace-format
msgid "Unable to parse URI {value}, missing net location or path"
msgstr ""
#: documents/views.py:336 documents/views.py:2747
#: documents/validators.py:36
msgid "URI scheme '{parts.scheme}' is not allowed. Allowed schemes: {', '.join(allowed_schemes)}"
msgstr ""
#: documents/validators.py:45
#, python-brace-format
msgid "Unable to parse URI {value}"
msgstr "Não foi possível analisar o URI {value}"
#: documents/views.py:336 documents/views.py:2729
msgid "Invalid more_like_id"
msgstr ""
#: documents/views.py:1682
#: documents/views.py:1676
msgid "Invalid AI configuration."
msgstr ""
#: documents/views.py:1693
#: documents/views.py:1687
msgid "AI backend request timed out."
msgstr ""
#: documents/views.py:1705
#: documents/views.py:1699
msgid "AI backend rejected the request. Check logs for details."
msgstr ""
#: documents/views.py:2572 documents/views.py:2888
#: documents/views.py:2554 documents/views.py:2870
msgid "Specify only one of text, title_search, query, or more_like_id."
msgstr ""
#: documents/views.py:4813
#: documents/views.py:4800
#, python-format
msgid "Insufficient permissions to share document %(id)s."
msgstr ""
#: documents/views.py:4860
#: documents/views.py:4846
msgid "Bundle is already being processed."
msgstr ""
#: documents/views.py:4924
#: documents/views.py:4910
msgid "The share link bundle is still being prepared. Please try again later."
msgstr ""
#: documents/views.py:4938
#: documents/views.py:4924
msgid "The share link bundle is unavailable."
msgstr ""
+40 -25
View File
@@ -2,8 +2,8 @@ msgid ""
msgstr ""
"Project-Id-Version: paperless-ngx\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2026-10-10 22:04+0000\n"
"PO-Revision-Date: 2026-10-10 22:05\n"
"POT-Creation-Date: 2026-10-05 16:26+0000\n"
"PO-Revision-Date: 2026-10-05 16:27\n"
"Last-Translator: \n"
"Language-Team: Romanian\n"
"Language: ro_RO\n"
@@ -1635,48 +1635,48 @@ msgstr "rulare flux de lucru"
msgid "workflow runs"
msgstr "rulări flux de lucru"
#: documents/serialisers.py:516 documents/serialisers.py:873
#: documents/serialisers.py:2903 documents/views.py:343 documents/views.py:2750
#: documents/serialisers.py:515 documents/serialisers.py:872
#: documents/serialisers.py:2902 documents/views.py:343 documents/views.py:2732
#: paperless_mail/serialisers.py:156
msgid "Insufficient permissions."
msgstr ""
#: documents/serialisers.py:709
#: documents/serialisers.py:708
msgid "Invalid color."
msgstr "Culoare invalidă."
#: documents/serialisers.py:2370
#: documents/serialisers.py:2369
#, python-format
msgid "File type %(type)s not supported"
msgstr "Tip de fișier %(type)s nesuportat"
#: documents/serialisers.py:2414
#: documents/serialisers.py:2413
#, python-format
msgid "Custom field id must be an integer: %(id)s"
msgstr "Id-ul câmpului personalizat trebuie să fie un număr întreg: %(id)s"
#: documents/serialisers.py:2421
#: documents/serialisers.py:2420
#, python-format
msgid "Custom field with id %(id)s does not exist"
msgstr "Câmp personalizat cu id %(id)s nu există"
#: documents/serialisers.py:2438 documents/serialisers.py:2448
#: documents/serialisers.py:2437 documents/serialisers.py:2447
msgid "Custom fields must be a list of integers or an object mapping ids to values."
msgstr "Câmpurile personalizate trebuie să fie o listă de numere întregi sau un obiect mapping ids la valori."
#: documents/serialisers.py:2443
#: documents/serialisers.py:2442
msgid "Some custom fields don't exist or were specified twice."
msgstr "Unele câmpuri personalizate nu există sau au fost specificate de două ori."
#: documents/serialisers.py:2590
#: documents/serialisers.py:2589
msgid "Invalid variable detected."
msgstr "Variabilă nevalidă detectată."
#: documents/serialisers.py:2959
#: documents/serialisers.py:2958
msgid "Duplicate document identifiers are not allowed."
msgstr ""
#: documents/serialisers.py:2989 documents/views.py:4797
#: documents/serialisers.py:2988 documents/views.py:4787
#, python-format
msgid "Documents not found: %(ids)s"
msgstr ""
@@ -1913,44 +1913,59 @@ msgstr "Sunteți pe cale să vă utilizați contul %(provider_name)s pentru a v
msgid "As a final step, please complete the following form:"
msgstr "În etapa finală, vă rugăm să completați următorul formular:"
#: documents/validators.py:36
msgid ", "
msgstr ""
#: documents/validators.py:24
#, python-brace-format
msgid "Unable to parse URI {value}, missing scheme"
msgstr "Imposibil de analizat URI {value}, schemă lipsă"
#: documents/views.py:336 documents/views.py:2747
#: documents/validators.py:29
#, python-brace-format
msgid "Unable to parse URI {value}, missing net location or path"
msgstr "Imposibil de analizat URI {value}, lipsă locație sau cale"
#: documents/validators.py:36
msgid "URI scheme '{parts.scheme}' is not allowed. Allowed schemes: {', '.join(allowed_schemes)}"
msgstr "Schema URI '{parts.scheme}' nu este permisă. Schemele permise: {', '.join(allowed_schemes)}"
#: documents/validators.py:45
#, python-brace-format
msgid "Unable to parse URI {value}"
msgstr "Nu se poate analiza URI {value}"
#: documents/views.py:336 documents/views.py:2729
msgid "Invalid more_like_id"
msgstr ""
#: documents/views.py:1682
#: documents/views.py:1676
msgid "Invalid AI configuration."
msgstr ""
#: documents/views.py:1693
#: documents/views.py:1687
msgid "AI backend request timed out."
msgstr ""
#: documents/views.py:1705
#: documents/views.py:1699
msgid "AI backend rejected the request. Check logs for details."
msgstr ""
#: documents/views.py:2572 documents/views.py:2888
#: documents/views.py:2554 documents/views.py:2870
msgid "Specify only one of text, title_search, query, or more_like_id."
msgstr ""
#: documents/views.py:4813
#: documents/views.py:4800
#, python-format
msgid "Insufficient permissions to share document %(id)s."
msgstr ""
#: documents/views.py:4860
#: documents/views.py:4846
msgid "Bundle is already being processed."
msgstr ""
#: documents/views.py:4924
#: documents/views.py:4910
msgid "The share link bundle is still being prepared. Please try again later."
msgstr ""
#: documents/views.py:4938
#: documents/views.py:4924
msgid "The share link bundle is unavailable."
msgstr ""
+46 -31
View File
@@ -2,8 +2,8 @@ msgid ""
msgstr ""
"Project-Id-Version: paperless-ngx\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2026-10-10 22:04+0000\n"
"PO-Revision-Date: 2026-10-10 22:05\n"
"POT-Creation-Date: 2026-10-05 16:26+0000\n"
"PO-Revision-Date: 2026-10-05 16:27\n"
"Last-Translator: \n"
"Language-Team: Russian\n"
"Language: ru_RU\n"
@@ -1006,23 +1006,23 @@ msgstr "заметки"
#: documents/models.py:996
msgid "page"
msgstr "страница"
msgstr ""
#: documents/models.py:997
msgid "Page of the original file, starting at 1"
msgstr "Страница исходного файла, начиная с 1"
msgstr ""
#: documents/models.py:1052
msgid "format"
msgstr "формат"
msgstr ""
#: documents/models.py:1056
msgid "document barcode"
msgstr "штрих-код документа"
msgstr ""
#: documents/models.py:1057
msgid "document barcodes"
msgstr "штрих-коды документа"
msgstr ""
#: documents/models.py:1066
msgid "Original"
@@ -1635,48 +1635,48 @@ msgstr "запуск рабочего процесса"
msgid "workflow runs"
msgstr "запуски рабочего процесса"
#: documents/serialisers.py:516 documents/serialisers.py:873
#: documents/serialisers.py:2903 documents/views.py:343 documents/views.py:2750
#: documents/serialisers.py:515 documents/serialisers.py:872
#: documents/serialisers.py:2902 documents/views.py:343 documents/views.py:2732
#: paperless_mail/serialisers.py:156
msgid "Insufficient permissions."
msgstr "Недостаточно прав."
#: documents/serialisers.py:709
#: documents/serialisers.py:708
msgid "Invalid color."
msgstr "Неверный цвет."
#: documents/serialisers.py:2370
#: documents/serialisers.py:2369
#, python-format
msgid "File type %(type)s not supported"
msgstr "Тип файла %(type)s не поддерживается"
#: documents/serialisers.py:2414
#: documents/serialisers.py:2413
#, python-format
msgid "Custom field id must be an integer: %(id)s"
msgstr "Идентификатор настраиваемого поля должен быть целым числом: %(id)s"
#: documents/serialisers.py:2421
#: documents/serialisers.py:2420
#, python-format
msgid "Custom field with id %(id)s does not exist"
msgstr "Пользовательское поле с идентификатором %(id)s не существует"
#: documents/serialisers.py:2438 documents/serialisers.py:2448
#: documents/serialisers.py:2437 documents/serialisers.py:2447
msgid "Custom fields must be a list of integers or an object mapping ids to values."
msgstr "Пользовательские поля должны быть списком целых чисел или идентификаторами отображения объектов значений."
#: documents/serialisers.py:2443
#: documents/serialisers.py:2442
msgid "Some custom fields don't exist or were specified twice."
msgstr "Некоторые пользовательские поля не существуют или были указаны дважды."
#: documents/serialisers.py:2590
#: documents/serialisers.py:2589
msgid "Invalid variable detected."
msgstr "Обнаружена неверная переменная."
#: documents/serialisers.py:2959
#: documents/serialisers.py:2958
msgid "Duplicate document identifiers are not allowed."
msgstr "Повторяющиеся идентификаторы документа не допускаются."
#: documents/serialisers.py:2989 documents/views.py:4797
#: documents/serialisers.py:2988 documents/views.py:4787
#, python-format
msgid "Documents not found: %(ids)s"
msgstr "Документы не найдены: %(ids)s"
@@ -1913,44 +1913,59 @@ msgstr "Вы собираетесь войти через сторонний с
msgid "As a final step, please complete the following form:"
msgstr "На завершение, пожалуйста заполните следующую форму:"
#: documents/validators.py:36
msgid ", "
msgstr ", "
#: documents/validators.py:24
#, python-brace-format
msgid "Unable to parse URI {value}, missing scheme"
msgstr "Не удается распознать URI {value}, отсутствует схема"
#: documents/views.py:336 documents/views.py:2747
#: documents/validators.py:29
#, python-brace-format
msgid "Unable to parse URI {value}, missing net location or path"
msgstr "Не удалось распознать URI {value}, отсутствует сетевое расположение или путь"
#: documents/validators.py:36
msgid "URI scheme '{parts.scheme}' is not allowed. Allowed schemes: {', '.join(allowed_schemes)}"
msgstr "Недопустимая схема URI '{parts.scheme}'. Разрешенные схемы: {', '.join(allowed_schemes)}"
#: documents/validators.py:45
#, python-brace-format
msgid "Unable to parse URI {value}"
msgstr "Невозможно распознать URI {value}"
#: documents/views.py:336 documents/views.py:2729
msgid "Invalid more_like_id"
msgstr "Недопустимый more_like_id"
#: documents/views.py:1682
#: documents/views.py:1676
msgid "Invalid AI configuration."
msgstr "Неверная конфигурация ИИ."
#: documents/views.py:1693
#: documents/views.py:1687
msgid "AI backend request timed out."
msgstr "Таймаут запроса ИИ."
#: documents/views.py:1705
#: documents/views.py:1699
msgid "AI backend rejected the request. Check logs for details."
msgstr "Движок ИИ отклонил запрос. Проверьте логи."
#: documents/views.py:2572 documents/views.py:2888
#: documents/views.py:2554 documents/views.py:2870
msgid "Specify only one of text, title_search, query, or more_like_id."
msgstr "Укажите только одно: текст, title_search, query или more _like_id."
#: documents/views.py:4813
#: documents/views.py:4800
#, python-format
msgid "Insufficient permissions to share document %(id)s."
msgstr "Недостаточно прав для совместного доступа к документу %(id)s."
#: documents/views.py:4860
#: documents/views.py:4846
msgid "Bundle is already being processed."
msgstr "Пакет уже обрабатывается."
#: documents/views.py:4924
#: documents/views.py:4910
msgid "The share link bundle is still being prepared. Please try again later."
msgstr "Набор ссылок все еще готовится. Пожалуйста, повторите попытку позже."
#: documents/views.py:4938
#: documents/views.py:4924
msgid "The share link bundle is unavailable."
msgstr "Пакет общих ссылок недоступен."
@@ -2168,7 +2183,7 @@ msgstr "Включает разделение на штрих-коды тего
#: paperless/models.py:308
msgid "Stores the values of detected barcodes"
msgstr "Сохраняет значения обнаруженных штрих-кодов"
msgstr ""
#: paperless/models.py:318
msgid "Sets the remote OCR engine"
+40 -25
View File
@@ -2,8 +2,8 @@ msgid ""
msgstr ""
"Project-Id-Version: paperless-ngx\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2026-10-10 22:04+0000\n"
"PO-Revision-Date: 2026-10-10 22:05\n"
"POT-Creation-Date: 2026-10-05 16:26+0000\n"
"PO-Revision-Date: 2026-10-06 02:00\n"
"Last-Translator: \n"
"Language-Team: Slovak\n"
"Language: sk_SK\n"
@@ -1635,48 +1635,48 @@ msgstr "spustenie pracovného postupu"
msgid "workflow runs"
msgstr "spustenia pracovných postupov"
#: documents/serialisers.py:516 documents/serialisers.py:873
#: documents/serialisers.py:2903 documents/views.py:343 documents/views.py:2750
#: documents/serialisers.py:515 documents/serialisers.py:872
#: documents/serialisers.py:2902 documents/views.py:343 documents/views.py:2732
#: paperless_mail/serialisers.py:156
msgid "Insufficient permissions."
msgstr "Nedostatočné oprávnenia."
#: documents/serialisers.py:709
#: documents/serialisers.py:708
msgid "Invalid color."
msgstr "Neplatná farba."
#: documents/serialisers.py:2370
#: documents/serialisers.py:2369
#, python-format
msgid "File type %(type)s not supported"
msgstr "Typ súboru %(type)s nie je podporovaný"
#: documents/serialisers.py:2414
#: documents/serialisers.py:2413
#, python-format
msgid "Custom field id must be an integer: %(id)s"
msgstr "ID vlastného poľa musí byť celé číslo: %(id)s"
#: documents/serialisers.py:2421
#: documents/serialisers.py:2420
#, python-format
msgid "Custom field with id %(id)s does not exist"
msgstr "Vlastné pole s ID %(id)s neexistuje."
#: documents/serialisers.py:2438 documents/serialisers.py:2448
#: documents/serialisers.py:2437 documents/serialisers.py:2447
msgid "Custom fields must be a list of integers or an object mapping ids to values."
msgstr "Vlastné polia musia byť zoznamom celých čísel alebo objektom mapujúcim identifikátory na hodnoty."
#: documents/serialisers.py:2443
#: documents/serialisers.py:2442
msgid "Some custom fields don't exist or were specified twice."
msgstr "Niektoré vlastné polia neexistujú alebo boli zadané dvakrát."
#: documents/serialisers.py:2590
#: documents/serialisers.py:2589
msgid "Invalid variable detected."
msgstr "Zistená neplatná premenná."
#: documents/serialisers.py:2959
#: documents/serialisers.py:2958
msgid "Duplicate document identifiers are not allowed."
msgstr "Duplicitné identifikátory dokumentov nie sú povolené."
#: documents/serialisers.py:2989 documents/views.py:4797
#: documents/serialisers.py:2988 documents/views.py:4787
#, python-format
msgid "Documents not found: %(ids)s"
msgstr "Dokumenty sa nenašli: %(ids)s"
@@ -1913,44 +1913,59 @@ msgstr "Chystáte sa na prihlásenie použiť svoj účet %(provider_name)s."
msgid "As a final step, please complete the following form:"
msgstr "Ako posledný krok vyplňte nasledujúci formulár:"
#: documents/validators.py:36
msgid ", "
msgstr ""
#: documents/validators.py:24
#, python-brace-format
msgid "Unable to parse URI {value}, missing scheme"
msgstr "Nepodarilo sa analyzovať URI {value}, chýba schéma"
#: documents/views.py:336 documents/views.py:2747
#: documents/validators.py:29
#, python-brace-format
msgid "Unable to parse URI {value}, missing net location or path"
msgstr "Nepodarilo sa analyzovať URI {value}; chýba sieťové umiestnenie alebo cesta."
#: documents/validators.py:36
msgid "URI scheme '{parts.scheme}' is not allowed. Allowed schemes: {', '.join(allowed_schemes)}"
msgstr "Schéma URI „{parts.scheme}“ nie je povolená. Povolené schémy: {', '.join(allowed_schemes)}"
#: documents/validators.py:45
#, python-brace-format
msgid "Unable to parse URI {value}"
msgstr "Nepodarilo sa analyzovať URI {value}"
#: documents/views.py:336 documents/views.py:2729
msgid "Invalid more_like_id"
msgstr "Neplatné more_like_id"
#: documents/views.py:1682
#: documents/views.py:1676
msgid "Invalid AI configuration."
msgstr "Neplatná konfigurácia umelej inteligencie."
#: documents/views.py:1693
#: documents/views.py:1687
msgid "AI backend request timed out."
msgstr "Vypršal časový limit požiadavky na backend umelej inteligencie."
#: documents/views.py:1705
#: documents/views.py:1699
msgid "AI backend rejected the request. Check logs for details."
msgstr "Backend umelej inteligencie zamietol požiadavku. Podrobnosti nájdete v záznamoch."
#: documents/views.py:2572 documents/views.py:2888
#: documents/views.py:2554 documents/views.py:2870
msgid "Specify only one of text, title_search, query, or more_like_id."
msgstr "Zadajte iba jednu z možností: text, title_search, query alebo more_like_id."
#: documents/views.py:4813
#: documents/views.py:4800
#, python-format
msgid "Insufficient permissions to share document %(id)s."
msgstr "Nedostatočné oprávnenia na zdieľanie dokumentu %(id)s."
#: documents/views.py:4860
#: documents/views.py:4846
msgid "Bundle is already being processed."
msgstr "Balík sa už spracúva."
#: documents/views.py:4924
#: documents/views.py:4910
msgid "The share link bundle is still being prepared. Please try again later."
msgstr "Balík odkazov na zdieľanie sa stále pripravuje. Skúste to znova neskôr."
#: documents/views.py:4938
#: documents/views.py:4924
msgid "The share link bundle is unavailable."
msgstr "Balík odkazov na zdieľanie nie je k dispozícii."
+40 -25
View File
@@ -2,8 +2,8 @@ msgid ""
msgstr ""
"Project-Id-Version: paperless-ngx\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2026-10-10 22:04+0000\n"
"PO-Revision-Date: 2026-10-10 22:05\n"
"POT-Creation-Date: 2026-10-05 16:26+0000\n"
"PO-Revision-Date: 2026-10-05 16:27\n"
"Last-Translator: \n"
"Language-Team: Slovenian\n"
"Language: sl_SI\n"
@@ -1635,48 +1635,48 @@ msgstr "izvajanje poteka dela"
msgid "workflow runs"
msgstr "poteka dela"
#: documents/serialisers.py:516 documents/serialisers.py:873
#: documents/serialisers.py:2903 documents/views.py:343 documents/views.py:2750
#: documents/serialisers.py:515 documents/serialisers.py:872
#: documents/serialisers.py:2902 documents/views.py:343 documents/views.py:2732
#: paperless_mail/serialisers.py:156
msgid "Insufficient permissions."
msgstr "Nezadostna dovoljenja."
#: documents/serialisers.py:709
#: documents/serialisers.py:708
msgid "Invalid color."
msgstr "Napačna barva."
#: documents/serialisers.py:2370
#: documents/serialisers.py:2369
#, python-format
msgid "File type %(type)s not supported"
msgstr "Vrsta datoteke %(type)s ni podprta"
#: documents/serialisers.py:2414
#: documents/serialisers.py:2413
#, python-format
msgid "Custom field id must be an integer: %(id)s"
msgstr "ID polja po meri mora biti celo število: %(id)s"
#: documents/serialisers.py:2421
#: documents/serialisers.py:2420
#, python-format
msgid "Custom field with id %(id)s does not exist"
msgstr "Polje po meri z ID-jem %(id)s ne obstaja"
#: documents/serialisers.py:2438 documents/serialisers.py:2448
#: documents/serialisers.py:2437 documents/serialisers.py:2447
msgid "Custom fields must be a list of integers or an object mapping ids to values."
msgstr "Polja po meri morajo biti seznam celih števil ali objekt, ki preslika ID-je v vrednosti."
#: documents/serialisers.py:2443
#: documents/serialisers.py:2442
msgid "Some custom fields don't exist or were specified twice."
msgstr "Nekatera polja po meri ne obstajajo ali pa so bila navedena dvakrat."
#: documents/serialisers.py:2590
#: documents/serialisers.py:2589
msgid "Invalid variable detected."
msgstr "Zaznani neveljavni znaki."
#: documents/serialisers.py:2959
#: documents/serialisers.py:2958
msgid "Duplicate document identifiers are not allowed."
msgstr "Podvojeni identifikatorji dokumentov niso dovoljeni."
#: documents/serialisers.py:2989 documents/views.py:4797
#: documents/serialisers.py:2988 documents/views.py:4787
#, python-format
msgid "Documents not found: %(ids)s"
msgstr "Dokumentov ni bilo mogoče najti: %(ids)s"
@@ -1913,44 +1913,59 @@ msgstr "Za prijavo boste uporabili račun ponudnika %(provider_name)s."
msgid "As a final step, please complete the following form:"
msgstr "Kot zadnji korak vas prosimo, da izpolnite naslednji obrazec:"
#: documents/validators.py:36
msgid ", "
msgstr ""
#: documents/validators.py:24
#, python-brace-format
msgid "Unable to parse URI {value}, missing scheme"
msgstr "Ni mogoče razčleniti URI-ja {value}, manjka shema"
#: documents/views.py:336 documents/views.py:2747
#: documents/validators.py:29
#, python-brace-format
msgid "Unable to parse URI {value}, missing net location or path"
msgstr "Ni mogoče razčleniti URI-ja {value}, manjka omrežna lokacija ali pot"
#: documents/validators.py:36
msgid "URI scheme '{parts.scheme}' is not allowed. Allowed schemes: {', '.join(allowed_schemes)}"
msgstr "Shema URI '{parts.scheme}' ni dovoljena. Dovoljene sheme: {', '.join(allowed_schemes)}"
#: documents/validators.py:45
#, python-brace-format
msgid "Unable to parse URI {value}"
msgstr "Ni mogoče razčleniti URI-ja {value}"
#: documents/views.py:336 documents/views.py:2729
msgid "Invalid more_like_id"
msgstr "Neveljaven more_like_id"
#: documents/views.py:1682
#: documents/views.py:1676
msgid "Invalid AI configuration."
msgstr "Neveljavna konfiguracija umetne inteligence."
#: documents/views.py:1693
#: documents/views.py:1687
msgid "AI backend request timed out."
msgstr "Časovna omejitev zahteve za umetno inteligenco je potekla."
#: documents/views.py:1705
#: documents/views.py:1699
msgid "AI backend rejected the request. Check logs for details."
msgstr "Zaledni sistem umetne inteligence je zavrnil zahtevo. Za podrobnosti preverite dnevnike."
#: documents/views.py:2572 documents/views.py:2888
#: documents/views.py:2554 documents/views.py:2870
msgid "Specify only one of text, title_search, query, or more_like_id."
msgstr "Navedite samo eno od naslednjih vrednosti: text, title_search, query ali more_like_id."
#: documents/views.py:4813
#: documents/views.py:4800
#, python-format
msgid "Insufficient permissions to share document %(id)s."
msgstr "Nezadostna dovoljenja za skupno rabo dokumenta %(id)s."
#: documents/views.py:4860
#: documents/views.py:4846
msgid "Bundle is already being processed."
msgstr "Paket se že obdeluje."
#: documents/views.py:4924
#: documents/views.py:4910
msgid "The share link bundle is still being prepared. Please try again later."
msgstr "Paket povezav za deljenje je še vedno v pripravi. Poskusite znova pozneje."
#: documents/views.py:4938
#: documents/views.py:4924
msgid "The share link bundle is unavailable."
msgstr "Paket povezav za deljenje ni na voljo."
+39 -24
View File
@@ -2,8 +2,8 @@ msgid ""
msgstr ""
"Project-Id-Version: paperless-ngx\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2026-10-10 22:04+0000\n"
"PO-Revision-Date: 2026-10-10 22:05\n"
"POT-Creation-Date: 2026-10-05 16:26+0000\n"
"PO-Revision-Date: 2026-10-05 16:27\n"
"Last-Translator: \n"
"Language-Team: Albanian\n"
"Language: sq_AL\n"
@@ -1635,48 +1635,48 @@ msgstr "ekzekutim rrjedhe pune"
msgid "workflow runs"
msgstr "ekzekutime rrjedhash pune"
#: documents/serialisers.py:516 documents/serialisers.py:873
#: documents/serialisers.py:2903 documents/views.py:343 documents/views.py:2750
#: documents/serialisers.py:515 documents/serialisers.py:872
#: documents/serialisers.py:2902 documents/views.py:343 documents/views.py:2732
#: paperless_mail/serialisers.py:156
msgid "Insufficient permissions."
msgstr "Leje të pamjaftueshme."
#: documents/serialisers.py:709
#: documents/serialisers.py:708
msgid "Invalid color."
msgstr "Ngjyrë e pavlefshme."
#: documents/serialisers.py:2370
#: documents/serialisers.py:2369
#, python-format
msgid "File type %(type)s not supported"
msgstr "Lloji i skedarit %(type)s nuk mbështetet"
#: documents/serialisers.py:2414
#: documents/serialisers.py:2413
#, python-format
msgid "Custom field id must be an integer: %(id)s"
msgstr "ID-ja e fushës së personalizuar duhet të jetë numër i plotë: %(id)s"
#: documents/serialisers.py:2421
#: documents/serialisers.py:2420
#, python-format
msgid "Custom field with id %(id)s does not exist"
msgstr "Fusha e personalizuar me ID %(id)s nuk ekziston"
#: documents/serialisers.py:2438 documents/serialisers.py:2448
#: documents/serialisers.py:2437 documents/serialisers.py:2447
msgid "Custom fields must be a list of integers or an object mapping ids to values."
msgstr ""
#: documents/serialisers.py:2443
#: documents/serialisers.py:2442
msgid "Some custom fields don't exist or were specified twice."
msgstr "Disa fusha të personalizuara nuk ekzistojnë ose janë specifikuar dy herë."
#: documents/serialisers.py:2590
#: documents/serialisers.py:2589
msgid "Invalid variable detected."
msgstr "U zbulua variabël e pavlefshme."
#: documents/serialisers.py:2959
#: documents/serialisers.py:2958
msgid "Duplicate document identifiers are not allowed."
msgstr "Identifikuesit dublikatë të dokumenteve nuk lejohen."
#: documents/serialisers.py:2989 documents/views.py:4797
#: documents/serialisers.py:2988 documents/views.py:4787
#, python-format
msgid "Documents not found: %(ids)s"
msgstr "Dokumentet nuk u gjetën: %(ids)s"
@@ -1913,44 +1913,59 @@ msgstr "You are about to use your %(provider_name)s llogari to login."
msgid "As a final step, please complete the following form:"
msgstr "Si hap i fundit, ju lutemi plotësoni formularin e mëposhtëm:"
#: documents/validators.py:36
msgid ", "
#: documents/validators.py:24
#, python-brace-format
msgid "Unable to parse URI {value}, missing scheme"
msgstr ""
#: documents/views.py:336 documents/views.py:2747
#: documents/validators.py:29
#, python-brace-format
msgid "Unable to parse URI {value}, missing net location or path"
msgstr ""
#: documents/validators.py:36
msgid "URI scheme '{parts.scheme}' is not allowed. Allowed schemes: {', '.join(allowed_schemes)}"
msgstr ""
#: documents/validators.py:45
#, python-brace-format
msgid "Unable to parse URI {value}"
msgstr ""
#: documents/views.py:336 documents/views.py:2729
msgid "Invalid more_like_id"
msgstr ""
#: documents/views.py:1682
#: documents/views.py:1676
msgid "Invalid AI configuration."
msgstr "Konfigurim AI i pavlefshëm."
#: documents/views.py:1693
#: documents/views.py:1687
msgid "AI backend request timed out."
msgstr ""
#: documents/views.py:1705
#: documents/views.py:1699
msgid "AI backend rejected the request. Check logs for details."
msgstr ""
#: documents/views.py:2572 documents/views.py:2888
#: documents/views.py:2554 documents/views.py:2870
msgid "Specify only one of text, title_search, query, or more_like_id."
msgstr ""
#: documents/views.py:4813
#: documents/views.py:4800
#, python-format
msgid "Insufficient permissions to share document %(id)s."
msgstr "Leje të pamjaftueshme për të ndarë dokumentin %(id)s."
#: documents/views.py:4860
#: documents/views.py:4846
msgid "Bundle is already being processed."
msgstr "Paketa po përpunohet tashmë."
#: documents/views.py:4924
#: documents/views.py:4910
msgid "The share link bundle is still being prepared. Please try again later."
msgstr "Paketa e lidhjes së ndarjes ende po përgatitet. Ju lutemi provoni përsëri më vonë."
#: documents/views.py:4938
#: documents/views.py:4924
msgid "The share link bundle is unavailable."
msgstr "Paketa e lidhjes së ndarjes nuk është e disponueshme."
+40 -25
View File
@@ -2,8 +2,8 @@ msgid ""
msgstr ""
"Project-Id-Version: paperless-ngx\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2026-10-10 22:04+0000\n"
"PO-Revision-Date: 2026-10-10 22:05\n"
"POT-Creation-Date: 2026-10-05 16:26+0000\n"
"PO-Revision-Date: 2026-10-05 16:27\n"
"Last-Translator: \n"
"Language-Team: Serbian (Latin)\n"
"Language: sr_CS\n"
@@ -1635,48 +1635,48 @@ msgstr "pokretanje radnog toka"
msgid "workflow runs"
msgstr "pokretanje tokova rada"
#: documents/serialisers.py:516 documents/serialisers.py:873
#: documents/serialisers.py:2903 documents/views.py:343 documents/views.py:2750
#: documents/serialisers.py:515 documents/serialisers.py:872
#: documents/serialisers.py:2902 documents/views.py:343 documents/views.py:2732
#: paperless_mail/serialisers.py:156
msgid "Insufficient permissions."
msgstr "Nedovoljne dozvole."
#: documents/serialisers.py:709
#: documents/serialisers.py:708
msgid "Invalid color."
msgstr "Nevažeća boja."
#: documents/serialisers.py:2370
#: documents/serialisers.py:2369
#, python-format
msgid "File type %(type)s not supported"
msgstr "Vrsta datoteke %(type)s nije podržana"
#: documents/serialisers.py:2414
#: documents/serialisers.py:2413
#, python-format
msgid "Custom field id must be an integer: %(id)s"
msgstr "ID prilagođenog polja mora biti ceo broj: %(id)s"
#: documents/serialisers.py:2421
#: documents/serialisers.py:2420
#, python-format
msgid "Custom field with id %(id)s does not exist"
msgstr "Prilagođeno polje sa ID-em %(id)s ne postoji"
#: documents/serialisers.py:2438 documents/serialisers.py:2448
#: documents/serialisers.py:2437 documents/serialisers.py:2447
msgid "Custom fields must be a list of integers or an object mapping ids to values."
msgstr "Prilagođena polja moraju biti lista celih brojeva ili objekat koji mapira identifikatore na vrednosti."
#: documents/serialisers.py:2443
#: documents/serialisers.py:2442
msgid "Some custom fields don't exist or were specified twice."
msgstr "Neka prilagođena polja ne postoje ili su navedena dva puta."
#: documents/serialisers.py:2590
#: documents/serialisers.py:2589
msgid "Invalid variable detected."
msgstr "Otkrivena je nevažeća promenljiva."
#: documents/serialisers.py:2959
#: documents/serialisers.py:2958
msgid "Duplicate document identifiers are not allowed."
msgstr "Duplirani identifikatori dokumenata nisu dozvoljeni."
#: documents/serialisers.py:2989 documents/views.py:4797
#: documents/serialisers.py:2988 documents/views.py:4787
#, python-format
msgid "Documents not found: %(ids)s"
msgstr "Dokumenti nisu pronađeni: %(ids)s"
@@ -1913,44 +1913,59 @@ msgstr "Uskoro ćete koristiti svoj nalog na %(provider_name)s za prijavu."
msgid "As a final step, please complete the following form:"
msgstr "Kao poslednji korak, molimo Vas da popunite sledeći obrazac:"
#: documents/validators.py:36
msgid ", "
msgstr ""
#: documents/validators.py:24
#, python-brace-format
msgid "Unable to parse URI {value}, missing scheme"
msgstr "Nije moguće analizirati URI {value}, nedostaje šema"
#: documents/views.py:336 documents/views.py:2747
#: documents/validators.py:29
#, python-brace-format
msgid "Unable to parse URI {value}, missing net location or path"
msgstr "Nije moguće analizirati URI {value}, nedostaje mrežan lokacija ili putanja"
#: documents/validators.py:36
msgid "URI scheme '{parts.scheme}' is not allowed. Allowed schemes: {', '.join(allowed_schemes)}"
msgstr "Šema URI-ja '{parts.scheme}' nije dozvoljena. Dozvoljene šeme {', '.join(allowed_schemes)}"
#: documents/validators.py:45
#, python-brace-format
msgid "Unable to parse URI {value}"
msgstr "Nije moguće analizirati URI {value}"
#: documents/views.py:336 documents/views.py:2729
msgid "Invalid more_like_id"
msgstr "Nevažeći more_like_id"
#: documents/views.py:1682
#: documents/views.py:1676
msgid "Invalid AI configuration."
msgstr "Nevažeća konfiguracija veštačke inteligencije."
#: documents/views.py:1693
#: documents/views.py:1687
msgid "AI backend request timed out."
msgstr ""
#: documents/views.py:1705
#: documents/views.py:1699
msgid "AI backend rejected the request. Check logs for details."
msgstr ""
#: documents/views.py:2572 documents/views.py:2888
#: documents/views.py:2554 documents/views.py:2870
msgid "Specify only one of text, title_search, query, or more_like_id."
msgstr "Navedite samo jedno od sledećeg: text, title_search, query ili more_like_id."
#: documents/views.py:4813
#: documents/views.py:4800
#, python-format
msgid "Insufficient permissions to share document %(id)s."
msgstr "Nedovoljne dozvole za deljenje dokumenta %(id)s."
#: documents/views.py:4860
#: documents/views.py:4846
msgid "Bundle is already being processed."
msgstr "Paket se već obrađuje."
#: documents/views.py:4924
#: documents/views.py:4910
msgid "The share link bundle is still being prepared. Please try again later."
msgstr "Paket linkova za deljenje se još uvek priprema. Molimo pokušajte ponovo kasnije."
#: documents/views.py:4938
#: documents/views.py:4924
msgid "The share link bundle is unavailable."
msgstr "Paket linkova za deljenje nije dostupan."
+40 -25
View File
@@ -2,8 +2,8 @@ msgid ""
msgstr ""
"Project-Id-Version: paperless-ngx\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2026-10-10 22:04+0000\n"
"PO-Revision-Date: 2026-10-10 22:05\n"
"POT-Creation-Date: 2026-10-05 16:26+0000\n"
"PO-Revision-Date: 2026-10-05 16:27\n"
"Last-Translator: \n"
"Language-Team: Swedish\n"
"Language: sv_SE\n"
@@ -1635,48 +1635,48 @@ msgstr "Arbetsflödeskörning"
msgid "workflow runs"
msgstr "arbetsflöde körs"
#: documents/serialisers.py:516 documents/serialisers.py:873
#: documents/serialisers.py:2903 documents/views.py:343 documents/views.py:2750
#: documents/serialisers.py:515 documents/serialisers.py:872
#: documents/serialisers.py:2902 documents/views.py:343 documents/views.py:2732
#: paperless_mail/serialisers.py:156
msgid "Insufficient permissions."
msgstr "Otillräckliga behörigheter."
#: documents/serialisers.py:709
#: documents/serialisers.py:708
msgid "Invalid color."
msgstr "Ogiltig färg."
#: documents/serialisers.py:2370
#: documents/serialisers.py:2369
#, python-format
msgid "File type %(type)s not supported"
msgstr "Filtypen %(type)s stöds inte"
#: documents/serialisers.py:2414
#: documents/serialisers.py:2413
#, python-format
msgid "Custom field id must be an integer: %(id)s"
msgstr "Anpassat fält-id måste vara ett heltal: %(id)s"
#: documents/serialisers.py:2421
#: documents/serialisers.py:2420
#, python-format
msgid "Custom field with id %(id)s does not exist"
msgstr "Anpassat fält med id %(id)s finns inte"
#: documents/serialisers.py:2438 documents/serialisers.py:2448
#: documents/serialisers.py:2437 documents/serialisers.py:2447
msgid "Custom fields must be a list of integers or an object mapping ids to values."
msgstr "Anpassade fält måste vara en lista med heltal eller ett objekt som mappar ID:n till värden."
#: documents/serialisers.py:2443
#: documents/serialisers.py:2442
msgid "Some custom fields don't exist or were specified twice."
msgstr "Vissa anpassade fält finns inte eller har angetts två gånger."
#: documents/serialisers.py:2590
#: documents/serialisers.py:2589
msgid "Invalid variable detected."
msgstr "Ogiltig variabel upptäckt."
#: documents/serialisers.py:2959
#: documents/serialisers.py:2958
msgid "Duplicate document identifiers are not allowed."
msgstr "Dubbletter av dokumentidentifierare är inte tillåtna."
#: documents/serialisers.py:2989 documents/views.py:4797
#: documents/serialisers.py:2988 documents/views.py:4787
#, python-format
msgid "Documents not found: %(ids)s"
msgstr "Dokumenten hittades inte: %(ids)s"
@@ -1913,44 +1913,59 @@ msgstr "Du håller på att använda ditt %(provider_name)s-konto för att logga
msgid "As a final step, please complete the following form:"
msgstr "Slutför följande formulär som ett sista steg:"
#: documents/validators.py:36
msgid ", "
msgstr ""
#: documents/validators.py:24
#, python-brace-format
msgid "Unable to parse URI {value}, missing scheme"
msgstr "Kunde inte tolka URI {value}, schema saknas"
#: documents/views.py:336 documents/views.py:2747
#: documents/validators.py:29
#, python-brace-format
msgid "Unable to parse URI {value}, missing net location or path"
msgstr "Kunde inte tolka URI {value}, nätverksplats eller sökväg saknas"
#: documents/validators.py:36
msgid "URI scheme '{parts.scheme}' is not allowed. Allowed schemes: {', '.join(allowed_schemes)}"
msgstr "URI-schemat '{parts.scheme}' är inte tillåtet. Tillåtna scheman: {', '.join(allowed_schemes)}"
#: documents/validators.py:45
#, python-brace-format
msgid "Unable to parse URI {value}"
msgstr "Kunde inte tolka URI {value}"
#: documents/views.py:336 documents/views.py:2729
msgid "Invalid more_like_id"
msgstr "Ogiltig more_like_id"
#: documents/views.py:1682
#: documents/views.py:1676
msgid "Invalid AI configuration."
msgstr "Ogiltig AI-konfiguration."
#: documents/views.py:1693
#: documents/views.py:1687
msgid "AI backend request timed out."
msgstr "Begäran till AI-serverdelen tog för lång tid."
#: documents/views.py:1705
#: documents/views.py:1699
msgid "AI backend rejected the request. Check logs for details."
msgstr "AI-serverdelen avvisade begäran. Kontrollera loggarna för detaljer."
#: documents/views.py:2572 documents/views.py:2888
#: documents/views.py:2554 documents/views.py:2870
msgid "Specify only one of text, title_search, query, or more_like_id."
msgstr "Ange endast ett av text, title_search, query och more_like_id."
#: documents/views.py:4813
#: documents/views.py:4800
#, python-format
msgid "Insufficient permissions to share document %(id)s."
msgstr "Otillräckliga behörigheter för att dela dokument %(id)s."
#: documents/views.py:4860
#: documents/views.py:4846
msgid "Bundle is already being processed."
msgstr "Paketet behandlas redan."
#: documents/views.py:4924
#: documents/views.py:4910
msgid "The share link bundle is still being prepared. Please try again later."
msgstr "Delningslänkpaketet förbereds fortfarande. Försök igen senare."
#: documents/views.py:4938
#: documents/views.py:4924
msgid "The share link bundle is unavailable."
msgstr "Delningslänkpaketet är inte tillgängligt."
+39 -24
View File
@@ -2,8 +2,8 @@ msgid ""
msgstr ""
"Project-Id-Version: paperless-ngx\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2026-10-10 22:04+0000\n"
"PO-Revision-Date: 2026-10-10 22:05\n"
"POT-Creation-Date: 2026-10-05 16:26+0000\n"
"PO-Revision-Date: 2026-10-05 16:27\n"
"Last-Translator: \n"
"Language-Team: Thai\n"
"Language: th_TH\n"
@@ -1635,48 +1635,48 @@ msgstr ""
msgid "workflow runs"
msgstr ""
#: documents/serialisers.py:516 documents/serialisers.py:873
#: documents/serialisers.py:2903 documents/views.py:343 documents/views.py:2750
#: documents/serialisers.py:515 documents/serialisers.py:872
#: documents/serialisers.py:2902 documents/views.py:343 documents/views.py:2732
#: paperless_mail/serialisers.py:156
msgid "Insufficient permissions."
msgstr ""
#: documents/serialisers.py:709
#: documents/serialisers.py:708
msgid "Invalid color."
msgstr "สีไม่ถูกต้อง"
#: documents/serialisers.py:2370
#: documents/serialisers.py:2369
#, python-format
msgid "File type %(type)s not supported"
msgstr "ไม่รองรับไฟล์ประเภท %(type)s"
#: documents/serialisers.py:2414
#: documents/serialisers.py:2413
#, python-format
msgid "Custom field id must be an integer: %(id)s"
msgstr ""
#: documents/serialisers.py:2421
#: documents/serialisers.py:2420
#, python-format
msgid "Custom field with id %(id)s does not exist"
msgstr ""
#: documents/serialisers.py:2438 documents/serialisers.py:2448
#: documents/serialisers.py:2437 documents/serialisers.py:2447
msgid "Custom fields must be a list of integers or an object mapping ids to values."
msgstr ""
#: documents/serialisers.py:2443
#: documents/serialisers.py:2442
msgid "Some custom fields don't exist or were specified twice."
msgstr ""
#: documents/serialisers.py:2590
#: documents/serialisers.py:2589
msgid "Invalid variable detected."
msgstr "ตรวจพบตัวแปรไม่ถูกต้อง"
#: documents/serialisers.py:2959
#: documents/serialisers.py:2958
msgid "Duplicate document identifiers are not allowed."
msgstr ""
#: documents/serialisers.py:2989 documents/views.py:4797
#: documents/serialisers.py:2988 documents/views.py:4787
#, python-format
msgid "Documents not found: %(ids)s"
msgstr ""
@@ -1912,44 +1912,59 @@ msgstr ""
msgid "As a final step, please complete the following form:"
msgstr ""
#: documents/validators.py:36
msgid ", "
#: documents/validators.py:24
#, python-brace-format
msgid "Unable to parse URI {value}, missing scheme"
msgstr ""
#: documents/views.py:336 documents/views.py:2747
#: documents/validators.py:29
#, python-brace-format
msgid "Unable to parse URI {value}, missing net location or path"
msgstr ""
#: documents/validators.py:36
msgid "URI scheme '{parts.scheme}' is not allowed. Allowed schemes: {', '.join(allowed_schemes)}"
msgstr ""
#: documents/validators.py:45
#, python-brace-format
msgid "Unable to parse URI {value}"
msgstr ""
#: documents/views.py:336 documents/views.py:2729
msgid "Invalid more_like_id"
msgstr ""
#: documents/views.py:1682
#: documents/views.py:1676
msgid "Invalid AI configuration."
msgstr ""
#: documents/views.py:1693
#: documents/views.py:1687
msgid "AI backend request timed out."
msgstr ""
#: documents/views.py:1705
#: documents/views.py:1699
msgid "AI backend rejected the request. Check logs for details."
msgstr ""
#: documents/views.py:2572 documents/views.py:2888
#: documents/views.py:2554 documents/views.py:2870
msgid "Specify only one of text, title_search, query, or more_like_id."
msgstr ""
#: documents/views.py:4813
#: documents/views.py:4800
#, python-format
msgid "Insufficient permissions to share document %(id)s."
msgstr ""
#: documents/views.py:4860
#: documents/views.py:4846
msgid "Bundle is already being processed."
msgstr ""
#: documents/views.py:4924
#: documents/views.py:4910
msgid "The share link bundle is still being prepared. Please try again later."
msgstr ""
#: documents/views.py:4938
#: documents/views.py:4924
msgid "The share link bundle is unavailable."
msgstr ""
+40 -25
View File
@@ -2,8 +2,8 @@ msgid ""
msgstr ""
"Project-Id-Version: paperless-ngx\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2026-10-10 22:04+0000\n"
"PO-Revision-Date: 2026-10-10 22:05\n"
"POT-Creation-Date: 2026-10-05 16:26+0000\n"
"PO-Revision-Date: 2026-10-05 16:27\n"
"Last-Translator: \n"
"Language-Team: Turkish\n"
"Language: tr_TR\n"
@@ -1635,48 +1635,48 @@ msgstr "iş akışı çalıştırma"
msgid "workflow runs"
msgstr "iş akışı çalıştırma"
#: documents/serialisers.py:516 documents/serialisers.py:873
#: documents/serialisers.py:2903 documents/views.py:343 documents/views.py:2750
#: documents/serialisers.py:515 documents/serialisers.py:872
#: documents/serialisers.py:2902 documents/views.py:343 documents/views.py:2732
#: paperless_mail/serialisers.py:156
msgid "Insufficient permissions."
msgstr "Yetersiz izin."
#: documents/serialisers.py:709
#: documents/serialisers.py:708
msgid "Invalid color."
msgstr "Geçersiz renk."
#: documents/serialisers.py:2370
#: documents/serialisers.py:2369
#, python-format
msgid "File type %(type)s not supported"
msgstr "Dosya türü %(type)s desteklenmiyor"
#: documents/serialisers.py:2414
#: documents/serialisers.py:2413
#, python-format
msgid "Custom field id must be an integer: %(id)s"
msgstr "%(id)s özel alan numarası tam sayı olmalıdır"
#: documents/serialisers.py:2421
#: documents/serialisers.py:2420
#, python-format
msgid "Custom field with id %(id)s does not exist"
msgstr "%(id)s numaralı özel alan mevcut değil"
#: documents/serialisers.py:2438 documents/serialisers.py:2448
#: documents/serialisers.py:2437 documents/serialisers.py:2447
msgid "Custom fields must be a list of integers or an object mapping ids to values."
msgstr "Özel alanlar bir tam sayı olarak veya bir nesne haritası numaraları olmalıdır."
#: documents/serialisers.py:2443
#: documents/serialisers.py:2442
msgid "Some custom fields don't exist or were specified twice."
msgstr "Bazı õzel alan numaraları mevcut değil yada iki kez tanımlanmıș."
#: documents/serialisers.py:2590
#: documents/serialisers.py:2589
msgid "Invalid variable detected."
msgstr "Geçersiz değişken algılandı."
#: documents/serialisers.py:2959
#: documents/serialisers.py:2958
msgid "Duplicate document identifiers are not allowed."
msgstr "Doküman kimliği çakışmasına izin verilmiyor."
#: documents/serialisers.py:2989 documents/views.py:4797
#: documents/serialisers.py:2988 documents/views.py:4787
#, python-format
msgid "Documents not found: %(ids)s"
msgstr "Dosyalar bulunamadı: %(ids)s"
@@ -1913,44 +1913,59 @@ msgstr "Giriş yapmak için %(provider_name)s hesabınızı kullanmak üzeresini
msgid "As a final step, please complete the following form:"
msgstr "Son adım olarak, lütfen aşağıdaki formu doldurun:"
#: documents/validators.py:36
msgid ", "
msgstr ""
#: documents/validators.py:24
#, python-brace-format
msgid "Unable to parse URI {value}, missing scheme"
msgstr "URI {value} ayrıştırılamıyor, şema eksik"
#: documents/views.py:336 documents/views.py:2747
#: documents/validators.py:29
#, python-brace-format
msgid "Unable to parse URI {value}, missing net location or path"
msgstr "URI {value} ayrıştırılamıyor, ağ konumu veya yol eksik"
#: documents/validators.py:36
msgid "URI scheme '{parts.scheme}' is not allowed. Allowed schemes: {', '.join(allowed_schemes)}"
msgstr "URI şeması ‘{parts.scheme}’ izin verilmez. İzin verilen şemalar: {‘, ’.join(allowed_schemes)}"
#: documents/validators.py:45
#, python-brace-format
msgid "Unable to parse URI {value}"
msgstr "URI {value} işlenemiyor"
#: documents/views.py:336 documents/views.py:2729
msgid "Invalid more_like_id"
msgstr "Geçersiz more_like_id"
#: documents/views.py:1682
#: documents/views.py:1676
msgid "Invalid AI configuration."
msgstr "Geçersiz yapay zeka konfigürasyonu."
#: documents/views.py:1693
#: documents/views.py:1687
msgid "AI backend request timed out."
msgstr "Yapay zeka isteği zaman aşımına uğradı."
#: documents/views.py:1705
#: documents/views.py:1699
msgid "AI backend rejected the request. Check logs for details."
msgstr ""
#: documents/views.py:2572 documents/views.py:2888
#: documents/views.py:2554 documents/views.py:2870
msgid "Specify only one of text, title_search, query, or more_like_id."
msgstr "Yalnızca bir metin, title_search, sorgu veya more_like_id"
#: documents/views.py:4813
#: documents/views.py:4800
#, python-format
msgid "Insufficient permissions to share document %(id)s."
msgstr "%(id)s dosyasını paylaşmak için yetkiniz yok."
#: documents/views.py:4860
#: documents/views.py:4846
msgid "Bundle is already being processed."
msgstr "Paket zaten işlemede."
#: documents/views.py:4924
#: documents/views.py:4910
msgid "The share link bundle is still being prepared. Please try again later."
msgstr ""
#: documents/views.py:4938
#: documents/views.py:4924
msgid "The share link bundle is unavailable."
msgstr ""
+39 -24
View File
@@ -2,8 +2,8 @@ msgid ""
msgstr ""
"Project-Id-Version: paperless-ngx\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2026-10-10 22:04+0000\n"
"PO-Revision-Date: 2026-10-10 22:05\n"
"POT-Creation-Date: 2026-10-05 16:26+0000\n"
"PO-Revision-Date: 2026-10-05 16:27\n"
"Last-Translator: \n"
"Language-Team: Ukrainian\n"
"Language: uk_UA\n"
@@ -1635,48 +1635,48 @@ msgstr ""
msgid "workflow runs"
msgstr ""
#: documents/serialisers.py:516 documents/serialisers.py:873
#: documents/serialisers.py:2903 documents/views.py:343 documents/views.py:2750
#: documents/serialisers.py:515 documents/serialisers.py:872
#: documents/serialisers.py:2902 documents/views.py:343 documents/views.py:2732
#: paperless_mail/serialisers.py:156
msgid "Insufficient permissions."
msgstr ""
#: documents/serialisers.py:709
#: documents/serialisers.py:708
msgid "Invalid color."
msgstr "Неправильний колір."
#: documents/serialisers.py:2370
#: documents/serialisers.py:2369
#, python-format
msgid "File type %(type)s not supported"
msgstr "Тип файлу %(type)s не підтримується"
#: documents/serialisers.py:2414
#: documents/serialisers.py:2413
#, python-format
msgid "Custom field id must be an integer: %(id)s"
msgstr ""
#: documents/serialisers.py:2421
#: documents/serialisers.py:2420
#, python-format
msgid "Custom field with id %(id)s does not exist"
msgstr ""
#: documents/serialisers.py:2438 documents/serialisers.py:2448
#: documents/serialisers.py:2437 documents/serialisers.py:2447
msgid "Custom fields must be a list of integers or an object mapping ids to values."
msgstr ""
#: documents/serialisers.py:2443
#: documents/serialisers.py:2442
msgid "Some custom fields don't exist or were specified twice."
msgstr ""
#: documents/serialisers.py:2590
#: documents/serialisers.py:2589
msgid "Invalid variable detected."
msgstr "Виявлено неправильну змінну."
#: documents/serialisers.py:2959
#: documents/serialisers.py:2958
msgid "Duplicate document identifiers are not allowed."
msgstr ""
#: documents/serialisers.py:2989 documents/views.py:4797
#: documents/serialisers.py:2988 documents/views.py:4787
#, python-format
msgid "Documents not found: %(ids)s"
msgstr ""
@@ -1913,44 +1913,59 @@ msgstr "Ви збираєтеся використовувати ваш облі
msgid "As a final step, please complete the following form:"
msgstr "Як останній крок, будь ласка, заповніть наступну форму:"
#: documents/validators.py:36
msgid ", "
#: documents/validators.py:24
#, python-brace-format
msgid "Unable to parse URI {value}, missing scheme"
msgstr ""
#: documents/views.py:336 documents/views.py:2747
#: documents/validators.py:29
#, python-brace-format
msgid "Unable to parse URI {value}, missing net location or path"
msgstr ""
#: documents/validators.py:36
msgid "URI scheme '{parts.scheme}' is not allowed. Allowed schemes: {', '.join(allowed_schemes)}"
msgstr ""
#: documents/validators.py:45
#, python-brace-format
msgid "Unable to parse URI {value}"
msgstr ""
#: documents/views.py:336 documents/views.py:2729
msgid "Invalid more_like_id"
msgstr ""
#: documents/views.py:1682
#: documents/views.py:1676
msgid "Invalid AI configuration."
msgstr ""
#: documents/views.py:1693
#: documents/views.py:1687
msgid "AI backend request timed out."
msgstr ""
#: documents/views.py:1705
#: documents/views.py:1699
msgid "AI backend rejected the request. Check logs for details."
msgstr ""
#: documents/views.py:2572 documents/views.py:2888
#: documents/views.py:2554 documents/views.py:2870
msgid "Specify only one of text, title_search, query, or more_like_id."
msgstr ""
#: documents/views.py:4813
#: documents/views.py:4800
#, python-format
msgid "Insufficient permissions to share document %(id)s."
msgstr ""
#: documents/views.py:4860
#: documents/views.py:4846
msgid "Bundle is already being processed."
msgstr ""
#: documents/views.py:4924
#: documents/views.py:4910
msgid "The share link bundle is still being prepared. Please try again later."
msgstr ""
#: documents/views.py:4938
#: documents/views.py:4924
msgid "The share link bundle is unavailable."
msgstr ""
+40 -25
View File
@@ -2,8 +2,8 @@ msgid ""
msgstr ""
"Project-Id-Version: paperless-ngx\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2026-10-10 22:04+0000\n"
"PO-Revision-Date: 2026-10-10 22:05\n"
"POT-Creation-Date: 2026-10-05 16:26+0000\n"
"PO-Revision-Date: 2026-10-05 16:27\n"
"Last-Translator: \n"
"Language-Team: Vietnamese\n"
"Language: vi_VN\n"
@@ -1635,48 +1635,48 @@ msgstr "lần chạy quy trình"
msgid "workflow runs"
msgstr "các lần chạy quy trình"
#: documents/serialisers.py:516 documents/serialisers.py:873
#: documents/serialisers.py:2903 documents/views.py:343 documents/views.py:2750
#: documents/serialisers.py:515 documents/serialisers.py:872
#: documents/serialisers.py:2902 documents/views.py:343 documents/views.py:2732
#: paperless_mail/serialisers.py:156
msgid "Insufficient permissions."
msgstr "Không có đủ quyền."
#: documents/serialisers.py:709
#: documents/serialisers.py:708
msgid "Invalid color."
msgstr "Màu không hợp lệ."
#: documents/serialisers.py:2370
#: documents/serialisers.py:2369
#, python-format
msgid "File type %(type)s not supported"
msgstr "Loại tập tin %(type)s không được hỗ trợ"
#: documents/serialisers.py:2414
#: documents/serialisers.py:2413
#, python-format
msgid "Custom field id must be an integer: %(id)s"
msgstr "ID trường tùy chỉnh phải là số nguyên: %(id)s"
#: documents/serialisers.py:2421
#: documents/serialisers.py:2420
#, python-format
msgid "Custom field with id %(id)s does not exist"
msgstr "Trường tùy chỉnh với ID %(id)s không tồn tại"
#: documents/serialisers.py:2438 documents/serialisers.py:2448
#: documents/serialisers.py:2437 documents/serialisers.py:2447
msgid "Custom fields must be a list of integers or an object mapping ids to values."
msgstr "Trường tùy chỉnh phải là danh sách số nguyên hoặc đối tượng ánh xạ ID sang giá trị."
#: documents/serialisers.py:2443
#: documents/serialisers.py:2442
msgid "Some custom fields don't exist or were specified twice."
msgstr "Một số trường tùy chỉnh không tồn tại hoặc được chỉ định hai lần."
#: documents/serialisers.py:2590
#: documents/serialisers.py:2589
msgid "Invalid variable detected."
msgstr "Đã phát hiện biến số không hợp lệ."
#: documents/serialisers.py:2959
#: documents/serialisers.py:2958
msgid "Duplicate document identifiers are not allowed."
msgstr "Không cho phép các định danh tài liệu trùng lặp"
#: documents/serialisers.py:2989 documents/views.py:4797
#: documents/serialisers.py:2988 documents/views.py:4787
#, python-format
msgid "Documents not found: %(ids)s"
msgstr "Không tìm thấy tài liệu: %(ids)s"
@@ -1913,44 +1913,59 @@ msgstr "Bạn sắp sử dụng tài khoản %(provider_name)s của bạn để
msgid "As a final step, please complete the following form:"
msgstr "Là bước cuối cùng, vui lòng hoàn thành mẫu đơn sau:"
#: documents/validators.py:36
msgid ", "
msgstr ""
#: documents/validators.py:24
#, python-brace-format
msgid "Unable to parse URI {value}, missing scheme"
msgstr "Không thể phân tích URI {value}, thiếu giao thức"
#: documents/views.py:336 documents/views.py:2747
#: documents/validators.py:29
#, python-brace-format
msgid "Unable to parse URI {value}, missing net location or path"
msgstr "Không thể phân tích URI {value}, thiếu tên miền hoặc đường dẫn"
#: documents/validators.py:36
msgid "URI scheme '{parts.scheme}' is not allowed. Allowed schemes: {', '.join(allowed_schemes)}"
msgstr "Giao thức URI '{parts.scheme}' không được phép. Các giao thức được phép: {', '.join(allowed_schemes)}"
#: documents/validators.py:45
#, python-brace-format
msgid "Unable to parse URI {value}"
msgstr "Không thể phân tích URI {value}"
#: documents/views.py:336 documents/views.py:2729
msgid "Invalid more_like_id"
msgstr ""
#: documents/views.py:1682
#: documents/views.py:1676
msgid "Invalid AI configuration."
msgstr ""
#: documents/views.py:1693
#: documents/views.py:1687
msgid "AI backend request timed out."
msgstr ""
#: documents/views.py:1705
#: documents/views.py:1699
msgid "AI backend rejected the request. Check logs for details."
msgstr ""
#: documents/views.py:2572 documents/views.py:2888
#: documents/views.py:2554 documents/views.py:2870
msgid "Specify only one of text, title_search, query, or more_like_id."
msgstr ""
#: documents/views.py:4813
#: documents/views.py:4800
#, python-format
msgid "Insufficient permissions to share document %(id)s."
msgstr "Không đủ quyền để chia sẻ tài liệu %(id)s"
#: documents/views.py:4860
#: documents/views.py:4846
msgid "Bundle is already being processed."
msgstr "Gói đang được xử lý"
#: documents/views.py:4924
#: documents/views.py:4910
msgid "The share link bundle is still being prepared. Please try again later."
msgstr "Liên kết chia sẻ gói vẫn đang được chuẩn bị. Vui lòng thử lại sau."
#: documents/views.py:4938
#: documents/views.py:4924
msgid "The share link bundle is unavailable."
msgstr "Không tồn tại liên kết chia sẻ gói"
+77 -62
View File
@@ -2,8 +2,8 @@ msgid ""
msgstr ""
"Project-Id-Version: paperless-ngx\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2026-10-10 22:04+0000\n"
"PO-Revision-Date: 2026-10-10 22:05\n"
"POT-Creation-Date: 2026-10-05 16:26+0000\n"
"PO-Revision-Date: 2026-10-05 16:27\n"
"Last-Translator: \n"
"Language-Team: Chinese Simplified\n"
"Language: zh_CN\n"
@@ -286,11 +286,11 @@ msgstr "银行"
#: documents/models.py:564
msgid "Basket"
msgstr "篮子"
msgstr ""
#: documents/models.py:565
msgid "Bell"
msgstr "铃铛"
msgstr ""
#: documents/models.py:566
msgid "Bookmark"
@@ -402,7 +402,7 @@ msgstr "过滤器"
#: documents/models.py:596
msgid "Gear"
msgstr "齿轮"
msgstr ""
#: documents/models.py:597
msgid "Globe"
@@ -450,7 +450,7 @@ msgstr ""
#: documents/models.py:608
msgid "Printer"
msgstr "打印机"
msgstr ""
#: documents/models.py:609
msgid "Receipt"
@@ -458,19 +458,19 @@ msgstr "收据"
#: documents/models.py:610
msgid "Safe"
msgstr "安全"
msgstr ""
#: documents/models.py:611
msgid "Search"
msgstr "搜索"
msgstr ""
#: documents/models.py:612
msgid "Send"
msgstr "发送"
msgstr ""
#: documents/models.py:613
msgid "Shop"
msgstr "商店"
msgstr ""
#: documents/models.py:614
msgid "Stack"
@@ -490,15 +490,15 @@ msgstr "标签"
#: documents/models.py:618
msgid "Telephone"
msgstr "电话"
msgstr ""
#: documents/models.py:619
msgid "Truck"
msgstr "货车"
msgstr ""
#: documents/models.py:620
msgid "Barcode"
msgstr "条形码"
msgstr ""
#: documents/models.py:621
msgid "Wallet"
@@ -562,7 +562,7 @@ msgstr "页"
#: documents/models.py:646
msgid "icon"
msgstr "图标"
msgstr ""
#: documents/models.py:653
msgid "sort field"
@@ -1006,7 +1006,7 @@ msgstr "备注"
#: documents/models.py:996
msgid "page"
msgstr "页面"
msgstr ""
#: documents/models.py:997
msgid "Page of the original file, starting at 1"
@@ -1014,15 +1014,15 @@ msgstr ""
#: documents/models.py:1052
msgid "format"
msgstr "格式"
msgstr ""
#: documents/models.py:1056
msgid "document barcode"
msgstr "文档条形码"
msgstr ""
#: documents/models.py:1057
msgid "document barcodes"
msgstr "文档条形码"
msgstr ""
#: documents/models.py:1066
msgid "Original"
@@ -1404,23 +1404,23 @@ msgstr "移动到回收站"
#: documents/models.py:1795
msgid "Remote OCR"
msgstr "远程 OCR"
msgstr ""
#: documents/models.py:1799
msgid "Apply AI suggestions"
msgstr "应用 AI 建议"
msgstr ""
#: documents/models.py:1806
msgid "Document type"
msgstr "文档类型"
msgstr ""
#: documents/models.py:1807
msgid "Storage path"
msgstr "保存路径"
msgstr ""
#: documents/models.py:1808
msgid "Created date"
msgstr "创建日期"
msgstr ""
#: documents/models.py:1811
msgid "Workflow Action Type"
@@ -1573,27 +1573,27 @@ msgstr "移除PDF保护时的密码。用逗号或新行分隔。"
#: documents/models.py:2048
msgid "AI suggestion fields"
msgstr "AI 建议字段"
msgstr ""
#: documents/models.py:2052
msgid "Which of the AI-suggested fields to apply to the document."
msgstr "适用于文档的 AI-建议字段中的哪一个。"
msgstr ""
#: documents/models.py:2057
msgid "create missing objects"
msgstr "创建缺失对象"
msgstr ""
#: documents/models.py:2060
msgid "Create suggested tags, correspondents, document types and storage paths that do not already exist instead of skipping them."
msgstr "创建建议的标签、往来方、文档类型和存储路径(如果这些项目尚不存在),而不是跳过它们。"
msgstr ""
#: documents/models.py:2066
msgid "overwrite existing values"
msgstr "覆盖现有值"
msgstr ""
#: documents/models.py:2069
msgid "Apply suggestions even if the document already has a value for that field. Tags are always added to, never replaced."
msgstr "即使文档的该字段已有值,也应用建议的内容。标签始终采用追加方式,不会替换现有标签。"
msgstr ""
#: documents/models.py:2075
msgid "workflow action"
@@ -1635,48 +1635,48 @@ msgstr "工作流运行"
msgid "workflow runs"
msgstr "工作流运行"
#: documents/serialisers.py:516 documents/serialisers.py:873
#: documents/serialisers.py:2903 documents/views.py:343 documents/views.py:2750
#: documents/serialisers.py:515 documents/serialisers.py:872
#: documents/serialisers.py:2902 documents/views.py:343 documents/views.py:2732
#: paperless_mail/serialisers.py:156
msgid "Insufficient permissions."
msgstr "权限不足。"
#: documents/serialisers.py:709
#: documents/serialisers.py:708
msgid "Invalid color."
msgstr "无效的颜色"
#: documents/serialisers.py:2370
#: documents/serialisers.py:2369
#, python-format
msgid "File type %(type)s not supported"
msgstr "不支持文件类型 %(type)s"
#: documents/serialisers.py:2414
#: documents/serialisers.py:2413
#, python-format
msgid "Custom field id must be an integer: %(id)s"
msgstr "自定义字段 id 必须是数字:%(id)s"
#: documents/serialisers.py:2421
#: documents/serialisers.py:2420
#, python-format
msgid "Custom field with id %(id)s does not exist"
msgstr "自定义字段 id %(id)s 不存在"
#: documents/serialisers.py:2438 documents/serialisers.py:2448
#: documents/serialisers.py:2437 documents/serialisers.py:2447
msgid "Custom fields must be a list of integers or an object mapping ids to values."
msgstr "自定义字段必须为整数列表,或是一个将ID映射到值的对象。"
#: documents/serialisers.py:2443
#: documents/serialisers.py:2442
msgid "Some custom fields don't exist or were specified twice."
msgstr "部分自定义字段不存在或重复指定。"
#: documents/serialisers.py:2590
#: documents/serialisers.py:2589
msgid "Invalid variable detected."
msgstr "检测到无效变量。"
#: documents/serialisers.py:2959
#: documents/serialisers.py:2958
msgid "Duplicate document identifiers are not allowed."
msgstr "不允许重复文档标识符。"
#: documents/serialisers.py:2989 documents/views.py:4797
#: documents/serialisers.py:2988 documents/views.py:4787
#, python-format
msgid "Documents not found: %(ids)s"
msgstr "未找到文档:%(ids)s"
@@ -1913,44 +1913,59 @@ msgstr "您将使用您的 %(provider_name)s 账户登录."
msgid "As a final step, please complete the following form:"
msgstr "作为最后一步,请填写以下表格:"
#: documents/validators.py:36
msgid ", "
msgstr ","
#: documents/validators.py:24
#, python-brace-format
msgid "Unable to parse URI {value}, missing scheme"
msgstr "无法解析 URI {value},缺少scheme"
#: documents/views.py:336 documents/views.py:2747
#: documents/validators.py:29
#, python-brace-format
msgid "Unable to parse URI {value}, missing net location or path"
msgstr "无法解析 URI {value},缺少网络位置或路径"
#: documents/validators.py:36
msgid "URI scheme '{parts.scheme}' is not allowed. Allowed schemes: {', '.join(allowed_schemes)}"
msgstr "URI 格式 '{parts.scheme}' 不支持。支持的格式有:{', '.join(allowed_schemes)}"
#: documents/validators.py:45
#, python-brace-format
msgid "Unable to parse URI {value}"
msgstr "无法解析 URI {value}"
#: documents/views.py:336 documents/views.py:2729
msgid "Invalid more_like_id"
msgstr "无效的more_like_id"
#: documents/views.py:1682
#: documents/views.py:1676
msgid "Invalid AI configuration."
msgstr "无效的 AI 配置。"
#: documents/views.py:1693
#: documents/views.py:1687
msgid "AI backend request timed out."
msgstr "AI 后端请求超时。"
#: documents/views.py:1705
#: documents/views.py:1699
msgid "AI backend rejected the request. Check logs for details."
msgstr "AI 后端拒绝了请求。请检查日志的详细信息。"
msgstr ""
#: documents/views.py:2572 documents/views.py:2888
#: documents/views.py:2554 documents/views.py:2870
msgid "Specify only one of text, title_search, query, or more_like_id."
msgstr "只能指定 text、title_search、query 或 more_like_id 中的一项。"
#: documents/views.py:4813
#: documents/views.py:4800
#, python-format
msgid "Insufficient permissions to share document %(id)s."
msgstr "权限不足以分享文件:%(id)s。"
#: documents/views.py:4860
#: documents/views.py:4846
msgid "Bundle is already being processed."
msgstr "捆绑包已在处理中。"
#: documents/views.py:4924
#: documents/views.py:4910
msgid "The share link bundle is still being prepared. Please try again later."
msgstr "分享链接包仍在准备中,请稍后再试。"
#: documents/views.py:4938
#: documents/views.py:4924
msgid "The share link bundle is unavailable."
msgstr "分享链接包不可用。"
@@ -2036,15 +2051,15 @@ msgstr "CMYK"
#: paperless/models.py:82
msgid "Azure AI Document Intelligence"
msgstr "Azure AI 文档智能"
msgstr ""
#: paperless/models.py:90
msgid "All supported documents"
msgstr "所有支持的文档"
msgstr ""
#: paperless/models.py:91
msgid "Only when a workflow enables it"
msgstr "仅当工作流启用时"
msgstr ""
#: paperless/models.py:95 paperless/models.py:105
msgid "OpenAI-compatible"
@@ -2168,23 +2183,23 @@ msgstr "启用标签条码拆分"
#: paperless/models.py:308
msgid "Stores the values of detected barcodes"
msgstr "存储检测到条形码的值"
msgstr ""
#: paperless/models.py:318
msgid "Sets the remote OCR engine"
msgstr "设置远程 OCR 引擎"
msgstr ""
#: paperless/models.py:327
msgid "Sets the remote OCR API key"
msgstr "设置远程 OCR API 密钥"
msgstr ""
#: paperless/models.py:335
msgid "Sets the remote OCR endpoint"
msgstr "设置远程 OCR 端点"
msgstr ""
#: paperless/models.py:343
msgid "Sets which documents are sent to the remote OCR engine"
msgstr "设置发送到远程 OCR 引擎的文档"
msgstr ""
#: paperless/models.py:355
msgid "Enables AI features"
@@ -2200,7 +2215,7 @@ msgstr "设置 LLM 嵌入模型"
#: paperless/models.py:375
msgid "Sets the LLM embedding API key"
msgstr "设置 LLM 嵌入模型的 API 密钥"
msgstr ""
#: paperless/models.py:382
msgid "Sets the LLM embedding endpoint, optional"
+43 -28
View File
@@ -2,8 +2,8 @@ msgid ""
msgstr ""
"Project-Id-Version: paperless-ngx\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2026-10-10 22:04+0000\n"
"PO-Revision-Date: 2026-10-10 22:05\n"
"POT-Creation-Date: 2026-10-05 16:26+0000\n"
"PO-Revision-Date: 2026-10-05 16:27\n"
"Last-Translator: \n"
"Language-Team: Chinese Traditional\n"
"Language: zh_TW\n"
@@ -1018,11 +1018,11 @@ msgstr ""
#: documents/models.py:1056
msgid "document barcode"
msgstr "文件條碼"
msgstr ""
#: documents/models.py:1057
msgid "document barcodes"
msgstr "文件條碼"
msgstr ""
#: documents/models.py:1066
msgid "Original"
@@ -1635,48 +1635,48 @@ msgstr "執行工作流程"
msgid "workflow runs"
msgstr "執行工作流程"
#: documents/serialisers.py:516 documents/serialisers.py:873
#: documents/serialisers.py:2903 documents/views.py:343 documents/views.py:2750
#: documents/serialisers.py:515 documents/serialisers.py:872
#: documents/serialisers.py:2902 documents/views.py:343 documents/views.py:2732
#: paperless_mail/serialisers.py:156
msgid "Insufficient permissions."
msgstr "權限不足。"
#: documents/serialisers.py:709
#: documents/serialisers.py:708
msgid "Invalid color."
msgstr "無效的顏色。"
#: documents/serialisers.py:2370
#: documents/serialisers.py:2369
#, python-format
msgid "File type %(type)s not supported"
msgstr "不支援檔案類型 %(type)s"
#: documents/serialisers.py:2414
#: documents/serialisers.py:2413
#, python-format
msgid "Custom field id must be an integer: %(id)s"
msgstr "自定欄位 ID 必須是整數:%(id)s"
#: documents/serialisers.py:2421
#: documents/serialisers.py:2420
#, python-format
msgid "Custom field with id %(id)s does not exist"
msgstr "自定欄位 ID %(id)s 不存在"
#: documents/serialisers.py:2438 documents/serialisers.py:2448
#: documents/serialisers.py:2437 documents/serialisers.py:2447
msgid "Custom fields must be a list of integers or an object mapping ids to values."
msgstr "自定欄位必須為整數列表,或是將 ID 對應到參數值的物件。"
#: documents/serialisers.py:2443
#: documents/serialisers.py:2442
msgid "Some custom fields don't exist or were specified twice."
msgstr "部分自定欄位不存在或重復指定。"
#: documents/serialisers.py:2590
#: documents/serialisers.py:2589
msgid "Invalid variable detected."
msgstr "偵測到無效的變數。"
#: documents/serialisers.py:2959
#: documents/serialisers.py:2958
msgid "Duplicate document identifiers are not allowed."
msgstr "文件識別碼不得重複。"
#: documents/serialisers.py:2989 documents/views.py:4797
#: documents/serialisers.py:2988 documents/views.py:4787
#, python-format
msgid "Documents not found: %(ids)s"
msgstr "找不到文件:%(ids)s"
@@ -1913,44 +1913,59 @@ msgstr "即將使用 %(provider_name)s 帳號登入。"
msgid "As a final step, please complete the following form:"
msgstr "最後一步,請填寫以下表單:"
#: documents/validators.py:36
msgid ", "
msgstr ""
#: documents/validators.py:24
#, python-brace-format
msgid "Unable to parse URI {value}, missing scheme"
msgstr "無法解析 URI {value},缺少協定"
#: documents/views.py:336 documents/views.py:2747
#: documents/validators.py:29
#, python-brace-format
msgid "Unable to parse URI {value}, missing net location or path"
msgstr "無法解析 URI {value},缺少網路位置或路徑"
#: documents/validators.py:36
msgid "URI scheme '{parts.scheme}' is not allowed. Allowed schemes: {', '.join(allowed_schemes)}"
msgstr "URI 協定「{parts.scheme}」不被允許。允許的協定有:{', '.join(allowed_schemes)}"
#: documents/validators.py:45
#, python-brace-format
msgid "Unable to parse URI {value}"
msgstr "無法解析 URI {value}"
#: documents/views.py:336 documents/views.py:2729
msgid "Invalid more_like_id"
msgstr "無效的 more_like_id"
#: documents/views.py:1682
#: documents/views.py:1676
msgid "Invalid AI configuration."
msgstr "無效的 AI 配置。"
#: documents/views.py:1693
#: documents/views.py:1687
msgid "AI backend request timed out."
msgstr "AI 後端請求逾時。"
#: documents/views.py:1705
#: documents/views.py:1699
msgid "AI backend rejected the request. Check logs for details."
msgstr "AI 後端拒絕了請求。請檢查日誌以取得詳細資訊。"
#: documents/views.py:2572 documents/views.py:2888
#: documents/views.py:2554 documents/views.py:2870
msgid "Specify only one of text, title_search, query, or more_like_id."
msgstr "只能指定 text、title_search、query 或 more_like_id 的其中一項。"
#: documents/views.py:4813
#: documents/views.py:4800
#, python-format
msgid "Insufficient permissions to share document %(id)s."
msgstr "權限不足,無法共用文件:%(id)s"
#: documents/views.py:4860
#: documents/views.py:4846
msgid "Bundle is already being processed."
msgstr "組合已在處理中。"
#: documents/views.py:4924
#: documents/views.py:4910
msgid "The share link bundle is still being prepared. Please try again later."
msgstr "共用連結組合仍在準備中,請稍後再試。"
#: documents/views.py:4938
#: documents/views.py:4924
msgid "The share link bundle is unavailable."
msgstr "共用連結組合無法使用。"
@@ -2168,7 +2183,7 @@ msgstr "啟用依標籤條碼進行拆分"
#: paperless/models.py:308
msgid "Stores the values of detected barcodes"
msgstr "儲存檢測到的條碼參數值"
msgstr ""
#: paperless/models.py:318
msgid "Sets the remote OCR engine"
+11 -10
View File
@@ -272,26 +272,27 @@ def check_deprecated_db_settings(
Detects legacy advanced options that should be migrated to
PAPERLESS_DB_OPTIONS. Returns one Warning per deprecated variable found.
"""
deprecated_vars = (
"PAPERLESS_DB_TIMEOUT",
"PAPERLESS_DB_POOLSIZE",
"PAPERLESS_DBSSLMODE",
"PAPERLESS_DBSSLROOTCERT",
"PAPERLESS_DBSSLCERT",
"PAPERLESS_DBSSLKEY",
)
deprecated_vars: dict[str, str] = {
"PAPERLESS_DB_TIMEOUT": "timeout",
"PAPERLESS_DB_POOLSIZE": "pool.min_size / pool.max_size",
"PAPERLESS_DBSSLMODE": "sslmode",
"PAPERLESS_DBSSLROOTCERT": "sslrootcert",
"PAPERLESS_DBSSLCERT": "sslcert",
"PAPERLESS_DBSSLKEY": "sslkey",
}
warnings: list[Warning] = []
for var_name in deprecated_vars:
for var_name, db_option_key in deprecated_vars.items():
if not os.getenv(var_name):
continue
warnings.append(
Warning(
f"Deprecated environment variable: {var_name}",
hint=(
f"{var_name} is deprecated. "
f"{var_name} is no longer supported and will be removed in v3.2. "
f"Set the equivalent option via PAPERLESS_DB_OPTIONS instead. "
f'Example: PAPERLESS_DB_OPTIONS=\'{{"{db_option_key}": "<value>"}}\'. '
"See https://docs.paperless-ngx.com/migration-v3/ for the full reference."
),
id="paperless.W001",
+25 -11
View File
@@ -211,14 +211,14 @@ class TestAuditLogChecks:
assert "auditlog table was found but audit log is disabled." in msgs[0].msg
DEPRECATED_VARS = (
"PAPERLESS_DB_TIMEOUT",
"PAPERLESS_DB_POOLSIZE",
"PAPERLESS_DBSSLMODE",
"PAPERLESS_DBSSLROOTCERT",
"PAPERLESS_DBSSLCERT",
"PAPERLESS_DBSSLKEY",
)
DEPRECATED_VARS: dict[str, str] = {
"PAPERLESS_DB_TIMEOUT": "timeout",
"PAPERLESS_DB_POOLSIZE": "pool.min_size / pool.max_size",
"PAPERLESS_DBSSLMODE": "sslmode",
"PAPERLESS_DBSSLROOTCERT": "sslrootcert",
"PAPERLESS_DBSSLCERT": "sslcert",
"PAPERLESS_DBSSLKEY": "sslkey",
}
class TestDeprecatedDbSettings:
@@ -234,11 +234,26 @@ class TestDeprecatedDbSettings:
result = check_deprecated_db_settings(None)
assert result == []
@pytest.mark.parametrize("env_var", DEPRECATED_VARS)
@pytest.mark.parametrize(
("env_var", "db_option_key"),
[
pytest.param("PAPERLESS_DB_TIMEOUT", "timeout", id="db-timeout"),
pytest.param(
"PAPERLESS_DB_POOLSIZE",
"pool.min_size / pool.max_size",
id="db-poolsize",
),
pytest.param("PAPERLESS_DBSSLMODE", "sslmode", id="ssl-mode"),
pytest.param("PAPERLESS_DBSSLROOTCERT", "sslrootcert", id="ssl-rootcert"),
pytest.param("PAPERLESS_DBSSLCERT", "sslcert", id="ssl-cert"),
pytest.param("PAPERLESS_DBSSLKEY", "sslkey", id="ssl-key"),
],
)
def test_single_deprecated_var_produces_one_warning(
self,
mocker: MockerFixture,
env_var: str,
db_option_key: str,
) -> None:
"""Each deprecated var in isolation produces exactly one warning."""
mocker.patch.dict(os.environ, {env_var: "some_value"}, clear=True)
@@ -249,8 +264,7 @@ class TestDeprecatedDbSettings:
assert isinstance(warning, Warning)
assert warning.id == "paperless.W001"
assert env_var in warning.hint
assert "PAPERLESS_DB_OPTIONS" in warning.hint
assert "https://docs.paperless-ngx.com/migration-v3/" in warning.hint
assert db_option_key in warning.hint
def test_multiple_deprecated_vars_produce_one_warning_each(
self,